├── README.md ├── data ├── causal_knock3.csv ├── causal_knock1.csv ├── causal_knock4.csv ├── causal_knock2_rct.csv └── causal_knock2_reg.csv └── answers ├── causal_knock2_ans.ipynb └── causal_knock1_ans.ipynb /README.md: -------------------------------------------------------------------------------- 1 | # causal_inference_100knock 2 | 自作で「因果推論100本ノック用リポジトリ」たるものを作成しています(現在作成中) 3 | 4 | Zennにて問題と回答例をまとめておりますので,ご一読いただけますと幸いです. 5 | 6 | https://zenn.dev/s1ok69oo 7 | -------------------------------------------------------------------------------- /data/causal_knock3.csv: -------------------------------------------------------------------------------- 1 | ,Fukuoka,Kumamoto,Kagoshima,Okinawa 2 | 201701,4238,2478,2238,3326 3 | 201702,3253,2785,2183,3637 4 | 201703,4976,3902,3519,3347 5 | 201704,4644,3391,2782,3395 6 | 201705,5121,3535,2994,3654 7 | 201706,4458,3673,3224,3089 8 | 201707,4928,3928,3393,3102 9 | 201708,4124,3481,2939,3494 10 | 201709,3609,3187,2563,3119 11 | 201710,3575,3239,2790,3665 12 | 201711,3642,2976,2576,3252 13 | 201712,4748,3578,2959,3194 14 | 201801,3724,2568,2271,3661 15 | 201802,3706,2771,2483,3584 16 | 201803,4726,3910,3594,3651 17 | 201804,4042,3188,3330,3483 18 | 201805,4486,3601,3475,3174 19 | 201806,4108,3748,3880,3659 20 | 201807,4359,3774,3884,3278 21 | 201808,4229,3485,3551,3465 22 | 201809,2943,3093,3195,3490 23 | 201810,3960,3215,3298,3297 24 | 201811,3677,3107,3065,3432 25 | 201812,4207,3626,3674,3486 26 | -------------------------------------------------------------------------------- /data/causal_knock1.csv: -------------------------------------------------------------------------------- 1 | y,x,t,y_t1,y_t0 2 | 10,12,0,15,10 3 | 16,15,1,16,11 4 | 15,21,0,20,15 5 | 4,0,1,4,0 6 | 7,3,1,7,2 7 | 26,27,1,26,21 8 | 6,3,1,6,1 9 | 11,7,1,11,6 10 | 7,9,0,12,7 11 | 13,19,0,18,13 12 | 23,21,1,23,18 13 | 16,18,0,21,16 14 | 9,4,1,9,4 15 | 23,23,1,23,18 16 | 3,6,0,8,3 17 | 20,24,0,25,20 18 | 18,24,0,23,18 19 | 10,12,0,15,10 20 | 26,26,1,26,21 21 | 1,1,0,6,1 22 | 10,6,1,10,5 23 | 6,7,0,11,6 24 | 18,23,0,23,18 25 | 12,14,0,17,12 26 | 24,24,1,24,19 27 | 14,17,0,19,14 28 | 5,5,0,10,5 29 | 18,25,0,23,18 30 | 9,13,0,14,9 31 | 7,8,0,12,7 32 | 11,9,1,11,6 33 | 17,20,0,22,17 34 | 14,19,0,19,14 35 | 12,16,0,17,12 36 | 22,19,1,22,17 37 | 5,5,0,10,5 38 | 18,15,1,18,13 39 | 12,15,0,17,12 40 | 4,0,1,4,0 41 | 16,18,0,21,16 42 | 7,3,1,7,2 43 | 25,24,1,25,20 44 | 19,17,1,19,14 45 | 15,19,0,20,15 46 | 23,29,0,28,23 47 | 16,19,0,21,16 48 | 15,19,0,20,15 49 | 10,14,0,15,10 50 | 5,7,0,10,5 51 | 1,0,0,6,1 52 | 0,1,0,5,0 53 | 12,9,1,12,7 54 | 24,25,1,24,19 55 | 1,0,0,6,1 56 | 13,10,1,13,8 57 | 16,20,0,21,16 58 | 22,23,1,22,17 59 | 7,3,1,7,2 60 | 8,11,0,13,8 61 | 19,18,1,19,14 62 | -------------------------------------------------------------------------------- /data/causal_knock4.csv: -------------------------------------------------------------------------------- 1 | Y,X,T 2 | 2028,62,0 3 | 3034,136,1 4 | 2079,82,0 5 | 4231,114,1 6 | 1362,29,0 7 | 1692,39,0 8 | 1683,53,0 9 | 3894,113,1 10 | 3165,80,0 11 | 3476,108,1 12 | 4243,158,1 13 | 1967,76,0 14 | 2005,64,0 15 | 4065,107,1 16 | 3919,108,1 17 | 4247,103,1 18 | 1627,51,0 19 | 2479,99,0 20 | 2714,89,0 21 | 1258,29,0 22 | 4208,172,1 23 | 3545,130,1 24 | 4344,100,1 25 | 2844,104,1 26 | 3536,119,1 27 | 2052,51,0 28 | 4276,164,1 29 | 4208,164,1 30 | 3931,163,1 31 | 2323,45,0 32 | 2203,31,0 33 | 4480,147,1 34 | 1663,50,0 35 | 1322,52,0 36 | 4633,171,1 37 | 4033,131,1 38 | 1699,51,0 39 | 2868,65,0 40 | 4609,150,1 41 | 3484,151,1 42 | 1762,83,0 43 | 4219,152,1 44 | 1734,65,0 45 | 2159,40,0 46 | 2129,87,0 47 | 4337,144,1 48 | 4264,127,1 49 | 1965,61,0 50 | 1364,52,0 51 | 3845,143,1 52 | 1091,22,0 53 | 1800,75,0 54 | 2578,81,0 55 | 1920,55,0 56 | 3330,120,1 57 | 3812,148,1 58 | 1885,38,0 59 | 4693,102,1 60 | 3550,113,1 61 | 4734,147,1 62 | 4374,163,1 63 | 4183,119,1 64 | 2346,82,0 65 | 4214,159,1 66 | 4279,143,1 67 | 3742,101,1 68 | 2401,83,0 69 | 2171,29,0 70 | 1964,69,0 71 | 3391,145,1 72 | 4423,155,1 73 | 3680,125,1 74 | 2787,94,0 75 | 3932,161,1 76 | 4271,167,1 77 | 2129,52,0 78 | 4415,159,1 79 | 3075,139,1 80 | 3679,104,1 81 | 1900,69,0 82 | 2114,72,0 83 | 2359,86,0 84 | 3701,112,1 85 | 3855,110,1 86 | 1087,18,0 87 | 3207,133,1 88 | 2155,55,0 89 | 2544,68,0 90 | 3949,109,1 91 | 3615,153,1 92 | 3549,131,1 93 | 1655,64,0 94 | 3937,134,1 95 | 4220,175,1 96 | 3201,146,1 97 | 967,13,0 98 | 3886,158,1 99 | 3435,139,1 100 | 2169,63,0 101 | 4093,156,1 102 | 2494,43,0 103 | 4075,159,1 104 | 3058,140,1 105 | 3740,120,1 106 | 2602,83,0 107 | 3534,145,1 108 | 2674,95,0 109 | 3716,159,1 110 | 2828,67,0 111 | 3844,167,1 112 | 1425,41,0 113 | 2654,52,0 114 | 2063,83,0 115 | 2234,53,0 116 | 1224,22,0 117 | 3901,101,1 118 | 1927,55,0 119 | 3828,120,1 120 | 2253,32,0 121 | 1372,22,0 122 | 2440,71,0 123 | 2812,99,0 124 | 1569,55,0 125 | 3933,147,1 126 | 1405,62,0 127 | 1957,34,0 128 | 1758,61,0 129 | 3842,141,1 130 | 3516,100,1 131 | 1365,52,0 132 | 2067,41,0 133 | 3785,144,1 134 | 1337,24,0 135 | 960,16,0 136 | 3871,107,1 137 | 3797,112,1 138 | 1590,40,0 139 | 3701,119,1 140 | 1655,65,0 141 | 2693,92,0 142 | 2377,45,0 143 | 4137,114,1 144 | 2442,88,0 145 | 3890,174,1 146 | 1757,82,0 147 | 2597,84,0 148 | 1725,36,0 149 | 3507,120,1 150 | 1517,25,0 151 | 3900,157,1 152 | 2973,106,1 153 | 3396,142,1 154 | 4686,114,1 155 | 3043,91,0 156 | 1599,36,0 157 | 4527,177,1 158 | 4482,171,1 159 | 3719,168,1 160 | 3719,137,1 161 | 2351,45,0 162 | 3988,135,1 163 | 3407,138,1 164 | 3315,138,1 165 | 2457,99,0 166 | 4309,115,1 167 | 4241,143,1 168 | 2541,90,0 169 | 1952,50,0 170 | 1922,34,0 171 | 2539,86,0 172 | 3535,168,1 173 | 2961,87,0 174 | 2018,69,0 175 | 1993,41,0 176 | 1918,55,0 177 | 1430,28,0 178 | 4109,134,1 179 | 4108,113,1 180 | 4354,145,1 181 | 3603,138,1 182 | 2685,68,0 183 | 3255,146,1 184 | 2461,46,0 185 | 2647,87,0 186 | 1244,23,0 187 | 2659,58,0 188 | 1720,67,0 189 | 2162,56,0 190 | 890,28,0 191 | 4023,123,1 192 | 4240,148,1 193 | 3171,140,1 194 | 4100,182,1 195 | 3661,131,1 196 | 1705,31,0 197 | 2235,48,0 198 | 3736,167,1 199 | 2625,74,0 200 | 2107,71,0 201 | 4257,167,1 202 | -------------------------------------------------------------------------------- /data/causal_knock2_rct.csv: -------------------------------------------------------------------------------- 1 | y,t,x0,x1,x2,x3 2 | 3500,1,4,14500,0,1 3 | 1000,0,5,7500,0,1 4 | 1500,1,0,3000,1,0 5 | 2500,1,3,9000,0,1 6 | 0,0,3,4000,1,0 7 | 1500,1,3,4500,1,0 8 | 2500,1,1,10000,0,1 9 | 0,0,3,7500,0,1 10 | 1000,0,5,9000,0,1 11 | 2500,1,2,6500,0,1 12 | 0,0,4,3500,1,0 13 | 500,1,6,6000,0,1 14 | 1500,1,0,6000,0,1 15 | 2500,1,0,7000,0,1 16 | 0,0,4,13500,0,1 17 | 1500,1,2,13000,0,1 18 | 2500,1,1,8500,0,1 19 | 2000,0,6,8500,1,0 20 | 1500,1,6,9500,0,1 21 | 1500,1,0,6000,0,1 22 | 2000,0,1,4000,1,0 23 | 0,0,5,3000,0,1 24 | 2500,1,1,5000,1,0 25 | 2000,0,5,7500,1,0 26 | 2500,1,0,8000,0,1 27 | 500,1,1,10500,0,1 28 | 1500,1,4,3000,0,1 29 | 2500,1,3,5500,1,0 30 | 3500,1,0,7000,1,0 31 | 0,0,3,8000,1,0 32 | 4500,1,5,18000,0,1 33 | 1000,0,6,7500,0,1 34 | 2500,1,0,3000,1,0 35 | 0,0,2,8500,1,0 36 | 1500,1,3,9500,0,1 37 | 500,1,0,7000,0,1 38 | 0,0,1,2000,1,0 39 | 1500,1,3,9500,0,1 40 | 1500,1,5,10000,0,1 41 | 1000,0,3,9500,1,0 42 | 1000,0,3,5000,1,0 43 | 0,1,6,5500,0,1 44 | 0,0,0,8000,0,1 45 | 0,0,1,7500,1,0 46 | 0,0,1,3000,1,0 47 | 0,0,1,9500,0,1 48 | 1500,1,0,5500,0,1 49 | 1500,1,2,5500,1,0 50 | 2500,1,4,11500,0,1 51 | 1000,0,3,4000,1,0 52 | 1000,0,6,4500,1,0 53 | 0,0,3,13500,0,1 54 | 0,0,2,2000,1,0 55 | 1000,0,4,7500,1,0 56 | 500,1,2,6500,0,1 57 | 0,0,0,8000,1,0 58 | 1000,0,0,7000,0,1 59 | 0,0,4,5000,0,1 60 | 2500,1,5,10000,0,1 61 | 2000,0,5,6500,1,0 62 | 500,1,6,11500,0,1 63 | 1500,1,0,8000,0,1 64 | 0,0,4,8000,0,1 65 | 1500,1,1,4000,0,1 66 | 500,1,4,7500,0,1 67 | 0,0,1,4000,0,1 68 | 1500,1,2,12500,0,1 69 | 0,0,2,4000,1,0 70 | 2000,0,0,4000,1,0 71 | 1500,1,1,8000,0,1 72 | 1000,0,1,5000,1,0 73 | 0,1,1,2000,0,1 74 | 3000,0,1,9000,1,0 75 | 0,0,3,10500,0,1 76 | 2000,0,6,8000,1,0 77 | 2500,1,3,10000,0,1 78 | 500,1,6,7000,0,1 79 | 1000,0,2,9000,1,0 80 | 0,1,3,3000,0,1 81 | 2000,0,0,7000,1,0 82 | 2500,1,6,10000,0,1 83 | 0,0,3,9000,0,1 84 | 1500,1,5,6000,1,0 85 | 1500,1,4,10500,0,1 86 | 2500,1,1,8000,0,1 87 | 2000,0,2,13500,0,1 88 | 2500,1,4,11000,0,1 89 | 500,1,3,8500,0,1 90 | 2500,1,4,7000,0,1 91 | 2000,0,6,8500,1,0 92 | 0,1,4,5000,0,1 93 | 2000,0,4,5500,1,0 94 | 0,0,3,10500,0,1 95 | 0,0,4,6000,0,1 96 | 0,0,4,7500,0,1 97 | 0,0,4,8500,1,0 98 | 0,0,0,5500,1,0 99 | 0,0,6,5000,1,0 100 | 3500,1,4,6500,1,0 101 | 1500,1,3,5500,0,1 102 | 0,0,2,8500,0,1 103 | 0,0,5,6000,0,1 104 | 0,0,5,5000,0,1 105 | 1000,0,5,8500,1,0 106 | 500,1,0,10500,0,1 107 | 1000,0,1,4000,1,0 108 | 1500,1,5,7000,1,0 109 | 1000,0,1,12500,0,1 110 | 1500,1,3,7000,1,0 111 | 3500,1,0,4000,1,0 112 | 2500,1,5,8500,0,1 113 | 2000,0,6,7500,1,0 114 | 1000,0,0,7500,1,0 115 | 1000,0,1,10500,0,1 116 | 2500,1,2,8000,0,1 117 | 1500,1,4,4000,0,1 118 | 1000,0,2,8000,0,1 119 | 3500,1,0,12000,0,1 120 | 1500,1,5,12000,0,1 121 | 0,0,3,7000,0,1 122 | 2500,1,2,8000,0,1 123 | 0,1,2,3500,0,1 124 | 2500,1,5,7000,0,1 125 | 0,0,0,2000,0,1 126 | 2500,1,5,6500,1,0 127 | 0,1,1,5500,0,1 128 | 0,0,0,6500,1,0 129 | 0,0,2,7500,0,1 130 | 500,1,2,5000,0,1 131 | 3500,1,3,7000,1,0 132 | 3500,1,2,14500,0,1 133 | 2000,0,3,5500,1,0 134 | 1500,1,2,5500,0,1 135 | 2500,1,1,9000,0,1 136 | 1500,1,2,7000,0,1 137 | 2500,1,6,9000,0,1 138 | 500,1,3,5000,0,1 139 | 1000,0,6,7500,1,0 140 | 2500,1,3,6000,1,0 141 | 1000,0,3,7500,0,1 142 | 1500,1,2,10000,0,1 143 | 0,0,6,1000,0,1 144 | 2500,1,3,6500,0,1 145 | 1000,0,4,5500,1,0 146 | 0,0,1,7000,0,1 147 | 2000,0,2,13500,0,1 148 | 2500,1,3,13000,0,1 149 | 1500,1,6,5500,1,0 150 | 1000,0,1,10000,0,1 151 | 1000,0,2,8500,0,1 152 | 0,1,1,5000,0,1 153 | 1500,1,4,5500,1,0 154 | 1000,0,2,9000,1,0 155 | 1500,1,6,5500,0,1 156 | 2500,1,3,6000,0,1 157 | 2500,1,0,9000,0,1 158 | 500,1,3,5000,0,1 159 | 3500,1,2,6500,1,0 160 | 500,1,3,8000,0,1 161 | 3500,1,0,3500,1,0 162 | 2500,1,0,13000,0,1 163 | 0,1,6,3500,0,1 164 | 0,0,0,4000,1,0 165 | 1000,0,6,8000,1,0 166 | 1500,1,3,11000,0,1 167 | 0,0,6,6500,0,1 168 | 1000,0,2,8000,0,1 169 | 500,1,3,5000,0,1 170 | 0,0,0,5500,0,1 171 | 1000,0,4,11000,0,1 172 | 0,0,0,9000,0,1 173 | 1000,0,5,9500,0,1 174 | 0,0,6,9500,0,1 175 | 0,1,0,4500,0,1 176 | 500,1,5,9000,0,1 177 | 1000,0,2,6000,0,1 178 | 0,0,3,6500,1,0 179 | 2000,0,6,8000,1,0 180 | 500,1,2,5000,0,1 181 | 2000,0,3,4500,1,0 182 | 0,0,5,7000,0,1 183 | 1500,1,0,8000,1,0 184 | 1000,0,0,6500,1,0 185 | 0,0,0,10500,0,1 186 | 1000,0,3,5500,1,0 187 | 2000,0,0,6000,1,0 188 | 2500,1,2,10000,0,1 189 | 1500,1,2,4000,1,0 190 | 1500,1,0,8500,0,1 191 | 3500,1,4,13500,0,1 192 | 0,1,3,4500,0,1 193 | 0,0,4,2500,0,1 194 | 1000,0,5,8500,0,1 195 | 500,1,6,9000,0,1 196 | 1500,1,0,5500,1,0 197 | 1500,1,4,4500,0,1 198 | 0,0,3,9500,0,1 199 | 500,1,5,10000,0,1 200 | 0,1,3,5500,0,1 201 | 1500,1,4,7000,1,0 202 | 500,1,6,7000,0,1 203 | 3500,1,5,8500,1,0 204 | 1500,1,1,4500,0,1 205 | 2500,1,5,8500,0,1 206 | 500,1,3,8500,0,1 207 | 2500,1,0,7500,0,1 208 | 1000,0,0,8000,1,0 209 | 0,0,0,7500,0,1 210 | 2500,1,5,11000,0,1 211 | 2500,1,5,11000,0,1 212 | 1000,0,6,9000,0,1 213 | 1500,1,1,12500,0,1 214 | 500,1,0,5500,0,1 215 | 0,0,4,7000,1,0 216 | 0,0,1,5000,1,0 217 | 1500,1,6,6500,0,1 218 | 2500,1,5,10500,0,1 219 | 1500,1,5,6000,0,1 220 | 1500,1,3,5500,0,1 221 | 0,0,1,2000,1,0 222 | 2500,1,0,11500,0,1 223 | 2500,1,0,11000,0,1 224 | 0,0,4,10000,0,1 225 | 1500,1,3,5000,0,1 226 | 2500,1,3,8500,0,1 227 | 0,0,1,5500,0,1 228 | 1000,0,6,8500,0,1 229 | 1000,0,5,8500,0,1 230 | 3000,0,5,9000,1,0 231 | 1000,0,0,8500,0,1 232 | 2000,0,0,4000,1,0 233 | 2500,1,1,9500,0,1 234 | 500,1,2,10000,0,1 235 | 1500,1,0,13500,0,1 236 | 1000,0,6,5000,1,0 237 | 1500,1,3,12000,0,1 238 | 0,0,6,7000,0,1 239 | 1000,0,5,3000,1,0 240 | 2500,1,1,9000,0,1 241 | 1500,1,1,10500,0,1 242 | 1000,0,6,6000,0,1 243 | 2500,1,4,4000,1,0 244 | 1500,1,0,16000,0,1 245 | 3000,0,5,11000,1,0 246 | 0,0,0,8500,1,0 247 | 2500,1,3,9500,0,1 248 | 2500,1,2,6500,0,1 249 | 1000,0,3,8000,0,1 250 | 0,0,2,5000,1,0 251 | 0,1,4,2500,0,1 252 | 1000,0,6,9000,0,1 253 | 2000,0,3,10000,1,0 254 | 2500,1,6,12000,0,1 255 | 1500,1,6,6000,0,1 256 | 1000,0,5,8500,0,1 257 | 0,0,5,5500,0,1 258 | 2000,0,3,7000,1,0 259 | 2500,1,0,8500,0,1 260 | 500,1,3,8000,0,1 261 | 1500,1,0,4500,1,0 262 | 500,1,4,11000,0,1 263 | 1000,0,2,10500,0,1 264 | 1000,0,6,8000,1,0 265 | 0,0,3,6000,0,1 266 | 2500,1,5,6000,0,1 267 | 1500,1,5,5000,0,1 268 | 2000,0,4,12500,0,1 269 | 0,0,0,7000,1,0 270 | 2000,0,2,7000,1,0 271 | 1000,0,3,10500,1,0 272 | 1500,1,3,10000,0,1 273 | 3000,0,1,18000,0,1 274 | 0,0,5,8500,1,0 275 | 2500,1,3,6500,1,0 276 | 3500,1,6,14000,0,1 277 | 0,0,4,6000,1,0 278 | 2500,1,5,9000,0,1 279 | 1500,1,5,5000,0,1 280 | 2000,0,3,16000,0,1 281 | 1500,1,3,8500,0,1 282 | 3500,1,1,12000,0,1 283 | 1000,0,1,5000,1,0 284 | 0,0,1,3000,1,0 285 | 2500,1,3,9000,0,1 286 | 1000,0,6,5000,1,0 287 | 1000,0,2,10500,1,0 288 | 500,1,2,9000,0,1 289 | 1500,1,4,9500,0,1 290 | 0,1,3,5000,0,1 291 | 3000,0,1,9000,1,0 292 | 1000,0,2,8000,0,1 293 | 500,1,3,6500,0,1 294 | 500,1,5,9000,0,1 295 | 0,0,5,4500,0,1 296 | 0,0,5,4500,1,0 297 | 0,0,1,10500,0,1 298 | 500,1,4,7000,0,1 299 | 1000,0,2,20000,0,1 300 | 1000,0,2,9500,1,0 301 | 1000,0,0,9000,0,1 302 | 2000,0,1,3500,1,0 303 | 0,0,5,9500,0,1 304 | 1500,1,0,5000,0,1 305 | 0,1,4,3000,0,1 306 | 2500,1,0,7500,0,1 307 | 2500,1,3,7000,0,1 308 | 0,0,2,7500,0,1 309 | 1500,1,5,9000,0,1 310 | 500,1,6,8500,0,1 311 | 0,0,5,6000,0,1 312 | 500,1,6,9500,0,1 313 | 1500,1,0,13000,0,1 314 | 1000,0,6,9500,0,1 315 | 3000,0,0,9500,1,0 316 | 1000,0,5,7500,0,1 317 | 0,0,1,9000,0,1 318 | 1500,1,1,9500,0,1 319 | 1000,0,0,8000,1,0 320 | 500,1,3,6000,0,1 321 | 2000,0,0,9000,1,0 322 | 1500,1,3,8500,0,1 323 | 1000,0,0,5500,1,0 324 | 0,1,4,3000,0,1 325 | 1500,1,4,3000,0,1 326 | 2000,0,0,10500,1,0 327 | 2500,1,1,7500,0,1 328 | 0,0,3,3000,1,0 329 | 500,1,4,9500,0,1 330 | 3500,1,3,7500,1,0 331 | 1500,1,2,7000,1,0 332 | 1500,1,6,8000,1,0 333 | 2500,1,5,5500,1,0 334 | 0,0,1,6000,0,1 335 | 1500,1,1,8000,0,1 336 | 0,0,2,5500,1,0 337 | 1500,1,1,10500,0,1 338 | 500,1,5,4500,0,1 339 | 2500,1,4,12000,0,1 340 | 2500,1,5,6000,0,1 341 | 1000,0,2,7500,0,1 342 | 2000,0,5,6500,1,0 343 | 500,1,5,10000,0,1 344 | 500,1,4,4500,0,1 345 | 1500,1,4,11000,0,1 346 | 1500,1,5,4500,0,1 347 | 2500,1,5,10000,0,1 348 | 0,0,2,8000,1,0 349 | 0,0,3,6500,0,1 350 | 1000,0,5,2000,1,0 351 | 0,0,3,12500,0,1 352 | 500,1,6,10000,0,1 353 | 500,1,6,11000,0,1 354 | 1500,1,1,5000,0,1 355 | 2000,0,6,6000,1,0 356 | 2500,1,2,8500,0,1 357 | 1500,1,4,8000,0,1 358 | 0,0,3,5000,0,1 359 | 0,0,3,5500,0,1 360 | 2000,0,1,12500,0,1 361 | 1000,0,1,4000,1,0 362 | 0,1,5,5500,0,1 363 | 1500,1,6,5000,0,1 364 | 3500,1,5,15500,0,1 365 | 2500,1,1,11000,0,1 366 | 2000,0,1,7000,1,0 367 | 2000,0,2,9000,1,0 368 | 0,0,0,9000,0,1 369 | 0,0,3,10000,0,1 370 | 3500,1,1,11000,1,0 371 | 0,0,4,7000,0,1 372 | 500,1,3,5000,0,1 373 | 0,0,1,8000,0,1 374 | 0,0,1,9500,0,1 375 | 1500,1,2,6000,0,1 376 | 1000,0,0,11000,0,1 377 | 1000,0,6,7000,1,0 378 | 1000,0,0,9000,0,1 379 | 0,1,2,4500,0,1 380 | 1500,1,4,5500,1,0 381 | 500,1,6,2000,1,0 382 | 2000,0,0,7000,1,0 383 | 0,0,4,7000,1,0 384 | 1000,0,3,14500,0,1 385 | 4500,1,3,10500,1,0 386 | 1500,1,0,12000,0,1 387 | 0,0,0,8500,0,1 388 | 1000,0,3,4000,1,0 389 | 0,0,5,12500,0,1 390 | 1000,0,3,8000,0,1 391 | 0,0,6,5500,0,1 392 | 0,0,0,8000,0,1 393 | 500,1,3,6000,0,1 394 | 1500,1,0,8000,0,1 395 | 1000,0,5,4000,1,0 396 | 1000,0,2,13000,0,1 397 | 1000,0,1,6500,1,0 398 | 1500,1,0,8000,0,1 399 | 500,1,4,7500,0,1 400 | 1000,0,0,10000,0,1 401 | 1500,1,3,8000,0,1 402 | 2500,1,4,7500,0,1 403 | 1500,1,4,6000,1,0 404 | 1000,0,1,1000,1,0 405 | 3000,0,0,9000,1,0 406 | 3500,1,2,14000,0,1 407 | 500,1,6,9000,0,1 408 | 2500,1,6,7000,1,0 409 | 0,0,4,8500,0,1 410 | 1000,0,4,7000,1,0 411 | 1000,0,2,7000,0,1 412 | 0,0,4,3000,1,0 413 | 500,1,6,8000,0,1 414 | 0,0,3,8500,1,0 415 | 0,0,2,9000,0,1 416 | 0,0,3,3000,0,1 417 | 2000,0,0,4500,1,0 418 | 1000,0,5,6000,1,0 419 | 0,0,5,3500,0,1 420 | 500,1,5,9500,0,1 421 | 0,0,0,5000,0,1 422 | 1500,1,0,8500,0,1 423 | 1000,0,5,8000,1,0 424 | 1500,1,3,7000,0,1 425 | 1000,0,4,7000,1,0 426 | 1500,1,4,9500,0,1 427 | 1000,0,5,8500,1,0 428 | 1500,1,2,5500,0,1 429 | 2500,1,2,7000,0,1 430 | 0,0,4,6000,0,1 431 | 3500,1,6,7000,1,0 432 | 0,0,1,7500,0,1 433 | 0,0,3,9500,0,1 434 | 1000,0,3,8500,0,1 435 | 1500,1,3,11500,0,1 436 | 1000,0,1,8500,0,1 437 | 2000,0,2,14000,0,1 438 | 1500,1,5,6500,1,0 439 | 2500,1,2,2000,1,0 440 | 2000,0,3,9000,1,0 441 | 1500,1,6,5500,0,1 442 | 1000,0,5,5000,1,0 443 | 0,0,2,6500,0,1 444 | 3500,1,3,5000,1,0 445 | 2500,1,4,8000,0,1 446 | 2000,0,4,14500,0,1 447 | 0,0,2,5500,0,1 448 | 0,0,5,7000,0,1 449 | 2000,0,1,6000,1,0 450 | 3000,0,6,10000,1,0 451 | 2500,1,2,7000,1,0 452 | 0,0,5,8500,1,0 453 | 2000,0,0,7000,1,0 454 | 2500,1,6,6500,0,1 455 | 1500,1,3,7500,1,0 456 | 1000,0,0,10500,0,1 457 | 0,0,2,4000,1,0 458 | 1500,1,4,8000,0,1 459 | 500,1,3,9000,0,1 460 | 500,1,2,8000,0,1 461 | 1500,1,1,4000,0,1 462 | 500,1,2,9500,0,1 463 | 1500,1,1,9000,0,1 464 | 1000,0,4,9000,1,0 465 | 1500,1,5,9000,0,1 466 | 1000,0,1,8000,0,1 467 | 0,0,6,7000,0,1 468 | 0,0,6,2500,1,0 469 | 0,0,0,7500,0,1 470 | 0,0,5,8000,0,1 471 | 1000,0,0,4500,1,0 472 | 500,1,0,10000,0,1 473 | 1500,1,0,12000,0,1 474 | 0,0,6,4500,1,0 475 | 500,1,0,8000,0,1 476 | 1500,1,1,6000,0,1 477 | 0,0,0,4000,1,0 478 | 1500,1,3,8000,0,1 479 | 2500,1,6,10000,0,1 480 | 0,0,1,8000,0,1 481 | 1500,1,4,8500,0,1 482 | 0,0,1,7000,1,0 483 | 0,0,2,4000,0,1 484 | 0,0,4,12000,0,1 485 | 500,1,0,6000,0,1 486 | 1500,1,0,7000,0,1 487 | 2500,1,2,11500,0,1 488 | 1500,1,5,10000,0,1 489 | 1000,0,0,8000,1,0 490 | 0,0,4,5000,1,0 491 | 500,1,4,8500,0,1 492 | 3500,1,4,6500,1,0 493 | 2500,1,1,6500,0,1 494 | 1500,1,6,11000,0,1 495 | 2500,1,6,7500,0,1 496 | 3500,1,1,13000,0,1 497 | 1500,1,4,6000,0,1 498 | 0,0,1,6500,0,1 499 | 500,1,5,4000,0,1 500 | 3500,1,1,6000,1,0 501 | 500,1,3,11000,0,1 502 | 0,0,5,7500,0,1 503 | 2000,0,1,7000,1,0 504 | 1500,1,3,2000,1,0 505 | 0,0,5,10000,0,1 506 | 2500,1,3,8000,0,1 507 | 2500,1,6,11500,0,1 508 | 2500,1,6,6500,1,0 509 | 0,0,1,10500,0,1 510 | 500,1,1,6000,0,1 511 | 2000,0,1,5500,1,0 512 | 1500,1,6,7000,0,1 513 | 3500,1,0,8500,1,0 514 | 3000,0,3,11500,1,0 515 | 2000,0,0,7500,1,0 516 | 2500,1,4,7500,1,0 517 | 2000,0,1,12500,0,1 518 | 2500,1,4,3000,1,0 519 | 2000,0,5,6000,1,0 520 | 2500,1,0,13500,0,1 521 | 0,0,3,5000,1,0 522 | 3000,0,6,9000,1,0 523 | 2000,0,2,8500,1,0 524 | 3500,1,1,12000,0,1 525 | 2500,1,4,9500,0,1 526 | 4500,1,4,10000,1,0 527 | 1500,1,4,5000,0,1 528 | 1000,0,0,7000,0,1 529 | 0,0,0,11500,0,1 530 | 1000,0,2,14000,0,1 531 | 1000,0,5,4500,1,0 532 | 0,0,0,10500,0,1 533 | 0,0,6,7000,0,1 534 | 1500,1,3,10000,0,1 535 | 500,1,3,9000,0,1 536 | 1000,0,4,5500,1,0 537 | 1500,1,6,11500,0,1 538 | 1000,0,1,5500,1,0 539 | 1500,1,4,5000,0,1 540 | 2500,1,3,13000,0,1 541 | 2000,0,3,3500,1,0 542 | 2000,0,3,10500,1,0 543 | 0,0,4,8500,0,1 544 | 500,1,2,8500,0,1 545 | 2000,0,1,5000,1,0 546 | 1500,1,2,5000,0,1 547 | 2500,1,2,6500,0,1 548 | 1000,0,1,2000,1,0 549 | 0,0,3,7000,0,1 550 | 2000,0,3,6500,1,0 551 | 3500,1,4,6000,1,0 552 | 0,0,4,7500,0,1 553 | 1000,0,2,12500,0,1 554 | 2000,0,1,10000,1,0 555 | 1000,0,1,6000,1,0 556 | 0,0,0,10000,0,1 557 | 1500,1,0,5000,1,0 558 | 0,0,2,7000,0,1 559 | 1000,0,4,14000,0,1 560 | 2000,0,3,6500,1,0 561 | 1500,1,5,10500,0,1 562 | 1000,0,6,6500,1,0 563 | 0,0,3,7500,1,0 564 | 2500,1,2,9500,1,0 565 | 2000,0,1,5000,1,0 566 | 2000,0,0,12500,0,1 567 | 0,0,4,8500,0,1 568 | 0,0,1,10500,0,1 569 | 0,1,4,3000,0,1 570 | 1500,1,4,5000,0,1 571 | 3500,1,2,4000,1,0 572 | 0,0,0,4500,1,0 573 | 500,1,0,5500,0,1 574 | 500,1,5,10000,0,1 575 | 2500,1,3,11000,0,1 576 | 1000,0,1,6500,1,0 577 | 1000,0,5,9000,1,0 578 | 500,1,5,6000,0,1 579 | 1000,0,1,9000,1,0 580 | 0,1,5,5000,0,1 581 | 2000,0,6,3000,1,0 582 | 1500,1,0,12500,0,1 583 | 2000,0,6,9500,1,0 584 | 2500,1,4,8500,0,1 585 | 2500,1,3,6500,0,1 586 | 2500,1,5,6000,0,1 587 | 2500,1,3,8500,0,1 588 | 1500,1,4,6000,0,1 589 | 1500,1,3,6500,1,0 590 | 2500,1,6,9000,0,1 591 | 0,0,4,7000,0,1 592 | 0,0,3,12000,0,1 593 | 2000,0,0,10000,1,0 594 | 1000,0,5,10500,1,0 595 | 1500,1,3,0,1,0 596 | 3500,1,3,5500,1,0 597 | 3500,1,6,14000,0,1 598 | 0,0,1,9000,0,1 599 | 2500,1,3,7500,0,1 600 | 1500,1,5,9500,0,1 601 | 2000,0,5,5000,1,0 602 | -------------------------------------------------------------------------------- /data/causal_knock2_reg.csv: -------------------------------------------------------------------------------- 1 | y,t,x0,x1,x2,x3 2 | 2500,1.0,4,9500,0,1 3 | 2000,0.0,5,9000,1,0 4 | 2000,0.0,0,7500,1,0 5 | 3000,0.0,3,10000,1,0 6 | 500,1.0,3,5500,0,1 7 | 0,0.0,3,2000,1,0 8 | 2500,1.0,1,10000,0,1 9 | 1500,1.0,3,17000,0,1 10 | 1500,1.0,5,3000,0,1 11 | 1000,0.0,2,8500,0,1 12 | 2000,0.0,4,12500,0,1 13 | 1500,1.0,6,2000,0,1 14 | 1500,1.0,0,7000,0,1 15 | 0,0.0,0,2000,1,0 16 | 2500,1.0,4,6500,0,1 17 | 3500,1.0,2,5500,1,0 18 | 500,1.0,1,5000,0,1 19 | 1000,0.0,6,7500,0,1 20 | 1500,1.0,6,5000,0,1 21 | 1000,0.0,0,7000,1,0 22 | 1000,0.0,1,13000,0,1 23 | 1500,1.0,5,5500,1,0 24 | 2000,0.0,1,7000,1,0 25 | 0,0.0,5,9000,0,1 26 | 1000,0.0,0,10000,1,0 27 | 2500,1.0,1,9000,0,1 28 | 0,0.0,4,8000,1,0 29 | 0,0.0,3,7500,1,0 30 | 0,0.0,0,10500,0,1 31 | 1000,0.0,3,7500,1,0 32 | 1500,1.0,5,10000,0,1 33 | 2500,1.0,6,2500,1,0 34 | 500,1.0,0,6500,0,1 35 | 0,1.0,2,4000,0,1 36 | 1500,1.0,3,5500,0,1 37 | 0,0.0,0,15000,0,1 38 | 1000,0.0,1,11500,0,1 39 | 0,1.0,3,5500,0,1 40 | 2500,1.0,5,8500,0,1 41 | 1500,1.0,3,8500,0,1 42 | 500,1.0,3,6500,0,1 43 | 1500,1.0,6,7000,1,0 44 | 1000,0.0,0,7500,0,1 45 | 500,1.0,1,4000,0,1 46 | 1000,0.0,1,7500,0,1 47 | 2000,0.0,1,9000,1,0 48 | 0,0.0,0,6500,0,1 49 | 1000,0.0,2,5000,1,0 50 | 500,1.0,4,5000,0,1 51 | 500,1.0,3,2000,1,0 52 | 1000,0.0,6,13000,0,1 53 | 0,0.0,3,2000,0,1 54 | 0,1.0,2,5500,0,1 55 | 0,0.0,4,9500,0,1 56 | 3000,0.0,2,9500,1,0 57 | 0,0.0,0,5000,0,1 58 | 1500,1.0,0,8000,0,1 59 | 1500,1.0,4,6500,0,1 60 | 2500,1.0,5,10000,0,1 61 | 2000,0.0,5,12500,0,1 62 | 0,0.0,6,7500,0,1 63 | 1000,0.0,0,8000,1,0 64 | 1000,0.0,4,9500,0,1 65 | 1500,1.0,1,7500,1,0 66 | 1500,1.0,4,10500,0,1 67 | 2000,0.0,1,6000,1,0 68 | 0,0.0,2,5000,1,0 69 | 500,1.0,2,5000,0,1 70 | 500,1.0,0,5000,0,1 71 | 3500,1.0,1,4500,1,0 72 | 2000,0.0,1,7000,1,0 73 | 1500,1.0,1,5000,1,0 74 | 500,1.0,1,3500,0,1 75 | 3500,1.0,3,13500,0,1 76 | 500,1.0,6,5500,0,1 77 | 1500,1.0,3,10500,0,1 78 | 0,0.0,6,10000,0,1 79 | 1500,1.0,2,7000,0,1 80 | 2000,0.0,3,8500,1,0 81 | 1000,0.0,0,13500,0,1 82 | 2500,1.0,6,6000,0,1 83 | 0,0.0,3,2500,1,0 84 | 500,1.0,5,4000,0,1 85 | 0,0.0,4,7500,0,1 86 | 0,1.0,1,4000,0,1 87 | 2500,1.0,2,3000,1,0 88 | 0,0.0,4,9500,0,1 89 | 0,0.0,3,8500,0,1 90 | 1500,1.0,4,4000,0,1 91 | 500,1.0,6,5500,0,1 92 | 500,1.0,4,5500,0,1 93 | 1500,1.0,4,4000,0,1 94 | 1500,1.0,3,6000,0,1 95 | 2500,1.0,4,4000,1,0 96 | 0,0.0,4,5500,1,0 97 | 1500,1.0,4,6000,0,1 98 | 0,0.0,0,8000,1,0 99 | 0,0.0,6,6000,1,0 100 | 0,0.0,4,11000,0,1 101 | 1000,0.0,3,9500,0,1 102 | 0,0.0,2,10500,0,1 103 | 1500,1.0,5,11000,0,1 104 | 2500,1.0,5,5500,1,0 105 | 1000,0.0,5,7000,1,0 106 | 0,0.0,0,8000,0,1 107 | 500,1.0,1,2000,1,0 108 | 1500,1.0,5,6000,0,1 109 | 0,0.0,1,7500,1,0 110 | 2500,1.0,3,4000,1,0 111 | 0,0.0,0,2000,1,0 112 | 1000,0.0,5,11500,1,0 113 | 0,0.0,6,9500,0,1 114 | 1500,1.0,0,4000,1,0 115 | 1500,1.0,1,3500,0,1 116 | 1000,0.0,2,8500,0,1 117 | 0,0.0,4,7000,0,1 118 | 1500,1.0,2,8500,0,1 119 | 500,1.0,0,8500,0,1 120 | 1000,0.0,5,10500,0,1 121 | 1500,1.0,3,8500,1,0 122 | 3500,1.0,2,4000,1,0 123 | 0,0.0,2,8000,0,1 124 | 1500,1.0,5,8500,0,1 125 | 0,0.0,0,13500,0,1 126 | 2500,1.0,5,6500,0,1 127 | 2500,1.0,1,9000,0,1 128 | 1500,1.0,0,4000,0,1 129 | 500,1.0,2,7500,0,1 130 | 0,0.0,2,7500,0,1 131 | 0,0.0,3,7500,0,1 132 | 1000,0.0,2,6000,1,0 133 | 3500,1.0,3,5500,1,0 134 | 1000,0.0,2,13000,1,0 135 | 500,1.0,1,6500,0,1 136 | 1000,0.0,2,10000,0,1 137 | 0,0.0,6,9500,0,1 138 | 2500,1.0,3,2000,1,0 139 | 2500,1.0,6,6500,0,1 140 | 1500,1.0,3,6500,0,1 141 | 1000,0.0,3,2500,1,0 142 | 0,0.0,2,7500,1,0 143 | 0,0.0,6,7000,0,1 144 | 1000,0.0,3,12000,0,1 145 | 0,0.0,4,10500,0,1 146 | 1500,1.0,1,7000,0,1 147 | 0,1.0,2,4000,0,1 148 | 2000,0.0,3,7000,1,0 149 | 1000,0.0,6,13000,1,0 150 | 0,0.0,1,8000,1,0 151 | 0,1.0,2,4500,0,1 152 | 2000,0.0,1,8000,1,0 153 | 1500,1.0,4,6000,1,0 154 | 1000,0.0,2,11000,0,1 155 | 2500,1.0,6,9000,0,1 156 | 2000,0.0,3,6000,1,0 157 | 1500,1.0,0,6500,0,1 158 | 0,0.0,3,12500,0,1 159 | 1000,0.0,2,8500,0,1 160 | 0,0.0,3,10000,0,1 161 | 1000,0.0,0,9000,0,1 162 | 1000,0.0,0,10000,0,1 163 | 2000,0.0,6,13500,0,1 164 | 0,0.0,0,7000,1,0 165 | 2500,1.0,6,5000,1,0 166 | 1500,1.0,3,15500,0,1 167 | 500,1.0,6,9000,0,1 168 | 1000,0.0,2,7500,1,0 169 | 500,1.0,3,8000,0,1 170 | 1000,0.0,0,11500,0,1 171 | 500,1.0,4,5500,0,1 172 | 1000,0.0,0,7500,0,1 173 | 0,0.0,5,5000,0,1 174 | 0,0.0,6,3000,1,0 175 | 0,0.0,0,12000,0,1 176 | 1500,1.0,5,8000,0,1 177 | 0,0.0,2,10500,0,1 178 | 0,0.0,3,10500,0,1 179 | 2500,1.0,6,6500,0,1 180 | 0,0.0,2,3500,0,1 181 | 500,1.0,3,10500,0,1 182 | 0,1.0,5,5000,0,1 183 | 0,1.0,0,5000,0,1 184 | 1000,0.0,0,7500,0,1 185 | 2500,1.0,0,4500,1,0 186 | 1500,1.0,3,7500,1,0 187 | 0,0.0,0,7500,0,1 188 | 500,1.0,2,10000,0,1 189 | 0,0.0,2,15500,0,1 190 | 1000,0.0,0,8000,1,0 191 | 1000,0.0,4,6000,1,0 192 | 0,1.0,3,3500,0,1 193 | 1000,0.0,4,9500,1,0 194 | 1500,1.0,5,2000,1,0 195 | 0,1.0,6,3000,0,1 196 | 3000,0.0,0,9000,1,0 197 | 0,0.0,4,7000,0,1 198 | 0,0.0,3,7500,0,1 199 | 0,0.0,5,6000,0,1 200 | 0,0.0,3,10000,0,1 201 | 1000,0.0,4,10500,1,0 202 | 0,0.0,6,8000,0,1 203 | 500,1.0,5,11500,0,1 204 | 0,0.0,1,9500,0,1 205 | 1500,1.0,5,9500,0,1 206 | 0,0.0,3,6000,0,1 207 | 1000,0.0,0,7500,1,0 208 | 0,0.0,0,8000,1,0 209 | 2000,0.0,0,8000,1,0 210 | 2500,1.0,5,6000,0,1 211 | 1000,0.0,5,9000,0,1 212 | 500,1.0,6,7000,0,1 213 | 1500,1.0,1,5500,0,1 214 | 1500,1.0,0,3000,1,0 215 | 3500,1.0,4,3000,1,0 216 | 1000,0.0,1,13500,0,1 217 | 0,0.0,6,10500,0,1 218 | 2000,0.0,5,3000,1,0 219 | 1000,0.0,5,11000,0,1 220 | 500,1.0,3,7500,0,1 221 | 1000,0.0,1,7000,0,1 222 | 2000,0.0,0,9500,1,0 223 | 1500,1.0,0,5500,0,1 224 | 1000,0.0,4,4500,1,0 225 | 2000,0.0,3,12500,0,1 226 | 1500,1.0,3,4000,0,1 227 | 3000,0.0,1,9000,1,0 228 | 500,1.0,6,6000,0,1 229 | 1000,0.0,5,9000,1,0 230 | 2000,0.0,5,6000,1,0 231 | 0,0.0,0,6000,0,1 232 | 2500,1.0,0,6500,0,1 233 | 500,1.0,1,10000,0,1 234 | 2000,0.0,2,6000,1,0 235 | 2000,0.0,0,8000,1,0 236 | 500,1.0,6,6000,0,1 237 | 1000,0.0,3,8500,0,1 238 | 0,0.0,6,9500,0,1 239 | 3500,1.0,5,6500,1,0 240 | 1500,1.0,1,5000,0,1 241 | 2000,0.0,1,12500,0,1 242 | 1000,0.0,6,10000,0,1 243 | 2000,0.0,4,8000,1,0 244 | 0,0.0,0,5000,0,1 245 | 1000,0.0,5,9000,1,0 246 | 0,0.0,0,7000,0,1 247 | 2500,1.0,3,8000,0,1 248 | 0,0.0,2,5000,0,1 249 | 1000,0.0,3,5500,1,0 250 | 1000,0.0,2,5000,1,0 251 | 0,0.0,4,4000,1,0 252 | 1000,0.0,6,4000,1,0 253 | 2500,1.0,3,6500,0,1 254 | 2000,0.0,6,14000,1,0 255 | 2000,0.0,6,5000,1,0 256 | 1000,0.0,5,11500,0,1 257 | 0,1.0,5,4500,0,1 258 | 0,0.0,3,7500,0,1 259 | 500,1.0,0,10000,0,1 260 | 3500,1.0,3,14000,0,1 261 | 500,1.0,0,5500,0,1 262 | 2500,1.0,4,9500,0,1 263 | 1000,0.0,2,6500,0,1 264 | 1000,0.0,6,9500,0,1 265 | 0,1.0,3,4500,0,1 266 | 0,0.0,5,11000,0,1 267 | 0,0.0,5,8500,0,1 268 | 1500,1.0,4,10500,0,1 269 | 1500,1.0,0,4500,1,0 270 | 500,1.0,2,7000,0,1 271 | 500,1.0,3,6500,0,1 272 | 1500,1.0,3,4000,0,1 273 | 1500,1.0,1,5500,0,1 274 | 1000,0.0,5,14500,0,1 275 | 0,0.0,3,3000,0,1 276 | 1000,0.0,6,15000,0,1 277 | 2000,0.0,4,7000,1,0 278 | 1500,1.0,5,7000,0,1 279 | 2000,0.0,5,12500,0,1 280 | 1000,0.0,3,9500,0,1 281 | 0,0.0,3,4000,1,0 282 | 1000,0.0,1,5000,1,0 283 | 0,0.0,1,6000,0,1 284 | 1000,0.0,1,8000,0,1 285 | 2500,1.0,3,7000,0,1 286 | 0,0.0,6,11500,0,1 287 | 1500,1.0,2,5000,0,1 288 | 1500,1.0,2,8000,0,1 289 | 0,0.0,4,4500,0,1 290 | 2000,0.0,3,13000,0,1 291 | 1500,1.0,1,6500,0,1 292 | 0,0.0,2,7500,0,1 293 | 0,0.0,3,6000,1,0 294 | 500,1.0,5,1000,1,0 295 | 1000,0.0,5,9000,0,1 296 | 0,0.0,5,9500,0,1 297 | 2500,1.0,1,10500,1,0 298 | 1500,1.0,4,7000,0,1 299 | 0,0.0,2,7000,1,0 300 | 0,0.0,2,1000,1,0 301 | 0,0.0,0,4000,0,1 302 | 1500,1.0,1,3000,0,1 303 | 0,0.0,5,9500,0,1 304 | 0,0.0,0,7000,0,1 305 | 3000,0.0,4,9000,1,0 306 | 500,1.0,0,4500,0,1 307 | 1500,1.0,3,3000,1,0 308 | 0,0.0,2,7500,0,1 309 | 0,0.0,5,2000,1,0 310 | 500,1.0,6,11000,0,1 311 | 2500,1.0,5,6500,1,0 312 | 0,0.0,6,8500,0,1 313 | 0,0.0,0,9500,0,1 314 | 1000,0.0,6,10000,0,1 315 | 0,0.0,0,8500,0,1 316 | 2000,0.0,5,5000,1,0 317 | 1000,0.0,1,7000,1,0 318 | 2500,1.0,1,8500,0,1 319 | 0,0.0,0,7000,0,1 320 | 500,1.0,3,6000,0,1 321 | 0,0.0,0,7000,0,1 322 | 3500,1.0,3,4500,1,0 323 | 0,0.0,0,8000,1,0 324 | 0,0.0,4,8500,0,1 325 | 1000,0.0,4,8500,0,1 326 | 1000,0.0,0,7000,0,1 327 | 1000,0.0,1,14000,0,1 328 | 1500,1.0,3,6500,0,1 329 | 0,0.0,4,2000,0,1 330 | 1000,0.0,3,7500,1,0 331 | 1500,1.0,2,4000,1,0 332 | 3500,1.0,6,6500,1,0 333 | 2500,1.0,5,6500,0,1 334 | 1500,1.0,1,5000,0,1 335 | 1000,0.0,1,9500,0,1 336 | 0,0.0,2,14500,0,1 337 | 1500,1.0,1,4000,0,1 338 | 1000,0.0,5,10000,0,1 339 | 3000,0.0,4,9000,1,0 340 | 2000,0.0,5,7000,1,0 341 | 0,0.0,2,7000,0,1 342 | 0,0.0,5,7000,0,1 343 | 0,0.0,5,7000,0,1 344 | 0,0.0,4,6500,0,1 345 | 1000,0.0,4,6000,1,0 346 | 1000,0.0,5,9000,0,1 347 | 1500,1.0,5,4000,0,1 348 | 2500,1.0,2,11000,0,1 349 | 1000,0.0,3,6000,1,0 350 | 0,0.0,5,9500,0,1 351 | 1000,0.0,3,5500,1,0 352 | 1000,0.0,6,9500,0,1 353 | 1000,0.0,6,9000,1,0 354 | 1000,0.0,1,12000,0,1 355 | 0,0.0,6,7500,0,1 356 | 1500,1.0,2,8000,0,1 357 | 0,0.0,4,7000,0,1 358 | 3500,1.0,3,4000,1,0 359 | 0,0.0,3,6000,1,0 360 | 2000,0.0,1,9500,1,0 361 | 1000,0.0,1,4500,1,0 362 | 500,1.0,5,8500,0,1 363 | 0,0.0,6,10500,0,1 364 | 0,0.0,5,6000,0,1 365 | 1000,0.0,1,9500,0,1 366 | 1000,0.0,1,9000,1,0 367 | 0,1.0,2,5500,0,1 368 | 0,0.0,0,8000,0,1 369 | 1000,0.0,3,8500,1,0 370 | 0,1.0,1,5000,0,1 371 | 2000,0.0,4,7000,1,0 372 | 2000,0.0,3,7000,1,0 373 | 0,1.0,1,5500,0,1 374 | 500,1.0,1,10500,0,1 375 | 3500,1.0,2,3000,1,0 376 | 1500,1.0,0,5500,1,0 377 | 2500,1.0,6,11500,0,1 378 | 1000,0.0,0,10000,1,0 379 | 1000,0.0,2,11000,0,1 380 | 1500,1.0,4,6500,0,1 381 | 2000,0.0,6,8500,1,0 382 | 0,0.0,0,5000,0,1 383 | 2500,1.0,4,5000,1,0 384 | 0,0.0,3,8000,1,0 385 | 500,1.0,3,7500,0,1 386 | 2500,1.0,0,14500,0,1 387 | 2000,0.0,0,6000,1,0 388 | 1500,1.0,3,6500,0,1 389 | 1500,1.0,5,4000,1,0 390 | 0,0.0,3,6000,1,0 391 | 1500,1.0,6,11000,0,1 392 | 1000,0.0,0,7500,1,0 393 | 0,0.0,3,11500,0,1 394 | 500,1.0,0,5000,0,1 395 | 0,0.0,5,10000,0,1 396 | 0,0.0,2,9500,0,1 397 | 0,0.0,1,11500,0,1 398 | 3500,1.0,0,6500,1,0 399 | 1000,0.0,4,6000,1,0 400 | 0,0.0,0,9000,0,1 401 | 1500,1.0,3,5500,0,1 402 | 2500,1.0,4,8500,0,1 403 | 1500,1.0,4,8500,0,1 404 | 2000,0.0,1,13000,0,1 405 | 1000,0.0,0,10500,1,0 406 | 1500,1.0,2,6000,0,1 407 | 2000,0.0,6,12500,0,1 408 | 2000,0.0,6,6000,1,0 409 | 1500,1.0,4,3000,0,1 410 | 1000,0.0,4,10500,0,1 411 | 1500,1.0,2,8000,0,1 412 | 1000,0.0,4,9000,0,1 413 | 500,1.0,6,4000,0,1 414 | 1000,0.0,3,12000,0,1 415 | 0,0.0,2,8000,0,1 416 | 0,0.0,3,7000,1,0 417 | 3500,1.0,0,5000,1,0 418 | 2000,0.0,5,7000,1,0 419 | 2500,1.0,5,8500,0,1 420 | 1000,0.0,5,9500,1,0 421 | 1500,1.0,0,3000,1,0 422 | 0,0.0,0,9000,0,1 423 | 0,1.0,5,4000,0,1 424 | 3000,0.0,3,11500,1,0 425 | 0,0.0,4,9000,0,1 426 | 2500,1.0,4,5500,1,0 427 | 0,0.0,5,10000,0,1 428 | 0,0.0,2,5500,1,0 429 | 1500,1.0,2,6500,0,1 430 | 1000,0.0,4,14500,0,1 431 | 0,1.0,6,5000,0,1 432 | 0,0.0,1,12000,0,1 433 | 0,0.0,3,13000,0,1 434 | 0,0.0,3,8500,0,1 435 | 0,0.0,3,5000,0,1 436 | 1500,1.0,1,5000,0,1 437 | 1000,0.0,2,5000,1,0 438 | 0,0.0,5,2000,0,1 439 | 500,1.0,2,8500,0,1 440 | 500,1.0,3,5000,0,1 441 | 1000,0.0,6,7500,1,0 442 | 0,0.0,5,9000,0,1 443 | 500,1.0,2,11000,0,1 444 | 2000,0.0,3,7000,1,0 445 | 1000,0.0,4,6000,1,0 446 | 0,0.0,4,8500,0,1 447 | 500,1.0,2,9500,0,1 448 | 3500,1.0,5,4000,1,0 449 | 2000,0.0,1,14000,0,1 450 | 1500,1.0,6,5000,0,1 451 | 2000,0.0,2,7500,1,0 452 | 2500,1.0,5,6500,0,1 453 | 500,1.0,0,6000,0,1 454 | 1000,0.0,6,9500,0,1 455 | 0,0.0,3,5000,0,1 456 | 3000,0.0,0,11000,1,0 457 | 2000,0.0,2,7000,1,0 458 | 2500,1.0,4,6000,0,1 459 | 3500,1.0,3,3000,1,0 460 | 2500,1.0,2,9500,0,1 461 | 500,1.0,1,4000,0,1 462 | 1500,1.0,2,4500,0,1 463 | 2500,1.0,1,7000,0,1 464 | 1000,0.0,4,10000,0,1 465 | 1000,0.0,5,11000,0,1 466 | 1500,1.0,1,6500,0,1 467 | 0,0.0,6,10500,0,1 468 | 2000,0.0,6,6000,1,0 469 | 500,1.0,0,6000,0,1 470 | 2500,1.0,5,6500,1,0 471 | 1500,1.0,0,4500,1,0 472 | 2000,0.0,0,8000,1,0 473 | 0,0.0,0,6500,1,0 474 | 0,0.0,6,8500,0,1 475 | 1500,1.0,0,6500,0,1 476 | 4500,1.0,1,9000,1,0 477 | 500,1.0,0,7000,0,1 478 | 0,0.0,3,7500,0,1 479 | 500,1.0,6,5000,0,1 480 | 1000,0.0,1,12000,1,0 481 | 2500,1.0,4,8500,0,1 482 | 1000,0.0,1,9000,0,1 483 | 3500,1.0,2,4000,1,0 484 | 0,0.0,4,7500,1,0 485 | 500,1.0,0,0,1,0 486 | 0,1.0,0,5500,0,1 487 | 0,0.0,2,11000,0,1 488 | 3000,0.0,5,10500,1,0 489 | 3500,1.0,0,6000,1,0 490 | 2000,0.0,4,12500,0,1 491 | 500,1.0,4,6500,0,1 492 | 0,0.0,4,9000,0,1 493 | 3000,0.0,1,9000,1,0 494 | 1000,0.0,6,9000,0,1 495 | 2500,1.0,6,6500,0,1 496 | 1500,1.0,1,9000,0,1 497 | 2500,1.0,4,9500,0,1 498 | 500,1.0,1,2500,1,0 499 | 500,1.0,5,4500,0,1 500 | 1500,1.0,1,6500,0,1 501 | 1500,1.0,3,5000,0,1 502 | 1500,1.0,5,5500,1,0 503 | 0,0.0,1,10000,0,1 504 | 2500,1.0,3,13000,0,1 505 | 1000,0.0,5,10500,0,1 506 | 1500,1.0,3,2000,1,0 507 | 0,1.0,6,3000,0,1 508 | 3500,1.0,6,3000,1,0 509 | 0,0.0,1,7500,0,1 510 | 0,0.0,1,5000,1,0 511 | 1000,0.0,1,7500,0,1 512 | 1000,0.0,6,6000,1,0 513 | 0,0.0,0,7500,0,1 514 | 1000,0.0,3,5500,1,0 515 | 1000,0.0,0,6500,0,1 516 | 1500,1.0,4,5000,0,1 517 | 0,0.0,1,9500,0,1 518 | 500,1.0,4,8000,0,1 519 | 500,1.0,5,11000,0,1 520 | 3500,1.0,0,4000,1,0 521 | 0,1.0,3,5500,0,1 522 | 500,1.0,6,7000,0,1 523 | 500,1.0,2,6500,0,1 524 | 1000,0.0,1,9000,0,1 525 | 1500,1.0,4,8000,0,1 526 | 0,0.0,4,7500,0,1 527 | 500,1.0,4,6000,0,1 528 | 0,0.0,0,7000,1,0 529 | 3500,1.0,0,13500,0,1 530 | 0,0.0,2,4000,0,1 531 | 500,1.0,5,5000,0,1 532 | 2000,0.0,0,8500,1,0 533 | 3000,0.0,6,11000,1,0 534 | 2500,1.0,3,6500,0,1 535 | 3500,1.0,3,4000,1,0 536 | 0,0.0,4,4000,0,1 537 | 0,0.0,6,6000,1,0 538 | 1500,1.0,1,7500,0,1 539 | 0,0.0,4,6000,1,0 540 | 0,0.0,3,10500,0,1 541 | 1500,1.0,3,4500,0,1 542 | 500,1.0,3,4500,0,1 543 | 500,1.0,4,4500,0,1 544 | 1000,0.0,2,11000,0,1 545 | 2500,1.0,1,4000,1,0 546 | 2000,0.0,2,5000,1,0 547 | 500,1.0,2,2500,1,0 548 | 3500,1.0,1,13000,0,1 549 | 1500,1.0,3,10500,0,1 550 | 1000,0.0,3,12000,0,1 551 | 0,0.0,4,9500,0,1 552 | 2000,0.0,4,5000,1,0 553 | 0,0.0,2,8500,1,0 554 | 1000,0.0,1,8500,0,1 555 | 2500,1.0,1,3500,1,0 556 | 2000,0.0,0,11500,1,0 557 | 2000,0.0,0,7500,1,0 558 | 0,0.0,2,6500,1,0 559 | 0,0.0,4,10500,0,1 560 | 0,1.0,3,5000,0,1 561 | 0,0.0,5,11000,0,1 562 | 2000,0.0,6,15500,0,1 563 | 0,0.0,3,12000,0,1 564 | 1000,0.0,2,9500,0,1 565 | 1500,1.0,1,9500,0,1 566 | 0,0.0,0,3500,1,0 567 | 1000,0.0,4,10000,0,1 568 | 2500,1.0,1,8500,0,1 569 | 1000,0.0,4,8500,0,1 570 | 1000,0.0,4,11500,0,1 571 | 1000,0.0,2,13500,0,1 572 | 1500,1.0,0,8500,0,1 573 | 2000,0.0,0,6000,1,0 574 | 2000,0.0,5,13000,0,1 575 | 0,0.0,3,7000,1,0 576 | 0,0.0,1,14500,0,1 577 | 1000,0.0,5,11000,0,1 578 | 2000,0.0,5,6000,1,0 579 | 1500,1.0,1,8500,0,1 580 | 0,0.0,5,9500,0,1 581 | 0,0.0,6,10500,0,1 582 | 500,1.0,0,7000,0,1 583 | 500,1.0,6,8000,0,1 584 | 500,1.0,4,2000,0,1 585 | 1000,0.0,3,5000,1,0 586 | 1000,0.0,5,12000,0,1 587 | 2500,1.0,3,10500,0,1 588 | 1000,0.0,4,8500,0,1 589 | 0,0.0,3,6000,0,1 590 | 0,0.0,6,8000,0,1 591 | 2500,1.0,4,8000,1,0 592 | 1500,1.0,3,3000,0,1 593 | 1500,1.0,0,6500,0,1 594 | 2000,0.0,5,14000,1,0 595 | 0,0.0,3,9500,0,1 596 | 1000,0.0,3,11000,0,1 597 | 1500,1.0,6,4000,0,1 598 | 0,0.0,1,7000,0,1 599 | 0,0.0,3,10500,0,1 600 | 2500,1.0,5,4000,1,0 601 | 3000,0.0,5,9000,1,0 602 | 3500,1.0,4,14500,0,1 603 | 1000,0.0,0,7500,1,0 604 | 1500,1.0,3,5500,0,1 605 | 3000,0.0,6,9000,1,0 606 | 1000,0.0,0,6000,1,0 607 | 1000,0.0,0,14000,0,1 608 | 0,0.0,3,12000,0,1 609 | 500,1.0,6,5000,0,1 610 | 0,0.0,1,6500,1,0 611 | 0,0.0,2,3000,1,0 612 | 0,0.0,3,7500,1,0 613 | 0,1.0,2,2000,0,1 614 | 0,0.0,3,8000,0,1 615 | 2000,0.0,0,10500,1,0 616 | 1000,0.0,3,5000,1,0 617 | 1500,1.0,2,5500,1,0 618 | 2500,1.0,6,4000,1,0 619 | 1500,1.0,0,8000,0,1 620 | 1000,0.0,3,7500,0,1 621 | 0,0.0,6,8000,1,0 622 | 2500,1.0,1,5000,1,0 623 | 0,0.0,4,7500,0,1 624 | 3000,0.0,3,12000,1,0 625 | 1500,1.0,1,7500,1,0 626 | 0,1.0,2,5000,0,1 627 | 500,1.0,5,2000,0,1 628 | 0,0.0,1,12000,0,1 629 | 1000,0.0,4,11500,0,1 630 | 0,1.0,1,2500,0,1 631 | 0,0.0,5,6000,0,1 632 | 1500,1.0,3,6500,0,1 633 | 1000,0.0,1,7500,0,1 634 | 2500,1.0,3,5000,1,0 635 | 0,0.0,2,3000,0,1 636 | 500,1.0,4,10500,0,1 637 | 0,0.0,5,6000,1,0 638 | 2000,0.0,1,12000,0,1 639 | 0,0.0,4,9000,0,1 640 | 0,0.0,1,8000,0,1 641 | 2500,1.0,6,11000,1,0 642 | 0,0.0,4,6000,0,1 643 | 2500,1.0,1,7000,1,0 644 | 1500,1.0,2,5500,1,0 645 | 2000,0.0,5,5000,1,0 646 | 500,1.0,6,7000,0,1 647 | 1500,1.0,5,4500,0,1 648 | 2000,0.0,2,7500,1,0 649 | 500,1.0,3,9000,0,1 650 | 0,0.0,1,5000,0,1 651 | 1000,0.0,2,8000,0,1 652 | 1500,1.0,2,7000,1,0 653 | 3000,0.0,6,9500,1,0 654 | 2500,1.0,6,3500,1,0 655 | 1500,1.0,4,1500,1,0 656 | 3500,1.0,2,12000,0,1 657 | 2000,0.0,2,8500,1,0 658 | 1500,1.0,3,3000,1,0 659 | 0,0.0,6,11500,0,1 660 | 500,1.0,6,6500,0,1 661 | 0,0.0,0,6500,1,0 662 | 0,0.0,5,10000,0,1 663 | 0,0.0,4,9500,0,1 664 | 2500,1.0,2,7000,0,1 665 | 0,0.0,0,7000,1,0 666 | 0,0.0,0,12500,0,1 667 | 500,1.0,2,6500,0,1 668 | 2000,0.0,3,9000,1,0 669 | 0,0.0,5,8000,1,0 670 | 1500,1.0,6,7500,0,1 671 | 0,0.0,6,3000,0,1 672 | 0,1.0,5,4500,0,1 673 | 1000,0.0,5,9000,0,1 674 | 1500,1.0,6,9500,0,1 675 | 3500,1.0,1,13000,0,1 676 | 0,0.0,6,7000,0,1 677 | 2500,1.0,5,6500,1,0 678 | 0,1.0,3,5500,0,1 679 | 2000,0.0,2,8000,1,0 680 | 0,0.0,4,10500,0,1 681 | 0,0.0,1,8500,1,0 682 | 2500,1.0,1,5000,1,0 683 | 1500,1.0,2,6500,0,1 684 | 0,0.0,2,8500,0,1 685 | 0,0.0,4,15500,0,1 686 | 1500,1.0,6,5000,1,0 687 | 2500,1.0,5,8000,1,0 688 | 3500,1.0,3,3500,1,0 689 | 1000,0.0,6,8500,1,0 690 | 0,0.0,4,14000,0,1 691 | 1000,0.0,5,8500,0,1 692 | 1000,0.0,2,12500,0,1 693 | 2500,1.0,4,5000,1,0 694 | 0,1.0,6,4500,0,1 695 | 2000,0.0,5,9500,1,0 696 | 1500,1.0,2,3500,0,1 697 | 1000,0.0,1,6000,0,1 698 | 1500,1.0,4,7500,0,1 699 | 500,1.0,0,9000,0,1 700 | 1500,1.0,1,6500,1,0 701 | 0,0.0,0,8000,0,1 702 | 500,1.0,2,4500,0,1 703 | 0,0.0,0,8000,0,1 704 | 1000,0.0,3,6000,0,1 705 | 0,0.0,5,8000,0,1 706 | 2500,1.0,2,6500,0,1 707 | 2000,0.0,0,5000,1,0 708 | 2000,0.0,2,7500,1,0 709 | 2000,0.0,3,13500,0,1 710 | 1000,0.0,0,8000,1,0 711 | 4500,1.0,0,9000,1,0 712 | 2000,0.0,1,7000,1,0 713 | 1000,0.0,0,6000,0,1 714 | 1500,1.0,5,2000,0,1 715 | 2500,1.0,0,6500,1,0 716 | 1000,0.0,2,6500,1,0 717 | 1000,0.0,3,5000,1,0 718 | 0,0.0,4,8000,1,0 719 | 2000,0.0,6,5000,1,0 720 | 2500,1.0,5,6500,0,1 721 | 0,0.0,3,9000,0,1 722 | 2000,0.0,3,12500,0,1 723 | 1000,0.0,0,10500,0,1 724 | 2500,1.0,6,6500,0,1 725 | 1000,0.0,4,3000,1,0 726 | 0,0.0,6,11500,0,1 727 | 500,1.0,4,6500,0,1 728 | 1000,0.0,3,9000,1,0 729 | 1000,0.0,6,9000,0,1 730 | 0,0.0,2,11500,0,1 731 | 0,0.0,4,11000,0,1 732 | 0,1.0,4,4000,0,1 733 | 2500,1.0,6,8000,0,1 734 | 500,1.0,5,6000,0,1 735 | 2000,0.0,3,8000,1,0 736 | 1500,1.0,5,5500,1,0 737 | 500,1.0,5,1000,1,0 738 | 2500,1.0,1,7000,0,1 739 | 1000,0.0,4,6500,0,1 740 | 0,1.0,6,4000,0,1 741 | 0,1.0,5,3000,0,1 742 | 1000,0.0,5,7500,0,1 743 | 2500,1.0,3,4500,1,0 744 | 1000,0.0,1,10000,1,0 745 | 0,0.0,3,8000,0,1 746 | 0,0.0,5,9000,0,1 747 | 500,1.0,3,5000,0,1 748 | 0,0.0,2,6000,1,0 749 | 0,0.0,0,10500,0,1 750 | 0,0.0,6,6000,0,1 751 | 2500,1.0,1,8000,0,1 752 | 1000,0.0,5,7500,1,0 753 | 2000,0.0,5,8500,1,0 754 | 2500,1.0,5,8000,0,1 755 | 1000,0.0,6,11500,0,1 756 | 500,1.0,0,5000,0,1 757 | 2000,0.0,1,4000,1,0 758 | 3000,0.0,6,10000,1,0 759 | 1000,0.0,5,7000,1,0 760 | 0,0.0,1,10000,0,1 761 | 1000,0.0,5,2000,1,0 762 | 1000,0.0,6,10000,0,1 763 | 3500,1.0,4,4000,1,0 764 | 1000,0.0,2,10000,1,0 765 | 1000,0.0,2,2000,1,0 766 | 1500,1.0,3,13000,0,1 767 | 1000,0.0,6,5500,1,0 768 | 2500,1.0,6,6500,1,0 769 | 2500,1.0,6,7000,0,1 770 | 500,1.0,0,6000,0,1 771 | 1500,1.0,5,4000,1,0 772 | 0,0.0,5,7000,1,0 773 | 0,0.0,3,8500,0,1 774 | 2000,0.0,2,14000,0,1 775 | 1500,1.0,3,7500,0,1 776 | 500,1.0,2,6500,0,1 777 | 0,0.0,2,11000,0,1 778 | 500,1.0,1,8000,0,1 779 | 0,0.0,3,8000,0,1 780 | 500,1.0,1,3000,0,1 781 | 0,0.0,3,9000,0,1 782 | 3500,1.0,5,6000,1,0 783 | 1000,0.0,6,9500,0,1 784 | 1000,0.0,2,5000,1,0 785 | 500,1.0,5,5500,0,1 786 | 1500,1.0,2,4000,0,1 787 | 1000,0.0,4,13000,1,0 788 | 500,1.0,1,8500,0,1 789 | 2500,1.0,5,11500,0,1 790 | 1500,1.0,6,3000,0,1 791 | 1500,1.0,0,3500,1,0 792 | 1500,1.0,3,4000,0,1 793 | 1000,0.0,5,6000,0,1 794 | 2500,1.0,0,3500,1,0 795 | 500,1.0,4,9000,0,1 796 | 2500,1.0,2,3000,1,0 797 | 1000,0.0,1,14000,0,1 798 | 1000,0.0,0,14000,0,1 799 | 1000,0.0,1,6000,1,0 800 | 500,1.0,2,11500,0,1 801 | 1000,0.0,1,8000,0,1 802 | 1000,0.0,6,4000,1,0 803 | 2000,0.0,1,11500,1,0 804 | 1000,0.0,5,7500,0,1 805 | 1500,1.0,3,5500,1,0 806 | 1000,0.0,6,7000,0,1 807 | 2500,1.0,0,8000,1,0 808 | 1000,0.0,4,14500,0,1 809 | 1000,0.0,1,11000,0,1 810 | 0,1.0,1,3000,0,1 811 | 1000,0.0,5,10500,1,0 812 | 0,0.0,4,10000,0,1 813 | 500,1.0,6,5000,0,1 814 | 1500,1.0,6,5000,0,1 815 | 0,0.0,6,8000,0,1 816 | 0,0.0,0,7500,0,1 817 | 0,0.0,2,6000,1,0 818 | 500,1.0,3,1000,0,1 819 | 0,0.0,4,2500,1,0 820 | 1500,1.0,1,4000,1,0 821 | 0,0.0,6,5500,0,1 822 | 2000,0.0,2,6000,1,0 823 | 2000,0.0,3,4500,1,0 824 | 2500,1.0,4,6000,0,1 825 | 1000,0.0,1,7500,0,1 826 | 2500,1.0,6,6000,0,1 827 | 1500,1.0,0,9000,0,1 828 | 500,1.0,4,9000,0,1 829 | 0,0.0,6,5500,1,0 830 | 1000,0.0,1,7500,0,1 831 | 1000,0.0,2,9000,0,1 832 | 0,1.0,4,1000,0,1 833 | 500,1.0,3,5000,0,1 834 | 1500,1.0,0,1000,1,0 835 | 0,0.0,4,8500,0,1 836 | 1500,1.0,5,7000,0,1 837 | 2500,1.0,4,18000,0,1 838 | 2500,1.0,5,7000,1,0 839 | 500,1.0,0,10000,0,1 840 | 0,0.0,5,11500,0,1 841 | 1500,1.0,2,5500,0,1 842 | 1000,0.0,3,5000,1,0 843 | 0,0.0,1,2000,1,0 844 | 2000,0.0,2,7000,1,0 845 | 2500,1.0,1,6000,0,1 846 | 3500,1.0,6,9500,1,0 847 | 1000,0.0,5,7500,0,1 848 | 2500,1.0,3,9500,0,1 849 | 0,0.0,2,8000,1,0 850 | 2000,0.0,4,3500,1,0 851 | 0,0.0,2,8000,0,1 852 | 0,1.0,1,3000,0,1 853 | 1000,0.0,4,9000,0,1 854 | 1000,0.0,0,7000,1,0 855 | 0,0.0,2,10000,0,1 856 | 1500,1.0,2,7000,0,1 857 | 1000,0.0,4,14500,0,1 858 | 0,0.0,2,6500,0,1 859 | 0,0.0,4,7000,0,1 860 | 3000,0.0,0,11500,1,0 861 | 0,0.0,2,9000,0,1 862 | 0,0.0,6,7500,1,0 863 | 2500,1.0,1,8000,0,1 864 | 2000,0.0,2,7500,1,0 865 | 1000,0.0,4,14500,0,1 866 | 0,1.0,4,4000,0,1 867 | 0,0.0,1,10000,0,1 868 | 500,1.0,1,5000,0,1 869 | 1000,0.0,4,5000,1,0 870 | 0,0.0,5,10000,0,1 871 | 0,1.0,4,5500,0,1 872 | 500,1.0,2,7000,0,1 873 | 1500,1.0,4,5000,0,1 874 | 0,0.0,1,10500,0,1 875 | 500,1.0,2,6500,0,1 876 | 500,1.0,4,4000,0,1 877 | 3000,0.0,0,11000,1,0 878 | 1500,1.0,1,7000,0,1 879 | 0,0.0,5,11500,0,1 880 | 2000,0.0,0,5000,1,0 881 | 1500,1.0,2,8000,0,1 882 | 1000,0.0,1,7500,1,0 883 | 500,1.0,2,4000,0,1 884 | 3000,0.0,3,9500,1,0 885 | 0,0.0,1,4000,0,1 886 | 0,0.0,2,8500,1,0 887 | 3500,1.0,0,4000,1,0 888 | 4500,1.0,2,9000,1,0 889 | 0,0.0,4,7500,1,0 890 | 1500,1.0,6,3000,0,1 891 | 1000,0.0,4,7500,0,1 892 | 1500,1.0,0,7500,1,0 893 | 0,0.0,2,9500,0,1 894 | 1000,0.0,1,10000,0,1 895 | 2500,1.0,0,6500,0,1 896 | 2500,1.0,2,7000,0,1 897 | 0,0.0,3,7000,0,1 898 | 500,1.0,4,8500,0,1 899 | 1500,1.0,0,7000,0,1 900 | 1000,0.0,2,7000,1,0 901 | 0,0.0,3,8500,1,0 902 | 1500,1.0,4,7000,0,1 903 | 500,1.0,3,11000,0,1 904 | 1000,0.0,5,9500,0,1 905 | 0,0.0,6,7000,0,1 906 | 1500,1.0,0,5500,1,0 907 | 1000,0.0,2,9000,1,0 908 | 0,0.0,3,5500,0,1 909 | 1000,0.0,6,10000,0,1 910 | 1000,0.0,3,1500,1,0 911 | 2000,0.0,3,4000,1,0 912 | 0,0.0,1,5000,0,1 913 | 500,1.0,6,6500,0,1 914 | 0,1.0,3,5500,0,1 915 | 0,0.0,2,8500,1,0 916 | 0,0.0,2,5000,0,1 917 | 3000,0.0,2,11500,1,0 918 | 0,0.0,6,8000,0,1 919 | 1000,0.0,4,9000,0,1 920 | 2000,0.0,3,9500,1,0 921 | 3500,1.0,6,7000,1,0 922 | 2000,0.0,0,4000,1,0 923 | 1500,1.0,4,5000,0,1 924 | 1000,0.0,5,5000,1,0 925 | 2500,1.0,1,9000,0,1 926 | 500,1.0,2,6000,0,1 927 | 0,1.0,1,3000,0,1 928 | 1500,1.0,4,8500,0,1 929 | 2000,0.0,6,12000,0,1 930 | 2000,0.0,1,6000,1,0 931 | 0,0.0,4,10500,0,1 932 | 2000,0.0,5,5500,1,0 933 | 1500,1.0,6,7000,0,1 934 | 3500,1.0,1,4000,1,0 935 | 3000,0.0,2,9000,1,0 936 | 1500,1.0,6,6500,0,1 937 | 500,1.0,5,9000,0,1 938 | 0,0.0,6,8000,0,1 939 | 2500,1.0,6,8000,0,1 940 | 0,0.0,6,9000,0,1 941 | 1500,1.0,3,2000,1,0 942 | 1500,1.0,2,10000,0,1 943 | 2000,0.0,5,6000,1,0 944 | 0,1.0,6,4500,0,1 945 | 3500,1.0,2,8000,1,0 946 | 1000,0.0,2,12000,0,1 947 | 1000,0.0,3,7500,0,1 948 | 500,1.0,2,6500,0,1 949 | 1000,0.0,4,15000,0,1 950 | 1000,0.0,5,12000,0,1 951 | 2000,0.0,1,5000,1,0 952 | 2000,0.0,3,7000,1,0 953 | 0,0.0,0,10500,0,1 954 | 1500,1.0,5,4000,0,1 955 | 2500,1.0,4,5000,1,0 956 | 2000,0.0,5,12000,0,1 957 | 1000,0.0,3,11000,0,1 958 | 0,0.0,1,10500,0,1 959 | 500,1.0,3,9500,0,1 960 | 3000,0.0,6,11500,1,0 961 | 0,0.0,4,6500,1,0 962 | 0,0.0,4,13000,0,1 963 | 1500,1.0,5,6500,0,1 964 | 3500,1.0,0,5000,1,0 965 | 1000,0.0,2,9000,0,1 966 | 1500,1.0,1,5000,0,1 967 | 0,0.0,5,9000,0,1 968 | 1000,0.0,6,4000,1,0 969 | 0,0.0,4,6000,1,0 970 | 2500,1.0,4,6500,0,1 971 | 0,1.0,1,4500,0,1 972 | 0,0.0,5,5000,0,1 973 | 0,0.0,6,10500,0,1 974 | 1500,1.0,4,2500,1,0 975 | 2500,1.0,0,5000,1,0 976 | 2500,1.0,0,8000,0,1 977 | 1000,0.0,2,4000,1,0 978 | 0,0.0,6,8000,0,1 979 | 0,0.0,5,9500,0,1 980 | 1000,0.0,5,4500,1,0 981 | 0,0.0,5,14500,0,1 982 | 1000,0.0,3,10500,1,0 983 | 1000,0.0,1,10000,1,0 984 | 0,0.0,0,9500,0,1 985 | 0,0.0,0,7000,0,1 986 | 0,0.0,0,10000,0,1 987 | 500,1.0,0,7000,0,1 988 | 0,0.0,6,8500,0,1 989 | 0,0.0,2,12500,0,1 990 | 2500,1.0,4,8500,1,0 991 | 1000,0.0,5,7000,1,0 992 | 0,0.0,0,7000,0,1 993 | 3500,1.0,5,5500,1,0 994 | 1000,0.0,2,7500,0,1 995 | 1000,0.0,6,10500,0,1 996 | 1500,1.0,3,6500,0,1 997 | 1000,0.0,5,9000,0,1 998 | 2000,0.0,4,8500,1,0 999 | 1500,1.0,3,3500,0,1 1000 | 0,0.0,4,8000,0,1 1001 | 1000,0.0,5,14000,0,1 1002 | 500,1.0,4,11000,0,1 1003 | 1000,0.0,4,6000,0,1 1004 | 2500,1.0,2,8000,0,1 1005 | 500,1.0,1,5500,0,1 1006 | 2500,1.0,3,6500,0,1 1007 | 0,0.0,4,6000,1,0 1008 | 2000,0.0,6,3000,1,0 1009 | 500,1.0,4,8500,0,1 1010 | 2000,0.0,0,12500,0,1 1011 | 2000,0.0,5,14000,0,1 1012 | 0,0.0,0,6000,0,1 1013 | 0,0.0,2,11500,0,1 1014 | 2000,0.0,4,4500,1,0 1015 | 500,1.0,3,5000,0,1 1016 | 500,1.0,5,7500,0,1 1017 | 0,0.0,3,5500,0,1 1018 | 1000,0.0,0,9000,0,1 1019 | 0,0.0,0,3500,0,1 1020 | 1000,0.0,1,9000,0,1 1021 | 0,0.0,4,9000,0,1 1022 | 0,0.0,4,9000,0,1 1023 | 2000,0.0,5,6000,1,0 1024 | 1000,0.0,0,9500,0,1 1025 | 500,1.0,6,10000,0,1 1026 | 1000,0.0,0,9500,0,1 1027 | 1500,1.0,0,5000,0,1 1028 | 500,1.0,1,11000,0,1 1029 | 1500,1.0,5,8000,1,0 1030 | 2500,1.0,1,6500,0,1 1031 | 3500,1.0,1,5500,1,0 1032 | 1500,1.0,4,9500,0,1 1033 | 500,1.0,6,7500,0,1 1034 | 1500,1.0,6,2000,0,1 1035 | 0,0.0,6,9500,0,1 1036 | 0,0.0,1,2500,0,1 1037 | 1000,0.0,4,9000,1,0 1038 | 0,0.0,0,5500,1,0 1039 | 0,0.0,4,5000,0,1 1040 | 500,1.0,6,9000,0,1 1041 | 2000,0.0,3,12500,0,1 1042 | 500,1.0,6,7000,0,1 1043 | 1000,0.0,5,7500,1,0 1044 | 1500,1.0,6,7000,1,0 1045 | 500,1.0,2,6000,0,1 1046 | 1500,1.0,6,4000,0,1 1047 | 500,1.0,6,6500,0,1 1048 | 2500,1.0,0,6500,0,1 1049 | 2000,0.0,3,14000,0,1 1050 | 2500,1.0,2,6500,0,1 1051 | 2000,0.0,3,9000,1,0 1052 | 0,0.0,6,5000,1,0 1053 | 500,1.0,6,6500,0,1 1054 | 1500,1.0,2,7000,0,1 1055 | 0,0.0,2,11500,0,1 1056 | 0,0.0,6,10500,0,1 1057 | 2500,1.0,1,9000,0,1 1058 | 1000,0.0,3,11500,1,0 1059 | 500,1.0,5,6500,0,1 1060 | 2500,1.0,3,6500,0,1 1061 | 500,1.0,0,7000,0,1 1062 | 2000,0.0,5,7500,1,0 1063 | 1000,0.0,4,8000,0,1 1064 | 0,0.0,5,8500,1,0 1065 | 0,0.0,5,11500,0,1 1066 | 0,0.0,5,6000,1,0 1067 | 0,1.0,3,3500,0,1 1068 | 0,0.0,3,8000,1,0 1069 | 2500,1.0,0,6000,0,1 1070 | 1500,1.0,0,5000,1,0 1071 | 1000,0.0,1,12500,1,0 1072 | 0,0.0,5,8000,0,1 1073 | 1500,1.0,4,4500,1,0 1074 | 500,1.0,4,5500,0,1 1075 | 0,0.0,1,10500,0,1 1076 | 1500,1.0,5,6000,0,1 1077 | 0,1.0,5,5000,0,1 1078 | 2500,1.0,5,7500,0,1 1079 | 1500,1.0,0,3000,0,1 1080 | 1500,1.0,6,6500,0,1 1081 | 1000,0.0,0,7000,0,1 1082 | 1000,0.0,0,8500,1,0 1083 | 2500,1.0,6,8500,0,1 1084 | 0,0.0,6,2000,0,1 1085 | 0,0.0,3,7500,1,0 1086 | 1000,0.0,4,8000,0,1 1087 | 1000,0.0,4,7000,0,1 1088 | 1500,1.0,2,1000,0,1 1089 | 0,0.0,2,3000,0,1 1090 | 3500,1.0,3,5000,1,0 1091 | 500,1.0,3,6500,0,1 1092 | 1500,1.0,6,5000,1,0 1093 | 500,1.0,4,2500,0,1 1094 | 1500,1.0,5,7500,0,1 1095 | 2000,0.0,2,8000,1,0 1096 | 1500,1.0,5,3000,1,0 1097 | 500,1.0,1,6000,0,1 1098 | 0,0.0,0,3000,0,1 1099 | 3500,1.0,4,13500,0,1 1100 | 1500,1.0,1,6500,0,1 1101 | 0,0.0,3,8000,0,1 1102 | 1000,0.0,0,8500,0,1 1103 | 2500,1.0,3,5000,1,0 1104 | 1000,0.0,2,6500,1,0 1105 | 1000,0.0,6,9000,1,0 1106 | 1000,0.0,5,7500,0,1 1107 | 500,1.0,1,4500,0,1 1108 | 0,0.0,6,7500,0,1 1109 | 500,1.0,6,6500,0,1 1110 | 1000,0.0,5,7500,1,0 1111 | 3500,1.0,6,4000,1,0 1112 | 1500,1.0,0,4000,1,0 1113 | 1000,0.0,0,12500,0,1 1114 | 0,0.0,3,6000,0,1 1115 | 2500,1.0,5,8000,0,1 1116 | 0,0.0,4,8500,0,1 1117 | 500,1.0,1,8000,0,1 1118 | 3500,1.0,0,12000,0,1 1119 | 1000,0.0,0,8000,0,1 1120 | 1000,0.0,5,5500,1,0 1121 | 0,0.0,2,6000,0,1 1122 | 500,1.0,1,6000,0,1 1123 | 1000,0.0,1,9000,0,1 1124 | 0,0.0,6,6500,1,0 1125 | 0,0.0,0,11000,0,1 1126 | 500,1.0,5,8000,0,1 1127 | 0,0.0,1,7000,0,1 1128 | 3000,0.0,1,12500,1,0 1129 | 1500,1.0,0,3000,0,1 1130 | 0,0.0,0,6500,0,1 1131 | 500,1.0,3,3000,0,1 1132 | 1000,0.0,6,8500,0,1 1133 | 1500,1.0,5,5000,0,1 1134 | 1500,1.0,6,4000,1,0 1135 | 0,0.0,3,11000,0,1 1136 | 1500,1.0,6,6000,0,1 1137 | 0,0.0,5,9500,0,1 1138 | 2000,0.0,3,7500,1,0 1139 | 1500,1.0,3,2500,0,1 1140 | 2500,1.0,1,8500,1,0 1141 | 0,0.0,2,10000,0,1 1142 | 500,1.0,0,9500,0,1 1143 | 500,1.0,6,6500,0,1 1144 | 0,0.0,0,7000,0,1 1145 | 1500,1.0,4,6500,0,1 1146 | 1500,1.0,2,6500,1,0 1147 | 2500,1.0,5,7500,0,1 1148 | 0,0.0,6,2000,1,0 1149 | 1000,0.0,2,5500,1,0 1150 | 2500,1.0,0,6500,0,1 1151 | 0,0.0,2,7000,0,1 1152 | 0,0.0,5,10000,0,1 1153 | 1500,1.0,6,2000,0,1 1154 | 2000,0.0,6,5000,1,0 1155 | 1000,0.0,4,7500,0,1 1156 | 0,0.0,1,5500,0,1 1157 | 0,1.0,5,2500,0,1 1158 | 0,0.0,3,9500,0,1 1159 | 2000,0.0,4,10000,1,0 1160 | 0,0.0,5,11000,0,1 1161 | 0,0.0,5,12500,0,1 1162 | 2000,0.0,6,12000,0,1 1163 | 3500,1.0,3,7000,1,0 1164 | 0,0.0,0,8500,0,1 1165 | 500,1.0,1,7000,0,1 1166 | 0,0.0,4,11000,0,1 1167 | 1000,0.0,2,3000,1,0 1168 | 3500,1.0,1,12500,0,1 1169 | 0,0.0,4,7000,1,0 1170 | 0,1.0,1,4500,0,1 1171 | 500,1.0,0,9500,0,1 1172 | 0,0.0,6,4500,1,0 1173 | 0,1.0,2,4000,0,1 1174 | 0,1.0,3,4000,0,1 1175 | 1500,1.0,3,6000,0,1 1176 | 0,0.0,5,2000,1,0 1177 | 1000,0.0,3,10000,1,0 1178 | 2000,0.0,5,9000,1,0 1179 | 2000,0.0,4,9000,1,0 1180 | 0,0.0,1,5000,0,1 1181 | 1500,1.0,2,7500,0,1 1182 | 1000,0.0,6,9000,1,0 1183 | 500,1.0,2,7000,0,1 1184 | 1500,1.0,5,4000,1,0 1185 | 0,0.0,4,8000,0,1 1186 | 2000,0.0,2,9000,1,0 1187 | 2000,0.0,2,3000,1,0 1188 | 1500,1.0,1,6500,1,0 1189 | 1000,0.0,1,16500,0,1 1190 | 2000,0.0,5,4500,1,0 1191 | 2500,1.0,1,9000,0,1 1192 | 1500,1.0,4,7500,0,1 1193 | 0,0.0,5,7500,0,1 1194 | 1500,1.0,4,5500,0,1 1195 | 500,1.0,4,11000,0,1 1196 | 1500,1.0,2,14500,0,1 1197 | 1000,0.0,3,7000,1,0 1198 | 1500,1.0,2,7500,0,1 1199 | 0,0.0,1,6000,0,1 1200 | 500,1.0,6,6000,0,1 1201 | 500,1.0,3,8000,0,1 1202 | 0,0.0,0,9000,0,1 1203 | 0,0.0,3,7000,0,1 1204 | 1000,0.0,1,2000,1,0 1205 | 0,0.0,1,6000,0,1 1206 | 0,0.0,1,11000,0,1 1207 | 1000,0.0,5,7500,0,1 1208 | 0,1.0,6,5000,0,1 1209 | 1000,0.0,1,4000,1,0 1210 | 2500,1.0,0,3000,1,0 1211 | 1000,0.0,5,6500,0,1 1212 | 0,0.0,6,8500,1,0 1213 | 2000,0.0,3,9500,1,0 1214 | 1000,0.0,0,9500,1,0 1215 | 1000,0.0,2,7000,1,0 1216 | 500,1.0,3,4000,0,1 1217 | 2500,1.0,2,8000,1,0 1218 | 1000,0.0,6,6000,0,1 1219 | 2000,0.0,2,7000,1,0 1220 | 3000,0.0,5,10000,1,0 1221 | 0,0.0,2,5500,1,0 1222 | 0,1.0,5,5000,0,1 1223 | 1500,1.0,1,6500,0,1 1224 | 1500,1.0,6,5000,0,1 1225 | 500,1.0,3,8000,0,1 1226 | 3000,0.0,4,10000,1,0 1227 | 0,0.0,6,8500,0,1 1228 | 2500,1.0,3,6000,1,0 1229 | 2000,0.0,6,10000,1,0 1230 | 1500,1.0,1,7000,0,1 1231 | 0,0.0,3,10500,0,1 1232 | 1500,1.0,5,7000,0,1 1233 | 2000,0.0,1,10500,1,0 1234 | 500,1.0,3,9500,0,1 1235 | 1500,1.0,3,5500,0,1 1236 | 1500,1.0,5,1000,0,1 1237 | 0,0.0,2,10500,0,1 1238 | 2500,1.0,0,7500,0,1 1239 | 3500,1.0,3,5000,1,0 1240 | 1000,0.0,4,6000,0,1 1241 | 0,0.0,0,6000,0,1 1242 | 2000,0.0,4,8000,1,0 1243 | 1000,0.0,5,10000,0,1 1244 | 2000,0.0,3,7500,1,0 1245 | 0,0.0,6,8500,1,0 1246 | 3500,1.0,1,12000,0,1 1247 | 0,0.0,5,8500,0,1 1248 | 0,0.0,6,9500,0,1 1249 | 1500,1.0,3,5500,0,1 1250 | 1500,1.0,6,6000,0,1 1251 | 1500,1.0,2,3000,0,1 1252 | 0,1.0,1,4000,0,1 1253 | 1000,0.0,4,13500,0,1 1254 | 1000,0.0,3,7500,1,0 1255 | 2000,0.0,5,14000,0,1 1256 | 1500,1.0,5,5000,1,0 1257 | 3500,1.0,6,4000,1,0 1258 | 1500,1.0,3,5500,0,1 1259 | 0,0.0,1,6000,0,1 1260 | 1000,0.0,3,4500,1,0 1261 | 2000,0.0,0,7000,1,0 1262 | 0,0.0,4,11000,0,1 1263 | 1500,1.0,3,8500,0,1 1264 | 1500,1.0,3,7000,0,1 1265 | 0,1.0,1,5000,0,1 1266 | 1000,0.0,2,8000,0,1 1267 | 0,0.0,5,10500,0,1 1268 | 500,1.0,4,8000,0,1 1269 | 2500,1.0,0,11000,0,1 1270 | 2000,0.0,5,6000,1,0 1271 | 500,1.0,0,3500,0,1 1272 | 1000,0.0,1,6000,1,0 1273 | 3500,1.0,0,3500,1,0 1274 | 1500,1.0,2,5500,0,1 1275 | 0,0.0,3,9000,0,1 1276 | 0,0.0,4,7500,1,0 1277 | 1500,1.0,5,10000,0,1 1278 | 1500,1.0,3,6500,0,1 1279 | 2000,0.0,1,5000,1,0 1280 | 1500,1.0,3,5000,0,1 1281 | 3500,1.0,2,7000,1,0 1282 | 1500,1.0,0,8500,0,1 1283 | 0,0.0,5,8000,0,1 1284 | 500,1.0,4,6500,0,1 1285 | 1500,1.0,2,5000,1,0 1286 | 1500,1.0,5,5000,1,0 1287 | 1000,0.0,6,6000,1,0 1288 | 2500,1.0,1,6000,0,1 1289 | 500,1.0,4,10000,0,1 1290 | 2000,0.0,3,5000,1,0 1291 | 0,0.0,1,5000,0,1 1292 | 0,0.0,3,12000,0,1 1293 | 1000,0.0,2,11000,1,0 1294 | 2500,1.0,5,8500,0,1 1295 | 3500,1.0,2,4500,1,0 1296 | 2000,0.0,1,12000,0,1 1297 | 0,0.0,6,10000,0,1 1298 | 0,0.0,0,11500,0,1 1299 | 2500,1.0,1,8500,0,1 1300 | 2500,1.0,0,5000,1,0 1301 | 2000,0.0,1,6000,1,0 1302 | 0,0.0,1,6000,1,0 1303 | 2500,1.0,4,8000,0,1 1304 | 0,0.0,6,12500,0,1 1305 | 1500,1.0,0,11000,0,1 1306 | 500,1.0,0,3000,0,1 1307 | 500,1.0,5,6500,0,1 1308 | 500,1.0,2,4000,0,1 1309 | 1000,0.0,3,5500,1,0 1310 | 2000,0.0,2,15500,0,1 1311 | 1500,1.0,0,11500,0,1 1312 | 2500,1.0,4,7000,0,1 1313 | 2500,1.0,6,7000,0,1 1314 | 3500,1.0,0,3000,1,0 1315 | 0,0.0,5,9000,0,1 1316 | 3500,1.0,3,4000,1,0 1317 | 4500,1.0,3,9000,1,0 1318 | 1000,0.0,1,11500,0,1 1319 | 1000,0.0,4,6000,1,0 1320 | 2000,0.0,5,9000,1,0 1321 | 1000,0.0,2,6000,0,1 1322 | 0,0.0,4,11500,0,1 1323 | 2500,1.0,1,6000,0,1 1324 | 0,0.0,0,3000,0,1 1325 | 0,0.0,6,9000,0,1 1326 | 1000,0.0,5,8000,1,0 1327 | 0,1.0,6,4000,0,1 1328 | 0,0.0,3,10000,0,1 1329 | 0,0.0,0,3000,0,1 1330 | 2000,0.0,0,7000,1,0 1331 | 1000,0.0,1,10000,0,1 1332 | 0,0.0,2,11500,0,1 1333 | 1500,1.0,0,9500,0,1 1334 | 0,1.0,3,5500,0,1 1335 | 2500,1.0,3,8000,0,1 1336 | 0,0.0,2,8500,0,1 1337 | 2500,1.0,2,11000,0,1 1338 | 500,1.0,1,5000,0,1 1339 | 3500,1.0,6,4500,1,0 1340 | 2500,1.0,4,3500,1,0 1341 | 500,1.0,3,9500,0,1 1342 | 0,0.0,0,8000,0,1 1343 | 2000,0.0,1,4000,1,0 1344 | 0,0.0,2,1000,1,0 1345 | 1500,1.0,0,8000,1,0 1346 | 0,0.0,4,8500,0,1 1347 | 1500,1.0,5,4500,1,0 1348 | 2000,0.0,2,7000,1,0 1349 | 0,0.0,6,3500,0,1 1350 | 500,1.0,6,7000,0,1 1351 | 1500,1.0,4,11500,0,1 1352 | 2500,1.0,4,11500,0,1 1353 | 2500,1.0,3,9000,0,1 1354 | 0,0.0,5,6000,1,0 1355 | 1000,0.0,3,10000,1,0 1356 | 0,1.0,4,4000,0,1 1357 | 500,1.0,5,9500,0,1 1358 | 1000,0.0,3,5000,1,0 1359 | 1000,0.0,5,7000,1,0 1360 | 2000,0.0,6,4000,1,0 1361 | 1000,0.0,5,8000,0,1 1362 | 0,0.0,6,2000,1,0 1363 | 1500,1.0,2,11000,0,1 1364 | 2500,1.0,4,4000,1,0 1365 | 1000,0.0,4,9000,1,0 1366 | 1500,1.0,1,11500,0,1 1367 | 2500,1.0,1,7000,1,0 1368 | 2500,1.0,1,5000,1,0 1369 | 1000,0.0,1,10500,1,0 1370 | 500,1.0,0,3500,0,1 1371 | 1500,1.0,1,6000,0,1 1372 | 3000,0.0,2,10000,1,0 1373 | 1000,0.0,0,8000,0,1 1374 | 2000,0.0,2,7500,1,0 1375 | 1500,1.0,1,5000,0,1 1376 | 1500,1.0,4,6500,1,0 1377 | 2000,0.0,6,3000,1,0 1378 | 1500,1.0,0,10000,0,1 1379 | 0,0.0,6,8500,0,1 1380 | 0,1.0,4,5000,0,1 1381 | 0,0.0,6,10000,0,1 1382 | 1500,1.0,2,4000,0,1 1383 | 1500,1.0,2,7000,1,0 1384 | 0,0.0,0,9500,0,1 1385 | 0,0.0,6,8500,0,1 1386 | 1000,0.0,6,3500,1,0 1387 | 500,1.0,5,6000,0,1 1388 | 500,1.0,2,6500,0,1 1389 | 2000,0.0,5,8000,1,0 1390 | 2500,1.0,0,6500,0,1 1391 | 0,0.0,2,7000,1,0 1392 | 2000,0.0,4,9000,1,0 1393 | 1500,1.0,3,6000,0,1 1394 | 1000,0.0,1,10500,0,1 1395 | 3500,1.0,1,4000,1,0 1396 | 0,0.0,3,8500,0,1 1397 | 2500,1.0,3,6500,1,0 1398 | 3000,0.0,0,9000,1,0 1399 | 2500,1.0,2,8000,0,1 1400 | 0,0.0,4,11000,0,1 1401 | 0,0.0,1,10000,0,1 1402 | 2500,1.0,3,2500,1,0 1403 | 500,1.0,5,4000,0,1 1404 | 2500,1.0,6,4000,1,0 1405 | 2500,1.0,5,7000,0,1 1406 | 0,0.0,6,9500,0,1 1407 | 3000,0.0,3,11500,1,0 1408 | 1000,0.0,6,8500,1,0 1409 | 500,1.0,3,5500,0,1 1410 | 3500,1.0,2,5500,1,0 1411 | 1000,0.0,5,5000,1,0 1412 | 0,1.0,4,4000,0,1 1413 | 1500,1.0,3,7500,0,1 1414 | 2500,1.0,4,6000,1,0 1415 | 0,0.0,1,9000,0,1 1416 | 0,0.0,0,8500,0,1 1417 | 500,1.0,0,2500,1,0 1418 | 2500,1.0,1,6500,0,1 1419 | 1500,1.0,0,9500,0,1 1420 | 2000,0.0,3,7000,1,0 1421 | 2000,0.0,5,7500,1,0 1422 | 0,0.0,6,7500,0,1 1423 | 1000,0.0,2,8000,0,1 1424 | 0,0.0,0,4500,0,1 1425 | 3500,1.0,1,13000,0,1 1426 | 2000,0.0,2,7000,1,0 1427 | 0,0.0,1,3500,1,0 1428 | 2500,1.0,3,8500,1,0 1429 | 1000,0.0,1,8500,1,0 1430 | 500,1.0,5,7500,0,1 1431 | 1000,0.0,3,6000,1,0 1432 | 500,1.0,0,5000,0,1 1433 | 1000,0.0,2,6000,0,1 1434 | 2000,0.0,4,13000,0,1 1435 | 1500,1.0,5,11500,0,1 1436 | 0,0.0,2,9500,0,1 1437 | 0,0.0,4,9500,0,1 1438 | 2500,1.0,6,12000,0,1 1439 | 0,0.0,0,2500,1,0 1440 | 2000,0.0,1,13500,0,1 1441 | 2500,1.0,6,8000,0,1 1442 | 1000,0.0,5,11000,1,0 1443 | 1000,0.0,5,12500,0,1 1444 | 1000,0.0,3,5500,1,0 1445 | 0,1.0,3,5000,0,1 1446 | 1000,0.0,6,8500,0,1 1447 | 1500,1.0,3,6500,0,1 1448 | 1500,1.0,6,5000,0,1 1449 | 0,0.0,0,6000,0,1 1450 | 1000,0.0,0,5000,1,0 1451 | 1500,1.0,5,5000,0,1 1452 | 2000,0.0,4,4500,1,0 1453 | 0,0.0,2,7500,1,0 1454 | 0,0.0,2,9000,0,1 1455 | 2500,1.0,6,8500,0,1 1456 | 0,0.0,1,10500,0,1 1457 | 0,0.0,4,7500,0,1 1458 | 500,1.0,0,3000,0,1 1459 | 2000,0.0,0,4000,1,0 1460 | 0,1.0,3,5000,0,1 1461 | 500,1.0,4,8000,0,1 1462 | 0,0.0,4,6000,1,0 1463 | 0,0.0,0,13000,0,1 1464 | 1500,1.0,4,5500,0,1 1465 | 0,0.0,3,7000,1,0 1466 | 0,0.0,3,7500,1,0 1467 | 1500,1.0,5,6000,0,1 1468 | 0,0.0,0,8500,0,1 1469 | 1000,0.0,0,8000,0,1 1470 | 500,1.0,4,7500,0,1 1471 | 2500,1.0,5,8000,0,1 1472 | 1500,1.0,4,5000,0,1 1473 | 2500,1.0,5,13500,0,1 1474 | 1500,1.0,5,7500,0,1 1475 | 1500,1.0,5,7000,0,1 1476 | 0,0.0,2,8500,0,1 1477 | 2500,1.0,4,6500,0,1 1478 | 0,0.0,6,11500,0,1 1479 | 1000,0.0,4,4000,1,0 1480 | 1000,0.0,1,5000,1,0 1481 | 2000,0.0,5,14000,0,1 1482 | 0,0.0,0,11000,0,1 1483 | 500,1.0,4,10000,0,1 1484 | 0,0.0,1,9000,0,1 1485 | 3000,0.0,4,9000,1,0 1486 | 3500,1.0,0,3500,1,0 1487 | 1500,1.0,2,4000,0,1 1488 | 2000,0.0,5,7500,1,0 1489 | 0,1.0,6,3000,0,1 1490 | 1500,1.0,5,6500,1,0 1491 | 1000,0.0,6,6000,1,0 1492 | 1500,1.0,3,2000,0,1 1493 | 0,0.0,0,12500,0,1 1494 | 0,0.0,0,6000,0,1 1495 | 0,0.0,1,8500,0,1 1496 | 3000,0.0,1,9000,1,0 1497 | 0,0.0,1,6500,0,1 1498 | 2500,1.0,2,5500,1,0 1499 | 3000,0.0,1,10000,1,0 1500 | 1000,0.0,0,6000,0,1 1501 | 1000,0.0,1,10000,0,1 1502 | 1000,0.0,4,7000,0,1 1503 | 500,1.0,6,5000,0,1 1504 | 0,0.0,4,10000,0,1 1505 | 1000,0.0,3,9000,0,1 1506 | 1000,0.0,4,7000,1,0 1507 | 500,1.0,3,6000,0,1 1508 | 0,1.0,6,4500,0,1 1509 | 0,0.0,4,5000,1,0 1510 | 0,0.0,6,11500,0,1 1511 | 2000,0.0,2,17000,0,1 1512 | 0,0.0,3,6500,1,0 1513 | 500,1.0,6,5500,0,1 1514 | 0,0.0,4,7500,0,1 1515 | 0,0.0,3,10000,0,1 1516 | 1500,1.0,6,12500,0,1 1517 | 500,1.0,5,6500,0,1 1518 | 500,1.0,3,5000,0,1 1519 | 0,0.0,4,11000,0,1 1520 | 0,0.0,0,4000,0,1 1521 | 0,1.0,1,4500,0,1 1522 | 0,0.0,3,11000,0,1 1523 | 1500,1.0,5,10000,0,1 1524 | 2000,0.0,3,7000,1,0 1525 | 1000,0.0,3,10500,0,1 1526 | 0,1.0,1,5500,0,1 1527 | 0,0.0,5,9500,0,1 1528 | 1500,1.0,3,7500,0,1 1529 | 0,0.0,6,10000,0,1 1530 | 500,1.0,3,7500,0,1 1531 | 0,1.0,4,3000,0,1 1532 | 1500,1.0,0,3000,0,1 1533 | 0,0.0,5,4500,0,1 1534 | 0,1.0,2,4000,0,1 1535 | 2500,1.0,2,6500,0,1 1536 | 1500,1.0,5,5000,0,1 1537 | 1500,1.0,1,3500,1,0 1538 | 1000,0.0,5,6500,1,0 1539 | 1000,0.0,5,8000,1,0 1540 | 0,0.0,2,9000,0,1 1541 | 3500,1.0,0,5000,1,0 1542 | 1000,0.0,2,14000,0,1 1543 | 1000,0.0,0,8500,0,1 1544 | 2500,1.0,0,7000,0,1 1545 | 3500,1.0,4,4000,1,0 1546 | 1500,1.0,2,9500,0,1 1547 | 2500,1.0,3,10000,0,1 1548 | 0,0.0,5,5000,0,1 1549 | 1500,1.0,1,8000,0,1 1550 | 3500,1.0,3,12000,0,1 1551 | 1500,1.0,2,8000,0,1 1552 | 3500,1.0,2,3500,1,0 1553 | 2000,0.0,3,13000,0,1 1554 | 0,0.0,4,9500,0,1 1555 | 0,0.0,2,10500,0,1 1556 | 1000,0.0,4,8500,0,1 1557 | 1000,0.0,6,9500,1,0 1558 | 500,1.0,5,6500,0,1 1559 | 3500,1.0,5,5000,1,0 1560 | 2000,0.0,1,12500,0,1 1561 | 0,0.0,2,6000,0,1 1562 | 0,0.0,3,5500,1,0 1563 | 0,0.0,4,9000,0,1 1564 | 2000,0.0,1,9000,1,0 1565 | 1500,1.0,0,8000,0,1 1566 | 0,0.0,1,4000,1,0 1567 | 2000,0.0,4,13500,0,1 1568 | 2500,1.0,2,4000,1,0 1569 | 500,1.0,2,3000,0,1 1570 | 500,1.0,0,10000,0,1 1571 | 500,1.0,6,4500,0,1 1572 | 500,1.0,4,6500,0,1 1573 | 2500,1.0,2,7000,0,1 1574 | 0,0.0,2,10000,0,1 1575 | 0,1.0,4,5500,0,1 1576 | 0,0.0,1,8500,0,1 1577 | 2500,1.0,5,12500,1,0 1578 | 2000,0.0,3,7000,1,0 1579 | 2500,1.0,1,10000,0,1 1580 | 1000,0.0,4,8000,0,1 1581 | 3000,0.0,5,10000,1,0 1582 | 1500,1.0,6,4500,1,0 1583 | 1000,0.0,1,8500,0,1 1584 | 1500,1.0,2,8500,0,1 1585 | 1500,1.0,5,5500,0,1 1586 | 1000,0.0,5,7500,1,0 1587 | 3000,0.0,4,13000,1,0 1588 | 500,1.0,2,6500,0,1 1589 | 0,1.0,2,5000,0,1 1590 | 1000,0.0,2,10000,0,1 1591 | 0,0.0,5,13000,0,1 1592 | 1000,0.0,1,11500,0,1 1593 | 1000,0.0,3,7000,1,0 1594 | 0,0.0,0,5000,1,0 1595 | 0,0.0,3,7000,1,0 1596 | 2000,0.0,0,10000,1,0 1597 | 0,0.0,4,7000,0,1 1598 | 1500,1.0,3,4000,1,0 1599 | 2500,1.0,5,8000,0,1 1600 | 1000,0.0,0,6500,0,1 1601 | 0,0.0,2,5000,1,0 1602 | 0,1.0,4,5000,0,1 1603 | 1500,1.0,3,3500,0,1 1604 | 0,0.0,1,9000,0,1 1605 | 500,1.0,4,7000,0,1 1606 | 1000,0.0,6,10000,0,1 1607 | 2500,1.0,2,9000,0,1 1608 | 1500,1.0,2,5000,0,1 1609 | 2500,1.0,5,9000,0,1 1610 | 2500,1.0,2,7500,0,1 1611 | 2000,0.0,0,4500,1,0 1612 | 2000,0.0,3,7500,1,0 1613 | 0,0.0,4,9500,0,1 1614 | 0,0.0,3,7000,1,0 1615 | 0,0.0,6,5000,1,0 1616 | 1500,1.0,5,3500,0,1 1617 | 2000,0.0,3,7000,1,0 1618 | 2000,0.0,6,7500,1,0 1619 | 0,0.0,0,6000,0,1 1620 | 1000,0.0,0,8500,0,1 1621 | 1500,1.0,2,6500,0,1 1622 | 0,0.0,3,5000,0,1 1623 | 2000,0.0,5,10500,1,0 1624 | 500,1.0,0,5000,0,1 1625 | 4500,1.0,5,18500,0,1 1626 | 500,1.0,2,8000,0,1 1627 | 1000,0.0,4,6000,1,0 1628 | 2000,0.0,0,13500,0,1 1629 | 1000,0.0,0,10000,0,1 1630 | 2500,1.0,4,6500,0,1 1631 | 1000,0.0,4,7000,1,0 1632 | 1500,1.0,0,12500,0,1 1633 | 0,0.0,6,10000,0,1 1634 | 0,0.0,4,11500,0,1 1635 | 0,0.0,4,7500,0,1 1636 | 500,1.0,2,3000,0,1 1637 | 0,0.0,0,8000,0,1 1638 | 1500,1.0,4,5500,0,1 1639 | 0,0.0,2,11500,0,1 1640 | 2000,0.0,0,6000,1,0 1641 | 500,1.0,0,4000,0,1 1642 | 1500,1.0,6,8500,0,1 1643 | 3000,0.0,0,9500,1,0 1644 | 0,0.0,6,7000,0,1 1645 | 0,0.0,4,8000,0,1 1646 | 0,0.0,4,7500,0,1 1647 | 1500,1.0,3,10000,0,1 1648 | 0,0.0,2,9000,0,1 1649 | 0,0.0,3,14000,0,1 1650 | 1000,0.0,5,9500,0,1 1651 | 0,0.0,2,7000,1,0 1652 | 3500,1.0,1,5000,1,0 1653 | 1000,0.0,3,2000,1,0 1654 | 2000,0.0,5,4000,1,0 1655 | 1500,1.0,0,8000,0,1 1656 | 0,0.0,6,5500,1,0 1657 | 3500,1.0,5,3500,1,0 1658 | 1500,1.0,1,5500,0,1 1659 | 0,0.0,1,8000,0,1 1660 | 0,0.0,1,8000,0,1 1661 | 1500,1.0,2,8500,0,1 1662 | 0,0.0,4,9500,0,1 1663 | 2000,0.0,4,5000,1,0 1664 | 1500,1.0,1,15000,0,1 1665 | 0,1.0,4,4000,0,1 1666 | 2000,0.0,5,10000,1,0 1667 | 1500,1.0,0,9000,0,1 1668 | 0,0.0,4,7000,0,1 1669 | 2000,0.0,2,7500,1,0 1670 | 0,0.0,1,7500,1,0 1671 | 1500,1.0,6,5000,0,1 1672 | 2500,1.0,3,5500,1,0 1673 | 0,0.0,0,8000,0,1 1674 | 1000,0.0,3,2000,1,0 1675 | 1000,0.0,1,4000,1,0 1676 | 0,0.0,5,10500,0,1 1677 | 3500,1.0,1,12500,0,1 1678 | 1000,0.0,3,12000,0,1 1679 | 2500,1.0,1,5500,1,0 1680 | 0,0.0,1,8500,0,1 1681 | 1000,0.0,1,11000,0,1 1682 | 1000,0.0,4,8000,0,1 1683 | 0,0.0,5,8500,0,1 1684 | 2000,0.0,4,10000,1,0 1685 | 3000,0.0,2,10500,1,0 1686 | 2500,1.0,3,5000,1,0 1687 | 1500,1.0,0,4500,0,1 1688 | 3500,1.0,3,5500,1,0 1689 | 2500,1.0,3,8000,1,0 1690 | 1500,1.0,2,4000,0,1 1691 | 2500,1.0,5,9500,0,1 1692 | 2500,1.0,4,5000,1,0 1693 | 0,0.0,0,2500,1,0 1694 | 0,0.0,0,6500,0,1 1695 | 1500,1.0,2,6500,0,1 1696 | 500,1.0,1,3500,0,1 1697 | 0,0.0,3,10000,0,1 1698 | 1500,1.0,3,6500,0,1 1699 | 1500,1.0,0,5500,0,1 1700 | 2000,0.0,3,9000,1,0 1701 | 500,1.0,6,8500,0,1 1702 | 1500,1.0,0,9500,0,1 1703 | 0,0.0,4,4000,1,0 1704 | 3500,1.0,4,3000,1,0 1705 | 1000,0.0,0,8500,1,0 1706 | 1000,0.0,2,12500,1,0 1707 | 500,1.0,3,9500,0,1 1708 | 500,1.0,5,11500,0,1 1709 | 1000,0.0,5,10500,0,1 1710 | 1000,0.0,0,7500,0,1 1711 | 500,1.0,2,9000,0,1 1712 | 1000,0.0,5,7000,1,0 1713 | 1500,1.0,5,7000,1,0 1714 | 1500,1.0,4,16000,0,1 1715 | 0,0.0,3,12000,0,1 1716 | 2500,1.0,3,8500,0,1 1717 | 1500,1.0,4,4000,1,0 1718 | 2000,0.0,6,7500,1,0 1719 | 0,0.0,1,9500,0,1 1720 | 0,0.0,0,7000,0,1 1721 | 0,0.0,2,6000,0,1 1722 | 2000,0.0,2,3000,1,0 1723 | 1000,0.0,6,10500,1,0 1724 | 1500,1.0,5,4500,0,1 1725 | 0,0.0,5,7000,0,1 1726 | 1000,0.0,1,9000,0,1 1727 | 1000,0.0,2,8500,0,1 1728 | 2000,0.0,2,7500,1,0 1729 | 500,1.0,3,6500,0,1 1730 | 2000,0.0,0,5500,1,0 1731 | 1000,0.0,3,7000,0,1 1732 | 1000,0.0,4,7000,1,0 1733 | 1500,1.0,5,8000,0,1 1734 | 3500,1.0,3,5000,1,0 1735 | 1000,0.0,1,9000,0,1 1736 | 2500,1.0,0,5000,1,0 1737 | 3500,1.0,1,3000,1,0 1738 | 500,1.0,0,4000,0,1 1739 | 1500,1.0,0,7000,0,1 1740 | 0,0.0,0,15000,0,1 1741 | 500,1.0,2,5000,0,1 1742 | 500,1.0,5,6000,0,1 1743 | 500,1.0,3,8000,0,1 1744 | 500,1.0,2,9000,0,1 1745 | 1500,1.0,5,7000,1,0 1746 | 2500,1.0,2,7000,0,1 1747 | 500,1.0,3,5000,0,1 1748 | 0,0.0,1,10500,0,1 1749 | 0,0.0,5,5500,0,1 1750 | 1000,0.0,0,8000,1,0 1751 | 1000,0.0,6,7000,0,1 1752 | 1000,0.0,6,11500,0,1 1753 | 2000,0.0,1,4000,1,0 1754 | 0,0.0,6,6000,1,0 1755 | 1500,1.0,1,4500,0,1 1756 | 0,0.0,5,4500,0,1 1757 | 0,0.0,4,10000,0,1 1758 | 0,0.0,5,8000,0,1 1759 | 0,0.0,2,11000,0,1 1760 | 1500,1.0,0,1500,0,1 1761 | 2500,1.0,3,8500,0,1 1762 | 500,1.0,1,8500,0,1 1763 | 0,0.0,4,5500,0,1 1764 | 3500,1.0,4,3000,1,0 1765 | 2000,0.0,1,11000,1,0 1766 | 500,1.0,6,2500,0,1 1767 | 2000,0.0,5,7500,1,0 1768 | 2500,1.0,5,5500,1,0 1769 | 1500,1.0,5,9000,0,1 1770 | 0,0.0,1,5000,1,0 1771 | 2500,1.0,5,6500,1,0 1772 | 0,0.0,6,11000,0,1 1773 | 500,1.0,4,7000,0,1 1774 | 1000,0.0,2,13500,0,1 1775 | 3000,0.0,5,14500,1,0 1776 | 1500,1.0,4,2000,1,0 1777 | 0,0.0,4,9500,0,1 1778 | 500,1.0,4,6000,0,1 1779 | 0,0.0,2,5500,0,1 1780 | 1000,0.0,2,12000,0,1 1781 | 2000,0.0,6,7500,1,0 1782 | 500,1.0,5,7000,0,1 1783 | 0,0.0,2,11000,0,1 1784 | 0,1.0,3,5000,0,1 1785 | 500,1.0,3,5500,0,1 1786 | 1000,0.0,6,12000,1,0 1787 | 1500,1.0,3,10000,0,1 1788 | 0,0.0,6,6000,1,0 1789 | 0,0.0,3,4000,0,1 1790 | 3000,0.0,0,9500,1,0 1791 | 2500,1.0,0,4000,1,0 1792 | 3000,0.0,5,9000,1,0 1793 | 0,0.0,0,9000,0,1 1794 | 0,0.0,1,14500,0,1 1795 | 0,0.0,0,5000,1,0 1796 | 0,0.0,5,6000,0,1 1797 | 1500,1.0,1,7000,1,0 1798 | 1500,1.0,4,4500,1,0 1799 | 1500,1.0,0,5000,0,1 1800 | 1000,0.0,6,8500,1,0 1801 | 0,1.0,2,4500,0,1 1802 | 2000,0.0,5,10000,1,0 1803 | 2000,0.0,3,9500,1,0 1804 | 500,1.0,1,9500,0,1 1805 | 1000,0.0,5,9000,1,0 1806 | 2500,1.0,4,8000,0,1 1807 | 0,0.0,0,14000,0,1 1808 | 0,1.0,3,5500,0,1 1809 | 1500,1.0,2,6000,0,1 1810 | 3500,1.0,4,9000,1,0 1811 | 1500,1.0,5,6000,0,1 1812 | 0,0.0,2,5500,0,1 1813 | 3500,1.0,0,5500,1,0 1814 | 1000,0.0,1,12000,1,0 1815 | 500,1.0,4,6500,0,1 1816 | 0,0.0,0,13500,0,1 1817 | 0,0.0,0,7000,1,0 1818 | 1000,0.0,1,9500,0,1 1819 | 1500,1.0,1,3500,1,0 1820 | 2500,1.0,0,3500,1,0 1821 | 2000,0.0,1,11500,1,0 1822 | 2500,1.0,4,6500,0,1 1823 | 0,1.0,6,4000,0,1 1824 | 2000,0.0,1,8000,1,0 1825 | 500,1.0,4,8500,0,1 1826 | 3000,0.0,0,11500,1,0 1827 | 1000,0.0,3,8500,1,0 1828 | 1000,0.0,0,12000,0,1 1829 | 1000,0.0,6,6000,0,1 1830 | 0,1.0,5,5500,0,1 1831 | 2500,1.0,0,7500,1,0 1832 | 0,0.0,0,9500,0,1 1833 | 500,1.0,4,7000,0,1 1834 | 2500,1.0,3,7500,0,1 1835 | 1500,1.0,1,4500,0,1 1836 | 0,0.0,2,2000,1,0 1837 | 0,1.0,6,4000,0,1 1838 | 1500,1.0,4,8000,0,1 1839 | 0,0.0,0,6000,0,1 1840 | 0,1.0,5,3000,0,1 1841 | 500,1.0,0,5500,0,1 1842 | 2500,1.0,2,6000,0,1 1843 | 1000,0.0,1,7000,1,0 1844 | 500,1.0,3,11500,0,1 1845 | 1500,1.0,5,8000,0,1 1846 | 1500,1.0,0,5500,0,1 1847 | 3500,1.0,2,4000,1,0 1848 | 0,1.0,5,5000,0,1 1849 | 3500,1.0,5,7000,1,0 1850 | 2000,0.0,0,9000,1,0 1851 | 1500,1.0,6,6500,0,1 1852 | 0,0.0,2,10500,0,1 1853 | 1500,1.0,1,9500,0,1 1854 | 1000,0.0,2,10500,0,1 1855 | 3500,1.0,0,19000,0,1 1856 | 3500,1.0,4,12500,0,1 1857 | 1500,1.0,5,4000,1,0 1858 | 0,0.0,1,7000,0,1 1859 | 2000,0.0,2,13500,0,1 1860 | 0,0.0,4,8000,0,1 1861 | 2500,1.0,3,6500,0,1 1862 | 0,0.0,3,12500,0,1 1863 | 1500,1.0,6,6500,0,1 1864 | 0,0.0,2,9500,0,1 1865 | 1000,0.0,1,5500,1,0 1866 | 1500,1.0,0,5500,0,1 1867 | 0,0.0,3,9000,0,1 1868 | 0,0.0,4,9500,0,1 1869 | 500,1.0,6,8000,0,1 1870 | 500,1.0,4,3000,0,1 1871 | 1000,0.0,4,12000,0,1 1872 | 1000,0.0,3,11500,0,1 1873 | 0,0.0,2,8500,0,1 1874 | 2500,1.0,5,2000,1,0 1875 | 1500,1.0,3,6500,0,1 1876 | 0,0.0,1,6000,0,1 1877 | 0,0.0,1,8500,1,0 1878 | 0,0.0,2,7500,1,0 1879 | 0,0.0,4,9000,0,1 1880 | 0,1.0,3,5000,0,1 1881 | 500,1.0,2,5500,0,1 1882 | 1500,1.0,6,8000,0,1 1883 | 1500,1.0,5,3500,1,0 1884 | 500,1.0,0,4500,0,1 1885 | 1500,1.0,1,10500,0,1 1886 | 2000,0.0,0,13000,0,1 1887 | 3000,0.0,0,11000,1,0 1888 | 2000,0.0,5,8000,1,0 1889 | 500,1.0,3,5500,0,1 1890 | 2000,0.0,5,12000,0,1 1891 | 1500,1.0,2,5000,0,1 1892 | 2500,1.0,0,6500,0,1 1893 | 0,0.0,0,5000,0,1 1894 | 2000,0.0,4,7500,1,0 1895 | 1000,0.0,4,10500,0,1 1896 | 1500,1.0,0,4500,0,1 1897 | 2500,1.0,3,6500,0,1 1898 | 0,0.0,6,8500,1,0 1899 | 2500,1.0,0,3000,1,0 1900 | 1500,1.0,6,7000,0,1 1901 | 0,0.0,1,2000,0,1 1902 | 1000,0.0,2,8500,0,1 1903 | 1500,1.0,3,8500,0,1 1904 | 1500,1.0,6,7000,0,1 1905 | 1000,0.0,6,7000,1,0 1906 | 1500,1.0,5,3000,1,0 1907 | 1000,0.0,4,6000,1,0 1908 | 500,1.0,6,6000,0,1 1909 | 500,1.0,5,4000,0,1 1910 | 0,1.0,6,5000,0,1 1911 | 2500,1.0,2,8000,1,0 1912 | 3500,1.0,1,12500,0,1 1913 | 2000,0.0,3,8500,1,0 1914 | 500,1.0,3,9000,0,1 1915 | 0,1.0,6,4500,0,1 1916 | 2000,0.0,6,7000,1,0 1917 | 0,0.0,3,6000,0,1 1918 | 0,0.0,4,11500,0,1 1919 | 0,0.0,5,8000,0,1 1920 | 0,0.0,2,7000,0,1 1921 | 0,0.0,1,8500,0,1 1922 | 1500,1.0,5,10500,0,1 1923 | 0,1.0,0,4500,0,1 1924 | 1500,1.0,0,5000,1,0 1925 | 2500,1.0,0,5000,1,0 1926 | 2000,0.0,6,10000,1,0 1927 | 1000,0.0,6,7500,1,0 1928 | 1500,1.0,2,8500,0,1 1929 | 2000,0.0,6,5000,1,0 1930 | 500,1.0,6,8000,0,1 1931 | 0,0.0,6,10000,0,1 1932 | 500,1.0,3,8000,0,1 1933 | 2500,1.0,1,6500,0,1 1934 | 1500,1.0,5,9000,0,1 1935 | 0,1.0,4,1000,0,1 1936 | 3500,1.0,6,5500,1,0 1937 | 1000,0.0,5,9000,0,1 1938 | 1500,1.0,3,10000,0,1 1939 | 1000,0.0,4,10500,0,1 1940 | 1000,0.0,3,5000,1,0 1941 | 0,0.0,0,7000,0,1 1942 | 1500,1.0,3,7500,1,0 1943 | 1500,1.0,0,5000,0,1 1944 | 0,0.0,0,10500,0,1 1945 | 0,0.0,1,12000,0,1 1946 | 500,1.0,1,3000,0,1 1947 | 1500,1.0,5,4500,0,1 1948 | 500,1.0,4,6500,0,1 1949 | 1000,0.0,4,10000,0,1 1950 | 0,0.0,2,5500,0,1 1951 | 1500,1.0,2,6500,0,1 1952 | 0,0.0,4,11500,0,1 1953 | 1500,1.0,1,7000,0,1 1954 | 1000,0.0,0,8500,0,1 1955 | 1000,0.0,6,8000,1,0 1956 | 1000,0.0,2,7000,1,0 1957 | 1000,0.0,1,7500,1,0 1958 | 2500,1.0,0,1000,1,0 1959 | 1000,0.0,6,12000,1,0 1960 | 1000,0.0,5,6000,1,0 1961 | 1000,0.0,2,6000,1,0 1962 | 2500,1.0,1,6000,0,1 1963 | 0,0.0,6,9000,0,1 1964 | 0,0.0,6,7000,0,1 1965 | 1500,1.0,4,7000,1,0 1966 | 2000,0.0,1,10000,1,0 1967 | 2000,0.0,5,6000,1,0 1968 | 1500,1.0,2,5000,0,1 1969 | 500,1.0,0,6500,0,1 1970 | 500,1.0,2,7500,0,1 1971 | 3500,1.0,6,5000,1,0 1972 | 2000,0.0,6,13500,0,1 1973 | 0,0.0,3,6000,1,0 1974 | 1500,1.0,5,12000,0,1 1975 | 1000,0.0,4,5000,1,0 1976 | 0,0.0,3,6000,1,0 1977 | 0,0.0,2,3000,0,1 1978 | 0,0.0,2,12000,0,1 1979 | 0,1.0,6,5000,0,1 1980 | 1000,0.0,1,8500,0,1 1981 | 500,1.0,6,5500,0,1 1982 | 3000,0.0,1,9000,1,0 1983 | 2500,1.0,3,7000,0,1 1984 | 2500,1.0,5,10500,0,1 1985 | 500,1.0,1,6500,0,1 1986 | 1000,0.0,1,7000,1,0 1987 | 0,0.0,3,9000,0,1 1988 | 1500,1.0,1,6500,0,1 1989 | 500,1.0,3,7000,0,1 1990 | 1000,0.0,0,9000,1,0 1991 | 0,0.0,3,8500,0,1 1992 | 0,0.0,1,6000,1,0 1993 | 1000,0.0,5,10000,0,1 1994 | 2000,0.0,6,9000,1,0 1995 | 3500,1.0,4,3000,1,0 1996 | 1500,1.0,4,4000,0,1 1997 | 0,0.0,6,5000,0,1 1998 | 2500,1.0,3,3500,1,0 1999 | 3500,1.0,5,8000,1,0 2000 | 3000,0.0,4,10000,1,0 2001 | 1500,1.0,5,3000,1,0 2002 | -------------------------------------------------------------------------------- /answers/causal_knock2_ans.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "nbformat": 4, 3 | "nbformat_minor": 0, 4 | "metadata": { 5 | "colab": { 6 | "provenance": [] 7 | }, 8 | "kernelspec": { 9 | "name": "python3", 10 | "display_name": "Python 3" 11 | }, 12 | "language_info": { 13 | "name": "python" 14 | } 15 | }, 16 | "cells": [ 17 | { 18 | "cell_type": "code", 19 | "execution_count": null, 20 | "metadata": { 21 | "id": "puiH-rRiu2Vi" 22 | }, 23 | "outputs": [], 24 | "source": [ 25 | "# ノック1\n", 26 | "import pandas as pd\n", 27 | "\n", 28 | "df_rct = pd.read_csv('https://raw.githubusercontent.com/s1ok69oo/causal_inference_100knock/main/data/causal_knock2_rct.csv')\n", 29 | "df_reg = pd.read_csv('https://raw.githubusercontent.com/s1ok69oo/causal_inference_100knock/main/data/causal_knock2_reg.csv')" 30 | ] 31 | }, 32 | { 33 | "cell_type": "code", 34 | "source": [ 35 | "# ノック2\n", 36 | "df_rct_t1 = df_rct[df_rct['t']==1]\n", 37 | "df_rct_t0 = df_rct[df_rct['t']==0]\n", 38 | "\n", 39 | "df_rct_t1['y'].mean() - df_rct_t0['y'].mean()" 40 | ], 41 | "metadata": { 42 | "colab": { 43 | "base_uri": "https://localhost:8080/" 44 | }, 45 | "id": "RyfzEABBvL4-", 46 | "outputId": "a5ec6679-b113-40ac-d3f1-89b946b8d629" 47 | }, 48 | "execution_count": null, 49 | "outputs": [ 50 | { 51 | "output_type": "execute_result", 52 | "data": { 53 | "text/plain": [ 54 | "901.4170602945262" 55 | ] 56 | }, 57 | "metadata": {}, 58 | "execution_count": 4 59 | } 60 | ] 61 | }, 62 | { 63 | "cell_type": "code", 64 | "source": [ 65 | "# ノック3\n", 66 | "df = df_reg.drop('x3', axis=1)" 67 | ], 68 | "metadata": { 69 | "id": "RyfuqJ-evhRy" 70 | }, 71 | "execution_count": null, 72 | "outputs": [] 73 | }, 74 | { 75 | "cell_type": "code", 76 | "source": [ 77 | "# 参考\n", 78 | "import statsmodels.api as sm\n", 79 | "\n", 80 | "# 共変量\n", 81 | "X = df_reg[['t', 'x0', 'x1', 'x2', 'x3']]\n", 82 | "X = sm.add_constant(X)\n", 83 | "\n", 84 | "# 被説明変数\n", 85 | "y = df_reg['y']\n", 86 | "\n", 87 | "# 結果を出力\n", 88 | "res = sm.OLS(y, X).fit()\n", 89 | "print(res.summary())" 90 | ], 91 | "metadata": { 92 | "colab": { 93 | "base_uri": "https://localhost:8080/" 94 | }, 95 | "id": "GZojkcCzZijI", 96 | "outputId": "e2eedcd2-3b08-46fb-d486-bbe1642b8752" 97 | }, 98 | "execution_count": null, 99 | "outputs": [ 100 | { 101 | "output_type": "stream", 102 | "name": "stdout", 103 | "text": [ 104 | " OLS Regression Results \n", 105 | "==============================================================================\n", 106 | "Dep. Variable: y R-squared: 0.429\n", 107 | "Model: OLS Adj. R-squared: 0.428\n", 108 | "Method: Least Squares F-statistic: 375.1\n", 109 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 5.04e-241\n", 110 | "Time: 23:01:16 Log-Likelihood: -16118.\n", 111 | "No. Observations: 2000 AIC: 3.225e+04\n", 112 | "Df Residuals: 1995 BIC: 3.227e+04\n", 113 | "Df Model: 4 \n", 114 | "Covariance Type: nonrobust \n", 115 | "==============================================================================\n", 116 | " coef std err t P>|t| [0.025 0.975]\n", 117 | "------------------------------------------------------------------------------\n", 118 | "const -91.0837 43.153 -2.111 0.035 -175.714 -6.453\n", 119 | "t 1201.7260 38.252 31.416 0.000 1126.708 1276.744\n", 120 | "x0 -12.7918 8.639 -1.481 0.139 -29.734 4.151\n", 121 | "x1 0.1261 0.007 18.747 0.000 0.113 0.139\n", 122 | "x2 556.3839 25.262 22.025 0.000 506.842 605.926\n", 123 | "x3 -647.4676 32.461 -19.946 0.000 -711.129 -583.807\n", 124 | "==============================================================================\n", 125 | "Omnibus: 352.285 Durbin-Watson: 1.950\n", 126 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 80.719\n", 127 | "Skew: 0.123 Prob(JB): 2.97e-18\n", 128 | "Kurtosis: 2.047 Cond. No. 4.33e+18\n", 129 | "==============================================================================\n", 130 | "\n", 131 | "Notes:\n", 132 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", 133 | "[2] The smallest eigenvalue is 6.78e-27. This might indicate that there are\n", 134 | "strong multicollinearity problems or that the design matrix is singular.\n" 135 | ] 136 | } 137 | ] 138 | }, 139 | { 140 | "cell_type": "code", 141 | "source": [ 142 | "# ノック4\n", 143 | "import matplotlib.pyplot as plt\n", 144 | "import networkx as nx\n", 145 | "%matplotlib inline\n", 146 | "\n", 147 | "G = nx.DiGraph()\n", 148 | "G.add_edges_from([('x0', 'x1'), ('x1', 't'), ('x1', 'y'), ('t', 'x2'), ('t', 'y'), ('x2', 'y')])\n", 149 | "\n", 150 | "nx.draw_networkx(G, node_color='#ABE1FA')\n", 151 | "plt.show()" 152 | ], 153 | "metadata": { 154 | "colab": { 155 | "base_uri": "https://localhost:8080/", 156 | "height": 406 157 | }, 158 | "id": "_jc-oFWVy_a_", 159 | "outputId": "31de0d43-f4e8-4415-dda8-f8626e113c5f" 160 | }, 161 | "execution_count": null, 162 | "outputs": [ 163 | { 164 | "output_type": "display_data", 165 | "data": { 166 | "text/plain": [ 167 | "
" 168 | ], 169 | "image/png": "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jIwMqaO4LJYBImqSyspKqFQqPPPMM/jzn/+M9evXIzAwUOpY5AQGDBiA/v3781GBhFgGiKhRp0+fxogRI7B69WosXboU//73v6FQKKSORU5EEASsWrUKJSUlUkdxSSwDRNSg9evXIzo6GkajEbt370ZcXJzUkcgJqVQqWCwWLFmyROooLollgIhuymq14rXXXsO0adMwevRo7NmzB3379pU6Fjmp0NBQTJ48GTqdTuooLollgIhuUFZWhjlz5uCFF17Aiy++iJUrV8Lf31/qWOTkBEHArl27cPLkSamjuByWASKq4/jx4xg2bBg2b96MVatW4eWXX4Zczl8V1PJmzJgBPz8/3h2QAP8PJyKbFStWYOjQoZDL5di7dy/uu+8+qSORC/H09ERCQgKSk5NhtVqljuNSWAaICBaLBX//+98RGxuLyZMn46effkLPnj2ljkUuSBAEnD9/Hlu2bJE6ikthGSBycSUlJZg+fTr+9a9/4d///jfS0tLg4+MjdSxyUSNGjED37t255kArYxkgcmGHDh1CdHQ09uzZg/Xr1+PZZ5+FTCaTOha5MJlMBo1Gg/T0dFRWVkodx2WwDBC5qNTUVIwYMQK+vr7IzMzEpEmTpI5EBACYP38+Kisr8e2330odxWWwDBC5GLPZjGeeeQaJiYmIjY3Fjh070KVLF6ljEdl07twZY8eO5aOCVsQyQORCCgsLMXnyZLz33nt47733kJycjLZt20odi+gGgiBg8+bNuHDhgtRRXALLAJGLyMrKQnR0NA4fPoxNmzbhiSee4PgAsltxcXHw9PTE4sWLpY7iElgGiFzAN998g1GjRiE0NBT79u3D2LFjpY5E1CAfHx/Mnj0bOp0OoihKHcfpsQwQObHa2losXLgQCxYswPz587FlyxZERkZKHYuoSQRBwPHjx7F3716pozg9lgEiJ5GVlYXp06ejsLAQAJCbm4t77rkHn3/+OT777DMsWrQInp6eEqckarp77rkHERERHEjYClgGiJzEc889h7Vr1yI+Ph7btm1DVFQUsrOzsWXLFvzxj3+UOh7RLVMoFEhKSkJqaipqamqkjuPUWAaI7IzZKuJKrYiiGiuu1IowWxt/Xrp//358//33AIAtW7Zg7Nix6NatG7KysjBixIiWjkzUYjQaDYqLi7F27Vqpozg1pdQBiAgoM4k4U25FrtGKSvON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\n" 170 | }, 171 | "metadata": {} 172 | } 173 | ] 174 | }, 175 | { 176 | "cell_type": "code", 177 | "source": [ 178 | "# ノック5\n", 179 | "import statsmodels.api as sm\n", 180 | "\n", 181 | "# 共変量\n", 182 | "X = df[['t', 'x0', 'x1', 'x2']]\n", 183 | "X = sm.add_constant(X)\n", 184 | "\n", 185 | "# 被説明変数\n", 186 | "y = df['y']\n", 187 | "\n", 188 | "# 結果を出力\n", 189 | "res = sm.OLS(y, X).fit()\n", 190 | "print(res.summary())" 191 | ], 192 | "metadata": { 193 | "colab": { 194 | "base_uri": "https://localhost:8080/" 195 | }, 196 | "id": "jpYf-I3Jzm5m", 197 | "outputId": "9f37054e-b66d-423a-e6a7-5b8c0697f12a" 198 | }, 199 | "execution_count": null, 200 | "outputs": [ 201 | { 202 | "output_type": "stream", 203 | "name": "stdout", 204 | "text": [ 205 | " OLS Regression Results \n", 206 | "==============================================================================\n", 207 | "Dep. Variable: y R-squared: 0.429\n", 208 | "Model: OLS Adj. R-squared: 0.428\n", 209 | "Method: Least Squares F-statistic: 375.1\n", 210 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 5.04e-241\n", 211 | "Time: 11:27:37 Log-Likelihood: -16118.\n", 212 | "No. Observations: 2000 AIC: 3.225e+04\n", 213 | "Df Residuals: 1995 BIC: 3.227e+04\n", 214 | "Df Model: 4 \n", 215 | "Covariance Type: nonrobust \n", 216 | "==============================================================================\n", 217 | " coef std err t P>|t| [0.025 0.975]\n", 218 | "------------------------------------------------------------------------------\n", 219 | "const -738.5513 72.067 -10.248 0.000 -879.886 -597.216\n", 220 | "t 1201.7260 38.252 31.416 0.000 1126.708 1276.744\n", 221 | "x0 -12.7918 8.639 -1.481 0.139 -29.734 4.151\n", 222 | "x1 0.1261 0.007 18.747 0.000 0.113 0.139\n", 223 | "x2 1203.8516 39.007 30.863 0.000 1127.353 1280.350\n", 224 | "==============================================================================\n", 225 | "Omnibus: 352.285 Durbin-Watson: 1.950\n", 226 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 80.719\n", 227 | "Skew: 0.123 Prob(JB): 2.97e-18\n", 228 | "Kurtosis: 2.047 Cond. No. 3.68e+04\n", 229 | "==============================================================================\n", 230 | "\n", 231 | "Notes:\n", 232 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", 233 | "[2] The condition number is large, 3.68e+04. This might indicate that there are\n", 234 | "strong multicollinearity or other numerical problems.\n" 235 | ] 236 | } 237 | ] 238 | }, 239 | { 240 | "cell_type": "code", 241 | "source": [ 242 | "# ノック6\n", 243 | "import statsmodels.api as sm\n", 244 | "\n", 245 | "# 共変量\n", 246 | "X = df[['t', 'x1', 'x2']]\n", 247 | "X = sm.add_constant(X)\n", 248 | "\n", 249 | "# 被説明変数\n", 250 | "y = df['y']\n", 251 | "\n", 252 | "# 結果を出力\n", 253 | "res = sm.OLS(y, X).fit()\n", 254 | "print(res.summary())" 255 | ], 256 | "metadata": { 257 | "colab": { 258 | "base_uri": "https://localhost:8080/" 259 | }, 260 | "id": "zd7wdWKK4Tan", 261 | "outputId": "73ff217b-ef03-4b00-ef18-cef7bf307865" 262 | }, 263 | "execution_count": null, 264 | "outputs": [ 265 | { 266 | "output_type": "stream", 267 | "name": "stdout", 268 | "text": [ 269 | " OLS Regression Results \n", 270 | "==============================================================================\n", 271 | "Dep. Variable: y R-squared: 0.429\n", 272 | "Model: OLS Adj. R-squared: 0.428\n", 273 | "Method: Least Squares F-statistic: 499.1\n", 274 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 6.20e-242\n", 275 | "Time: 11:27:38 Log-Likelihood: -16119.\n", 276 | "No. Observations: 2000 AIC: 3.225e+04\n", 277 | "Df Residuals: 1996 BIC: 3.227e+04\n", 278 | "Df Model: 3 \n", 279 | "Covariance Type: nonrobust \n", 280 | "==============================================================================\n", 281 | " coef std err t P>|t| [0.025 0.975]\n", 282 | "------------------------------------------------------------------------------\n", 283 | "const -775.9107 67.526 -11.490 0.000 -908.340 -643.481\n", 284 | "t 1201.3361 38.263 31.397 0.000 1126.297 1276.375\n", 285 | "x1 0.1260 0.007 18.729 0.000 0.113 0.139\n", 286 | "x2 1204.2460 39.018 30.864 0.000 1127.726 1280.766\n", 287 | "==============================================================================\n", 288 | "Omnibus: 357.465 Durbin-Watson: 1.946\n", 289 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 81.281\n", 290 | "Skew: 0.125 Prob(JB): 2.24e-18\n", 291 | "Kurtosis: 2.044 Cond. No. 3.52e+04\n", 292 | "==============================================================================\n", 293 | "\n", 294 | "Notes:\n", 295 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", 296 | "[2] The condition number is large, 3.52e+04. This might indicate that there are\n", 297 | "strong multicollinearity or other numerical problems.\n" 298 | ] 299 | } 300 | ] 301 | }, 302 | { 303 | "cell_type": "code", 304 | "source": [ 305 | "# ノック7\n", 306 | "import statsmodels.api as sm\n", 307 | "\n", 308 | "# 共変量\n", 309 | "X = df[['t', 'x1']]\n", 310 | "X = sm.add_constant(X)\n", 311 | "\n", 312 | "# 被説明変数\n", 313 | "y = df['y']\n", 314 | "\n", 315 | "# 結果を出力\n", 316 | "res = sm.OLS(y, X).fit()\n", 317 | "print(res.summary())" 318 | ], 319 | "metadata": { 320 | "colab": { 321 | "base_uri": "https://localhost:8080/" 322 | }, 323 | "id": "wzioxI6A4G43", 324 | "outputId": "89d86ee1-a9d4-4763-ff4e-1cc6ba40493e" 325 | }, 326 | "execution_count": null, 327 | "outputs": [ 328 | { 329 | "output_type": "stream", 330 | "name": "stdout", 331 | "text": [ 332 | " OLS Regression Results \n", 333 | "==============================================================================\n", 334 | "Dep. Variable: y R-squared: 0.156\n", 335 | "Model: OLS Adj. R-squared: 0.155\n", 336 | "Method: Least Squares F-statistic: 184.4\n", 337 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 3.18e-74\n", 338 | "Time: 11:27:37 Log-Likelihood: -16509.\n", 339 | "No. Observations: 2000 AIC: 3.302e+04\n", 340 | "Df Residuals: 1997 BIC: 3.304e+04\n", 341 | "Df Model: 2 \n", 342 | "Covariance Type: nonrobust \n", 343 | "==============================================================================\n", 344 | " coef std err t P>|t| [0.025 0.975]\n", 345 | "------------------------------------------------------------------------------\n", 346 | "const 314.2865 69.931 4.494 0.000 177.140 451.433\n", 347 | "t 851.8932 44.412 19.182 0.000 764.795 938.991\n", 348 | "x1 0.0562 0.008 7.302 0.000 0.041 0.071\n", 349 | "==============================================================================\n", 350 | "Omnibus: 123.422 Durbin-Watson: 1.915\n", 351 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 124.751\n", 352 | "Skew: 0.568 Prob(JB): 8.14e-28\n", 353 | "Kurtosis: 2.544 Cond. No. 2.89e+04\n", 354 | "==============================================================================\n", 355 | "\n", 356 | "Notes:\n", 357 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", 358 | "[2] The condition number is large, 2.89e+04. This might indicate that there are\n", 359 | "strong multicollinearity or other numerical problems.\n" 360 | ] 361 | } 362 | ] 363 | }, 364 | { 365 | "cell_type": "code", 366 | "source": [ 367 | "# ノック8\n", 368 | "import statsmodels.api as sm\n", 369 | "\n", 370 | "# 共変量\n", 371 | "X = df[['t']]\n", 372 | "X = sm.add_constant(X)\n", 373 | "\n", 374 | "# 被説明変数\n", 375 | "y = df['y']\n", 376 | "\n", 377 | "# 結果を出力\n", 378 | "res = sm.OLS(y, X).fit()\n", 379 | "print(res.summary())" 380 | ], 381 | "metadata": { 382 | "colab": { 383 | "base_uri": "https://localhost:8080/" 384 | }, 385 | "id": "sl9RLO5B4Xxg", 386 | "outputId": "6862813b-c96c-4af9-e5c9-7dfec2490dd7" 387 | }, 388 | "execution_count": null, 389 | "outputs": [ 390 | { 391 | "output_type": "stream", 392 | "name": "stdout", 393 | "text": [ 394 | " OLS Regression Results \n", 395 | "==============================================================================\n", 396 | "Dep. Variable: y R-squared: 0.133\n", 397 | "Model: OLS Adj. R-squared: 0.133\n", 398 | "Method: Least Squares F-statistic: 307.5\n", 399 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 3.86e-64\n", 400 | "Time: 11:28:26 Log-Likelihood: -16536.\n", 401 | "No. Observations: 2000 AIC: 3.308e+04\n", 402 | "Df Residuals: 1998 BIC: 3.309e+04\n", 403 | "Df Model: 1 \n", 404 | "Covariance Type: nonrobust \n", 405 | "==============================================================================\n", 406 | " coef std err t P>|t| [0.025 0.975]\n", 407 | "------------------------------------------------------------------------------\n", 408 | "const 782.0163 28.431 27.506 0.000 726.260 837.773\n", 409 | "t 743.5676 42.405 17.535 0.000 660.404 826.731\n", 410 | "==============================================================================\n", 411 | "Omnibus: 117.997 Durbin-Watson: 1.930\n", 412 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 123.052\n", 413 | "Skew: 0.571 Prob(JB): 1.90e-27\n", 414 | "Kurtosis: 2.585 Cond. No. 2.52\n", 415 | "==============================================================================\n", 416 | "\n", 417 | "Notes:\n", 418 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n" 419 | ] 420 | } 421 | ] 422 | }, 423 | { 424 | "cell_type": "code", 425 | "source": [ 426 | "# ノック9\n", 427 | "import statsmodels.api as sm\n", 428 | "\n", 429 | "# 共変量\n", 430 | "_df = df.copy()\n", 431 | "_df['t*x1'] = _df['t'] * _df['x1']\n", 432 | "X = _df[['t', 'x1', 't*x1']]\n", 433 | "X = sm.add_constant(X)\n", 434 | "\n", 435 | "# 被説明変数\n", 436 | "y = _df['y']\n", 437 | "\n", 438 | "# 結果を出力\n", 439 | "res = sm.OLS(y, X).fit()\n", 440 | "print(res.summary())" 441 | ], 442 | "metadata": { 443 | "colab": { 444 | "base_uri": "https://localhost:8080/" 445 | }, 446 | "id": "Jm1O-QR84x9B", 447 | "outputId": "bc751ca9-7217-4cad-f4fa-46548d8fb397" 448 | }, 449 | "execution_count": null, 450 | "outputs": [ 451 | { 452 | "output_type": "stream", 453 | "name": "stdout", 454 | "text": [ 455 | " OLS Regression Results \n", 456 | "==============================================================================\n", 457 | "Dep. Variable: y R-squared: 0.157\n", 458 | "Model: OLS Adj. R-squared: 0.156\n", 459 | "Method: Least Squares F-statistic: 124.3\n", 460 | "Date: Mon, 10 Apr 2023 Prob (F-statistic): 8.29e-74\n", 461 | "Time: 11:31:18 Log-Likelihood: -16508.\n", 462 | "No. Observations: 2000 AIC: 3.302e+04\n", 463 | "Df Residuals: 1996 BIC: 3.305e+04\n", 464 | "Df Model: 3 \n", 465 | "Covariance Type: nonrobust \n", 466 | "==============================================================================\n", 467 | " coef std err t P>|t| [0.025 0.975]\n", 468 | "------------------------------------------------------------------------------\n", 469 | "const 418.9856 89.226 4.696 0.000 243.999 593.972\n", 470 | "t 640.0696 120.688 5.304 0.000 403.383 876.757\n", 471 | "x1 0.0437 0.010 4.286 0.000 0.024 0.064\n", 472 | "t*x1 0.0294 0.016 1.887 0.059 -0.001 0.060\n", 473 | "==============================================================================\n", 474 | "Omnibus: 123.978 Durbin-Watson: 1.916\n", 475 | "Prob(Omnibus): 0.000 Jarque-Bera (JB): 128.353\n", 476 | "Skew: 0.581 Prob(JB): 1.34e-28\n", 477 | "Kurtosis: 2.565 Cond. No. 5.78e+04\n", 478 | "==============================================================================\n", 479 | "\n", 480 | "Notes:\n", 481 | "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", 482 | "[2] The condition number is large, 5.78e+04. This might indicate that there are\n", 483 | "strong multicollinearity or other numerical problems.\n" 484 | ] 485 | } 486 | ] 487 | }, 488 | { 489 | "cell_type": "code", 490 | "source": [ 491 | "# ノック10\n", 492 | "import statsmodels.api as sm\n", 493 | "\n", 494 | "# 共変量\n", 495 | "X = df[['t', 'x1']]\n", 496 | "X = sm.add_constant(X)\n", 497 | "\n", 498 | "# 被説明変数\n", 499 | "y = df['y']\n", 500 | "\n", 501 | "# 結果を出力\n", 502 | "res = sm.OLS(y, X).fit()\n", 503 | "\n", 504 | "# 可視化\n", 505 | "cols = X.columns\n", 506 | "plt.bar(x=cols, height=res.params, yerr=res.bse, capsize=6, alpha=0.4)\n", 507 | "plt.ylim(0, 1000)\n", 508 | "plt.show()" 509 | ], 510 | "metadata": { 511 | "colab": { 512 | "base_uri": "https://localhost:8080/", 513 | "height": 435 514 | }, 515 | "id": "pNvz67Ou8_59", 516 | "outputId": "0869c8f3-ff53-44a2-d178-d971ca6f5a97" 517 | }, 518 | "execution_count": null, 519 | "outputs": [ 520 | { 521 | "output_type": "display_data", 522 | "data": { 523 | "text/plain": [ 524 | "
" 525 | ], 526 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGiCAYAAAD5t/y6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAg7ElEQVR4nO3de3BU5eH/8U8uZBMDuyGR7CaVYGpRiCKo2LBC1UpKLKhFY2tKxIgYHJuoiDcyylUkGi1KKhdhVGiF1jrzxSpV2kxguEiMCEUocrEVTSxsgo3ZhShLYM/vD4fz6woq4obNQ96vmTOTPec5e57jHM3bs5vdGMuyLAEAABgkNtoTAAAA+K4IGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGCc7xwwa9as0bXXXqvMzEzFxMTo1VdfDdtuWZYmT56sjIwMJSUlKS8vTx988EHYmObmZhUVFcnpdColJUVjx47VgQMHwsZs2bJFP/nJT5SYmKiePXuqsrLyu58dAAA4LX3ngGltbVX//v01Z86c426vrKxUVVWV5s+fr7q6OiUnJys/P18HDx60xxQVFWnbtm2qrq7W8uXLtWbNGo0bN87eHggENGzYMPXq1UsbN27Uk08+qalTp2rBggUncYoAAOB0E/N9vswxJiZGy5Yt08iRIyV9efclMzNT9913n+6//35Jkt/vl9vt1qJFi1RYWKjt27crJydHGzZs0MCBAyVJK1as0PDhw/XJJ58oMzNT8+bN08MPPyyfz6eEhARJ0sSJE/Xqq69qx44d3/OUAQCA6eIj+WS7d++Wz+dTXl6evc7lcik3N1e1tbUqLCxUbW2tUlJS7HiRpLy8PMXGxqqurk7XX3+9amtrdfnll9vxIkn5+fl64okn9Nlnn6l79+7HHDsYDCoYDNqPQ6GQmpublZaWppiYmEieJgAAaCeWZWn//v3KzMxUbOzXv1AU0YDx+XySJLfbHbbe7Xbb23w+n9LT08MnER+v1NTUsDHZ2dnHPMfRbccLmIqKCk2bNi0yJwIAAKKqoaFBZ5111tduj2jARFN5ebkmTJhgP/b7/crKylJDQ4OcTmcUZwYAAE5UIBBQz5491a1bt28cF9GA8Xg8kqTGxkZlZGTY6xsbGzVgwAB7TFNTU9h+hw8fVnNzs72/x+NRY2Nj2Jijj4+O+SqHwyGHw3HMeqfTScAAAGCYb3v7R0Q/ByY7O1sej0c1NTX2ukAgoLq6Onm9XkmS1+tVS0uLNm7caI9ZuXKlQqGQcnNz7TFr1qxRW1ubPaa6ulrnnXfecV8+AgAAnct3DpgDBw5o8+bN2rx5s6Qv37i7efNm1dfXKyYmRuPHj9eMGTP02muvaevWrbrllluUmZlp/6VS3759dfXVV6ukpETvvPOO3nrrLZWVlamwsFCZmZmSpFGjRikhIUFjx47Vtm3b9PLLL2v27NlhLxEBAIBOzPqOVq1aZUk6ZikuLrYsy7JCoZA1adIky+12Ww6Hwxo6dKi1c+fOsOf473//a/3617+2unbtajmdTmvMmDHW/v37w8a899571pAhQyyHw2H94Ac/sB5//PHvNE+/329Jsvx+/3c9RQAAECUn+vv7e30OTEcWCATkcrnk9/t5DwwAAIY40d/ffBcSAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIwTH+0JAMDx7N27V3v37j3p/TMyMpSRkRHBGQHoSAgYAB3Sc889p2nTpp30/lOmTNHUqVMjNyEAHQoBA6BDuuOOO3Tdddcds/6LL77QkCFDJEnr1q1TUlLScffn7gtweiNgAHRIX/cSUGtrq/3zgAEDlJycfCqnBaCD4E28AADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOHwbNWCgpXX10Z5C1Bz84nP755c3NCgx6YwoziZ6RuVmRXsKQFRxBwYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEiHjBHjhzRpEmTlJ2draSkJJ1zzjl69NFHZVmWPcayLE2ePFkZGRlKSkpSXl6ePvjgg7DnaW5uVlFRkZxOp1JSUjR27FgdOHAg0tMF0EF99mmjdu/Yeszy8a5t9piPd2077pjdO7bqs08bozh7AO0tPtJP+MQTT2jevHlavHixzj//fL377rsaM2aMXC6X7r77bklSZWWlqqqqtHjxYmVnZ2vSpEnKz8/X+++/r8TERElSUVGR9u7dq+rqarW1tWnMmDEaN26cli5dGukpA+iAVi5bqv97/plvHDP9jhu/dtsNY8eroOTeCM8KQEcRY/3vrZEIuOaaa+R2u/X888/b6woKCpSUlKSXXnpJlmUpMzNT9913n+6//35Jkt/vl9vt1qJFi1RYWKjt27crJydHGzZs0MCBAyVJK1as0PDhw/XJJ58oMzPzW+cRCATkcrnk9/vldDojeYpA1C2tq4/2FNrdZ582quXTppPeP+XMdHU/0x3BGXUso3Kzoj0FoF2c6O/viN+Bueyyy7RgwQLt2rVL5557rt577z2tW7dOs2bNkiTt3r1bPp9PeXl59j4ul0u5ubmqra1VYWGhamtrlZKSYseLJOXl5Sk2NlZ1dXW6/vrrjzluMBhUMBi0HwcCgUifGoBTqPuZ7tM6QAB8PxEPmIkTJyoQCKhPnz6Ki4vTkSNH9Nhjj6moqEiS5PP5JElud/h/mNxut73N5/MpPT09fKLx8UpNTbXHfFVFRYWmTZsW6dMBAAAdUMTfxPvnP/9ZS5Ys0dKlS7Vp0yYtXrxYTz31lBYvXhzpQ4UpLy+X3++3l4aGhnY9HgAAiJ6I34F54IEHNHHiRBUWFkqS+vXrp48//lgVFRUqLi6Wx+ORJDU2NiojI8Per7GxUQMGDJAkeTweNTWFv/Z9+PBhNTc32/t/lcPhkMPhiPTpAACADijid2A+//xzxcaGP21cXJxCoZAkKTs7Wx6PRzU1Nfb2QCCguro6eb1eSZLX61VLS4s2btxoj1m5cqVCoZByc3MjPWUAAGCYiN+Bufbaa/XYY48pKytL559/vv7xj39o1qxZuu222yRJMTExGj9+vGbMmKHevXvbf0admZmpkSNHSpL69u2rq6++WiUlJZo/f77a2tpUVlamwsLCE/oLJAAAcHqLeMD87ne/06RJk/Sb3/xGTU1NyszM1B133KHJkyfbYx588EG1trZq3Lhxamlp0ZAhQ7RixQr7M2AkacmSJSorK9PQoUMVGxurgoICVVVVRXq6AADAQBH/HJiOgs+BwemsM3wODL4ZnwOD09WJ/v7mu5AAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABinXQLmP//5j26++WalpaUpKSlJ/fr107vvvmtvtyxLkydPVkZGhpKSkpSXl6cPPvgg7Dmam5tVVFQkp9OplJQUjR07VgcOHGiP6QIAAMNEPGA+++wzDR48WF26dNGbb76p999/X7/97W/VvXt3e0xlZaWqqqo0f/581dXVKTk5Wfn5+Tp48KA9pqioSNu2bVN1dbWWL1+uNWvWaNy4cZGeLgAAMFCMZVlWJJ9w4sSJeuutt7R27drjbrcsS5mZmbrvvvt0//33S5L8fr/cbrcWLVqkwsJCbd++XTk5OdqwYYMGDhwoSVqxYoWGDx+uTz75RJmZmd86j0AgIJfLJb/fL6fTGbkTBDqApXX10Z4ComxUbla0pwC0ixP9/R3xOzCvvfaaBg4cqF/+8pdKT0/XRRddpIULF9rbd+/eLZ/Pp7y8PHudy+VSbm6uamtrJUm1tbVKSUmx40WS8vLyFBsbq7q6uuMeNxgMKhAIhC0AAOD0FPGA+fDDDzVv3jz17t1bf/vb33TnnXfq7rvv1uLFiyVJPp9PkuR2u8P2c7vd9jafz6f09PSw7fHx8UpNTbXHfFVFRYVcLpe99OzZM9KnBgAAOoiIB0woFNLFF1+smTNn6qKLLtK4ceNUUlKi+fPnR/pQYcrLy+X3++2loaGhXY8HAACiJ+IBk5GRoZycnLB1ffv2VX39l6/ZezweSVJjY2PYmMbGRnubx+NRU1NT2PbDhw+rubnZHvNVDodDTqczbAEAAKeniAfM4MGDtXPnzrB1u3btUq9evSRJ2dnZ8ng8qqmpsbcHAgHV1dXJ6/VKkrxer1paWrRx40Z7zMqVKxUKhZSbmxvpKQMAAMPER/oJ7733Xl122WWaOXOmfvWrX+mdd97RggULtGDBAklSTEyMxo8frxkzZqh3797Kzs7WpEmTlJmZqZEjR0r68o7N1Vdfbb/01NbWprKyMhUWFp7QXyABAIDTW8QD5tJLL9WyZctUXl6u6dOnKzs7W88884yKiorsMQ8++KBaW1s1btw4tbS0aMiQIVqxYoUSExPtMUuWLFFZWZmGDh2q2NhYFRQUqKqqKtLTBQAABor458B0FHwODE5nfA4M+BwYnK6i9jkwAAAA7Y2AAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcdo9YB5//HHFxMRo/Pjx9rqDBw+qtLRUaWlp6tq1qwoKCtTY2Bi2X319vUaMGKEzzjhD6enpeuCBB3T48OH2ni4AADBAuwbMhg0b9Nxzz+nCCy8MW3/vvffq9ddf1yuvvKLVq1drz549uuGGG+ztR44c0YgRI3To0CGtX79eixcv1qJFizR58uT2nC4AADBEuwXMgQMHVFRUpIULF6p79+72er/fr+eff16zZs3SVVddpUsuuUQvvvii1q9fr7fffluS9Pe//13vv/++XnrpJQ0YMEA///nP9eijj2rOnDk6dOjQcY8XDAYVCATCFgAAcHpqt4ApLS3ViBEjlJeXF7Z+48aNamtrC1vfp08fZWVlqba2VpJUW1urfv36ye1222Py8/MVCAS0bdu24x6voqJCLpfLXnr27NkOZwUAADqCdgmYP/3pT9q0aZMqKiqO2ebz+ZSQkKCUlJSw9W63Wz6fzx7zv/FydPvRbcdTXl4uv99vLw0NDRE4EwAA0BHFR/oJGxoadM8996i6ulqJiYmRfvqv5XA45HA4TtnxAABA9ET8DszGjRvV1NSkiy++WPHx8YqPj9fq1atVVVWl+Ph4ud1uHTp0SC0tLWH7NTY2yuPxSJI8Hs8xf5V09PHRMQAAoPOKeMAMHTpUW7du1ebNm+1l4MCBKioqsn/u0qWLampq7H127typ+vp6eb1eSZLX69XWrVvV1NRkj6murpbT6VROTk6kpwwAAAwT8ZeQunXrpgsuuCBsXXJystLS0uz1Y8eO1YQJE5Samiqn06m77rpLXq9XgwYNkiQNGzZMOTk5Gj16tCorK+Xz+fTII4+otLSUl4lOkb1792rv3r0nvX9GRoYyMjIiOCMAAP6/iAfMiXj66acVGxurgoICBYNB5efna+7cufb2uLg4LV++XHfeeae8Xq+Sk5NVXFys6dOnR2O6ndJzzz2nadOmnfT+U6ZM0dSpUyM3IQAA/keMZVlWtCfRHgKBgFwul/x+v5xOZ7SnY5yvuwPzxRdfaMiQIZKkdevWKSkp6bj7cwemfS2tq4/2FBBlo3Kzoj0FoF2c6O/vqNyBQcf3dQHS2tpq/zxgwAAlJyefymkBACCJL3MEAAAGImAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgnPhoT8BES+vqoz2FqDn4xef2zy9vaFBi0hlRnE30jMrNivYUAKBT4w4MAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOPHRngA6ps8+bVTLp03HrD8UPGj//PGubUpwJB53/5Qz09X9THe7zQ8A0LkRMDiulcuW6v+ef+Ybx0y/48av3XbD2PEqKLk3wrMCAOBLBAyO66rrR+nin+Sd9P4pZ6ZHcDYAAIQjYHBc3c908xIQAKDD4k28AADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIxDwAAAAOMQMAAAwDgEDAAAME7EA6aiokKXXnqpunXrpvT0dI0cOVI7d+4MG3Pw4EGVlpYqLS1NXbt2VUFBgRobG8PG1NfXa8SIETrjjDOUnp6uBx54QIcPH470dAEAgIEiHjCrV69WaWmp3n77bVVXV6utrU3Dhg1Ta2urPebee+/V66+/rldeeUWrV6/Wnj17dMMNN9jbjxw5ohEjRujQoUNav369Fi9erEWLFmny5MmRni4AADBQjGVZVnseYN++fUpPT9fq1at1+eWXy+/3q0ePHlq6dKluvPFGSdKOHTvUt29f1dbWatCgQXrzzTd1zTXXaM+ePXK7v/xCwfnz5+uhhx7Svn37lJCQcMxxgsGggsGg/TgQCKhnz57y+/1yOp0RPaeldfURfT6YZ1RuVlSPzzWIaF+DQHsJBAJyuVzf+vu73d8D4/f7JUmpqamSpI0bN6qtrU15eXn2mD59+igrK0u1tbWSpNraWvXr18+OF0nKz89XIBDQtm3bjnuciooKuVwue+nZs2d7nRIAAIiydg2YUCik8ePHa/DgwbrgggskST6fTwkJCUpJSQkb63a75fP57DH/Gy9Htx/ddjzl5eXy+/320tDQEOGzAQAAHUV8ez55aWmp/vnPf2rdunXteRhJksPhkMPhaPfjAACA6Gu3OzBlZWVavny5Vq1apbPOOste7/F4dOjQIbW0tISNb2xslMfjscd89a+Sjj4+OgYAAHReEQ8Yy7JUVlamZcuWaeXKlcrOzg7bfskll6hLly6qqamx1+3cuVP19fXyer2SJK/Xq61bt6qpqckeU11dLafTqZycnEhPGQAAGCbiLyGVlpZq6dKl+stf/qJu3brZ71lxuVxKSkqSy+XS2LFjNWHCBKWmpsrpdOquu+6S1+vVoEGDJEnDhg1TTk6ORo8ercrKSvl8Pj3yyCMqLS3lZSIAABD5gJk3b54k6corrwxb/+KLL+rWW2+VJD399NOKjY1VQUGBgsGg8vPzNXfuXHtsXFycli9frjvvvFNer1fJyckqLi7W9OnTIz1dAABgoIgHzIl8rExiYqLmzJmjOXPmfO2YXr166Y033ojk1AAAwGmC70ICAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGAcAgYAABiHgAEAAMYhYAAAgHEIGAAAYBwCBgAAGIeAAQAAxiFgAACAcQgYAABgHAIGAAAYh4ABAADGIWAAAIBxCBgAAGCcDh0wc+bM0dlnn63ExETl5ubqnXfeifaUAABAB9BhA+bll1/WhAkTNGXKFG3atEn9+/dXfn6+mpqaoj01AAAQZfHRnsDXmTVrlkpKSjRmzBhJ0vz58/XXv/5VL7zwgiZOnHjM+GAwqGAwaD/2+/2SpEAgEPG5fd66P+LPCbO0x3X1XXANItrXYGewZcsWbd++/aT379u3ry688MIIzqhzOHptW5b1zQOtDigYDFpxcXHWsmXLwtbfcsst1nXXXXfcfaZMmWJJYmFhYWFhYTkNloaGhm9shQ55B+bTTz/VkSNH5Ha7w9a73W7t2LHjuPuUl5drwoQJ9uNQKKTm5malpaUpJiamXefb2QQCAfXs2VMNDQ1yOp3Rng46Ia5BRBvXYPuxLEv79+9XZmbmN47rkAFzMhwOhxwOR9i6lJSU6Eymk3A6nfyLi6jiGkS0cQ22D5fL9a1jOuSbeM8880zFxcWpsbExbH1jY6M8Hk+UZgUAADqKDhkwCQkJuuSSS1RTU2OvC4VCqqmpkdfrjeLMAABAR9BhX0KaMGGCiouLNXDgQP34xz/WM888o9bWVvuvkhA9DodDU6ZMOeYlO+BU4RpEtHENRl+MZX3b3ylFz7PPPqsnn3xSPp9PAwYMUFVVlXJzc6M9LQAAEGUdOmAAAACOp0O+BwYAAOCbEDAAAMA4BAwAADAOAQMAAIxDwOCUuvLKKzV+/PhoTwMG4xpCR7F3716NGjVK5557rmJjY7kuTzECBgCAkxAMBtWjRw898sgj6t+/f7Sn0+kQMJ1QKBRSZWWlfvSjH8nhcCgrK0uPPfaYJGnr1q266qqrlJSUpLS0NI0bN04HDhyw97311ls1cuRIPfXUU8rIyFBaWppKS0vV1tZmj5k7d6569+6txMREud1u3Xjjjfa+q1ev1uzZsxUTE6OYmBh99NFHp/TcYTauIZxK+/btk8fj0cyZM+1169evV0JCgmpqanT22Wdr9uzZuuWWW07ou3sQWR32k3jRfsrLy7Vw4UI9/fTTGjJkiPbu3asdO3aotbVV+fn58nq92rBhg5qamnT77berrKxMixYtsvdftWqVMjIytGrVKv3rX//STTfdpAEDBqikpETvvvuu7r77bv3hD3/QZZddpubmZq1du1aSNHv2bO3atUsXXHCBpk+fLknq0aNHNP4RwFBcQziVevTooRdeeEEjR47UsGHDdN5552n06NEqKyvT0KFDoz29To+A6WT279+v2bNn69lnn1VxcbEk6ZxzztGQIUO0cOFCHTx4UL///e+VnJws6ctPQ7722mv1xBNPyO12S5K6d++uZ599VnFxcerTp49GjBihmpoalZSUqL6+XsnJybrmmmvUrVs39erVSxdddJGkL79dNCEhQWeccQZfyomTwjWEU2348OEqKSlRUVGRBg4cqOTkZFVUVER7WhAvIXU627dvVzAYPO7/PWzfvl39+/e340WSBg8erFAopJ07d9rrzj//fMXFxdmPMzIy1NTUJEn62c9+pl69eumHP/yhRo8erSVLlujzzz9vxzMCgPb11FNP6fDhw3rllVe0ZMkSvv+ogyBgOpmkpKTv/RxdunQJexwTE6NQKCRJ6tatmzZt2qQ//vGPysjI0OTJk9W/f3+1tLR87+MCQDT8+9//1p49exQKhXjPVQdCwHQyvXv3VlJSkmpqao7Z1rdvX7333ntqbW2117311luKjY3Veeedd8LHiI+PV15eniorK7VlyxZ99NFHWrlypSQpISFBR44c+f4ngk6Lawin0qFDh3TzzTfrpptu0qOPPqrbb7/dvuOM6OI9MJ1MYmKiHnroIT344INKSEjQ4MGDtW/fPm3btk1FRUWaMmWKiouLNXXqVO3bt0933XWXRo8ebb//5dssX75cH374oS6//HJ1795db7zxhkKhkB1AZ599turq6vTRRx+pa9euSk1NVWwsHY0TxzWEU+nhhx+W3+9XVVWVunbtqjfeeEO33Xabli9fLknavHmzJOnAgQPat2+fNm/erISEBOXk5ERx1p2EhU7nyJEj1owZM6xevXpZXbp0sbKysqyZM2dalmVZW7ZssX76059aiYmJVmpqqlVSUmLt37/f3re4uNj6xS9+EfZ899xzj3XFFVdYlmVZa9euta644gqre/fuVlJSknXhhRdaL7/8sj12586d1qBBg6ykpCRLkrV79+72Pl2cZriGcKqsWrXKio+Pt9auXWuv2717t+V0Oq25c+dalmVZko5ZevXqFaUZdy4xlmVZUewnAACA74z7rgAAwDgEDAAAMA4BAwAAjEPAAAAA4xAwAADAOAQMAAAwDgEDAACMQ8AAAADjEDAAAMA4BAwAADAOAQMAAIzz/wB3eAWKqqpcSAAAAABJRU5ErkJggg==\n" 527 | }, 528 | "metadata": {} 529 | } 530 | ] 531 | } 532 | ] 533 | } -------------------------------------------------------------------------------- /answers/causal_knock1_ans.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "nbformat": 4, 3 | "nbformat_minor": 0, 4 | "metadata": { 5 | "colab": { 6 | "provenance": [] 7 | }, 8 | "kernelspec": { 9 | "name": "python3", 10 | "display_name": "Python 3" 11 | }, 12 | "language_info": { 13 | "name": "python" 14 | } 15 | }, 16 | "cells": [ 17 | { 18 | "cell_type": "code", 19 | "source": [ 20 | "!pip install dowhy\n", 21 | "!apt install libgraphviz-dev\n", 22 | "!pip install pygraphviz" 23 | ], 24 | "metadata": { 25 | "colab": { 26 | "base_uri": "https://localhost:8080/" 27 | }, 28 | "id": "WstdFTNEXYNH", 29 | "outputId": "bf06bf80-7527-4f5a-b939-4a1e2bcdc6a1" 30 | }, 31 | "execution_count": null, 32 | "outputs": [ 33 | { 34 | "output_type": "stream", 35 | "name": "stdout", 36 | "text": [ 37 | "Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n", 38 | "Requirement already satisfied: dowhy in /usr/local/lib/python3.9/dist-packages (0.9.1)\n", 39 | "Requirement already satisfied: statsmodels<0.14.0,>=0.13.2 in /usr/local/lib/python3.9/dist-packages (from dowhy) (0.13.5)\n", 40 | "Requirement already satisfied: scikit-learn<1.2.0 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.1.3)\n", 41 | "Requirement already satisfied: sympy<2.0.0,>=1.10.1 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.11.1)\n", 42 | "Requirement already satisfied: cython<0.30.0,>=0.29.32 in /usr/local/lib/python3.9/dist-packages (from dowhy) (0.29.34)\n", 43 | "Requirement already satisfied: pandas<2.0.0,>=1.4.3 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.4.4)\n", 44 | "Requirement already satisfied: tqdm<5.0.0,>=4.64.0 in /usr/local/lib/python3.9/dist-packages (from dowhy) (4.65.0)\n", 45 | "Requirement already satisfied: sphinx_design<0.4.0,>=0.3.0 in /usr/local/lib/python3.9/dist-packages (from dowhy) (0.3.0)\n", 46 | "Requirement already satisfied: joblib<2.0.0,>=1.1.0 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.1.1)\n", 47 | "Requirement already satisfied: scipy<2.0.0,>=1.8.1 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.10.1)\n", 48 | "Requirement already satisfied: econml in /usr/local/lib/python3.9/dist-packages (from dowhy) (0.14.0)\n", 49 | "Requirement already satisfied: causal-learn<0.2.0.0,>=0.1.3.0 in /usr/local/lib/python3.9/dist-packages (from dowhy) (0.1.3.3)\n", 50 | "Requirement already satisfied: numpy<2.0.0,>=1.23.1 in /usr/local/lib/python3.9/dist-packages (from dowhy) (1.23.5)\n", 51 | "Requirement already satisfied: networkx<3.0.0,>=2.8.5 in /usr/local/lib/python3.9/dist-packages (from dowhy) (2.8.8)\n", 52 | "Requirement already satisfied: graphviz in /usr/local/lib/python3.9/dist-packages (from causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (0.20.1)\n", 53 | "Requirement already satisfied: pydot in /usr/local/lib/python3.9/dist-packages (from causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (1.4.2)\n", 54 | "Requirement already satisfied: matplotlib in /usr/local/lib/python3.9/dist-packages (from causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (3.7.1)\n", 55 | "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.9/dist-packages (from pandas<2.0.0,>=1.4.3->dowhy) (2022.7.1)\n", 56 | "Requirement already satisfied: python-dateutil>=2.8.1 in /usr/local/lib/python3.9/dist-packages (from pandas<2.0.0,>=1.4.3->dowhy) (2.8.2)\n", 57 | "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.9/dist-packages (from scikit-learn<1.2.0->dowhy) (3.1.0)\n", 58 | "Requirement already satisfied: sphinx<6,>=4 in /usr/local/lib/python3.9/dist-packages (from sphinx_design<0.4.0,>=0.3.0->dowhy) (5.3.0)\n", 59 | "Requirement already satisfied: packaging>=21.3 in /usr/local/lib/python3.9/dist-packages (from statsmodels<0.14.0,>=0.13.2->dowhy) (23.0)\n", 60 | "Requirement already satisfied: patsy>=0.5.2 in /usr/local/lib/python3.9/dist-packages (from statsmodels<0.14.0,>=0.13.2->dowhy) (0.5.3)\n", 61 | "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.9/dist-packages (from sympy<2.0.0,>=1.10.1->dowhy) (1.3.0)\n", 62 | "Requirement already satisfied: shap<0.41.0,>=0.38.1 in /usr/local/lib/python3.9/dist-packages (from econml->dowhy) (0.40.0)\n", 63 | "Requirement already satisfied: lightgbm in /usr/local/lib/python3.9/dist-packages (from econml->dowhy) (3.3.5)\n", 64 | "Requirement already satisfied: sparse in /usr/local/lib/python3.9/dist-packages (from econml->dowhy) (0.14.0)\n", 65 | "Requirement already satisfied: six in /usr/local/lib/python3.9/dist-packages (from patsy>=0.5.2->statsmodels<0.14.0,>=0.13.2->dowhy) (1.16.0)\n", 66 | "Requirement already satisfied: cloudpickle in /usr/local/lib/python3.9/dist-packages (from shap<0.41.0,>=0.38.1->econml->dowhy) (2.2.1)\n", 67 | "Requirement already satisfied: slicer==0.0.7 in /usr/local/lib/python3.9/dist-packages (from shap<0.41.0,>=0.38.1->econml->dowhy) (0.0.7)\n", 68 | "Requirement already satisfied: numba in /usr/local/lib/python3.9/dist-packages (from shap<0.41.0,>=0.38.1->econml->dowhy) (0.56.4)\n", 69 | "Requirement already satisfied: sphinxcontrib-devhelp in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.0.2)\n", 70 | "Requirement already satisfied: sphinxcontrib-htmlhelp>=2.0.0 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.0.1)\n", 71 | "Requirement already satisfied: snowballstemmer>=2.0 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.2.0)\n", 72 | "Requirement already satisfied: alabaster<0.8,>=0.7 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (0.7.13)\n", 73 | "Requirement already satisfied: Pygments>=2.12 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.14.0)\n", 74 | "Requirement already satisfied: docutils<0.20,>=0.14 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (0.16)\n", 75 | "Requirement already satisfied: Jinja2>=3.0 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (3.1.2)\n", 76 | "Requirement already satisfied: imagesize>=1.3 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.4.1)\n", 77 | "Requirement already satisfied: sphinxcontrib-qthelp in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.0.3)\n", 78 | "Requirement already satisfied: requests>=2.5.0 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.27.1)\n", 79 | "Requirement already satisfied: sphinxcontrib-applehelp in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.0.4)\n", 80 | "Requirement already satisfied: importlib-metadata>=4.8 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (6.1.0)\n", 81 | "Requirement already satisfied: sphinxcontrib-serializinghtml>=1.1.5 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.1.5)\n", 82 | "Requirement already satisfied: babel>=2.9 in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.12.1)\n", 83 | "Requirement already satisfied: sphinxcontrib-jsmath in /usr/local/lib/python3.9/dist-packages (from sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.0.1)\n", 84 | "Requirement already satisfied: wheel in /usr/local/lib/python3.9/dist-packages (from lightgbm->econml->dowhy) (0.40.0)\n", 85 | "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (4.39.3)\n", 86 | "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (0.11.0)\n", 87 | "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (1.0.7)\n", 88 | "Requirement already satisfied: importlib-resources>=3.2.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (5.12.0)\n", 89 | "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (3.0.9)\n", 90 | "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (1.4.4)\n", 91 | "Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib->causal-learn<0.2.0.0,>=0.1.3.0->dowhy) (8.4.0)\n", 92 | "Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.9/dist-packages (from importlib-metadata>=4.8->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (3.15.0)\n", 93 | "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.9/dist-packages (from Jinja2>=3.0->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.1.2)\n", 94 | "Requirement already satisfied: llvmlite<0.40,>=0.39.0dev0 in /usr/local/lib/python3.9/dist-packages (from numba->shap<0.41.0,>=0.38.1->econml->dowhy) (0.39.1)\n", 95 | "Requirement already satisfied: setuptools in /usr/local/lib/python3.9/dist-packages (from numba->shap<0.41.0,>=0.38.1->econml->dowhy) (67.6.1)\n", 96 | "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.9/dist-packages (from requests>=2.5.0->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2022.12.7)\n", 97 | "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.9/dist-packages (from requests>=2.5.0->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (3.4)\n", 98 | "Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.9/dist-packages (from requests>=2.5.0->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (1.26.15)\n", 99 | "Requirement already satisfied: charset-normalizer~=2.0.0 in /usr/local/lib/python3.9/dist-packages (from requests>=2.5.0->sphinx<6,>=4->sphinx_design<0.4.0,>=0.3.0->dowhy) (2.0.12)\n", 100 | "Reading package lists... Done\n", 101 | "Building dependency tree \n", 102 | "Reading state information... Done\n", 103 | "libgraphviz-dev is already the newest version (2.42.2-3build2).\n", 104 | "0 upgraded, 0 newly installed, 0 to remove and 24 not upgraded.\n", 105 | "Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n", 106 | "Requirement already satisfied: pygraphviz in /usr/local/lib/python3.9/dist-packages (1.10)\n" 107 | ] 108 | } 109 | ] 110 | }, 111 | { 112 | "cell_type": "code", 113 | "execution_count": null, 114 | "metadata": { 115 | "id": "Ja_dkvfdXFgF" 116 | }, 117 | "outputs": [], 118 | "source": [ 119 | "# ノック1\n", 120 | "import pandas as pd\n", 121 | "\n", 122 | "df = pd.read_csv('https://raw.githubusercontent.com/s1ok69oo/causal_inference_100knock/main/data/causal_knock1.csv')" 123 | ] 124 | }, 125 | { 126 | "cell_type": "code", 127 | "source": [ 128 | "# ノック2\n", 129 | "from dowhy import CausalModel\n", 130 | "from IPython.display import Image, display\n", 131 | "\n", 132 | "data = df[['y', 't', 'x']]\n", 133 | "\n", 134 | "# グラフを描画\n", 135 | "model = CausalModel(\n", 136 | " data=data, \n", 137 | " treatment='t', \n", 138 | " outcome='y', \n", 139 | " effect_modifiers='x'\n", 140 | " )\n", 141 | "\n", 142 | "model.view_model()\n", 143 | "display(Image(filename=\"causal_model.png\"))" 144 | ], 145 | "metadata": { 146 | "colab": { 147 | "base_uri": "https://localhost:8080/", 148 | "height": 717 149 | }, 150 | "id": "5-ubV_F_Xx-j", 151 | "outputId": "6f0b9b91-3ce7-4ba9-8ef6-b4087e9399a9" 152 | }, 153 | "execution_count": null, 154 | "outputs": [ 155 | { 156 | "output_type": "stream", 157 | "name": "stderr", 158 | "text": [ 159 | "WARNING:dowhy.causal_model:Causal Graph not provided. DoWhy will construct a graph based on data inputs.\n", 160 | "WARNING:dowhy.causal_model:Relevant variables to build causal graph not provided. You may want to use the learn_graph() function to construct the causal graph.\n" 161 | ] 162 | }, 163 | { 164 | "output_type": "display_data", 165 | "data": { 166 | "image/png": "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AiUiIm170kv+U6dO5R4gREaGBQCREYiMjFTr8zKZTO33B4hId61atQrXrl1TOG5ra4upU6eKkIiIxMQCgMgIBAYGYuDAgWq12blzJ06ePClQIiLSlidt9Dd9+nTY2dlpORERiY0FAJGRiIyMhEQiUfnzcrlc7R2FiUj3rFixArdu3VI47uDggClTpoiQiIjExgKAyEh06dIFQ4cOVavNb7/9ptY+AkSkW0pLS/HNN98oPRceHo5mzZppORER6QIWAERGJDIyEiYm6v215ywAkf5aunQpiouLFY47OTkhNDRUhEREpAtYABAZEV9fXwQHB6vVJj4+HklJSQIlIiKhlJSUPHZn39mzZ8PKykrLiYhIV7AAIDIyX375JZo0aaJWm88//1ygNEQklCVLlqCkpEThuLOzMz788EMREhGRrmABQGRkPD09ERISolablJQUJCQkCJSIiDStqKgIK1euVHouIiIClpaWWk5ERLpEIpfL5WKHICLtys/Ph5eXF2pqalRu07VrV6Smpqq1khARiWPatGlYunSpwvE2bdogKysL5ubmIqQiIl3BGQAiI+Tq6ooxY8ao1eb48eOIi4sTKBERacqNGzewZs0apee++OILDv6JiDMARMaqoKAAbdu2RVVVlcptunTpgrS0NM4CEOmw0NBQrF69WuG4l5cXMjMz1X4HiIgMD2cAiIyUs7Mzxo0bp1abEydOYM+ePQIlIqLGys/PR1RUlNJzDVkAgIgME2cAiIzYzZs34eHhgcrKSpXb+Pr64vTp02rvJ0BEwvvggw+UFgAdOnTAqVOn+PeWiABwBoDIqDk5OWHixIlqtcnMzMTWrVsFSkREDZWbm4sNGzYoPdeQTQCJyHBxBoDIyN25cwfu7u4oKytTuY2npyfOnTvHxwmIdEhISAg2b96scNzf3x/Hjx/nuztEVI+3A4iMXIsWLTBlyhS12uTk5GDjxo0CJSIidWVmZiI6OlrpucjISA7+iegRnAEgIpSWlsLd3R3FxcUqt3F1dUV2djaXFCTSAcOHD8euXbsUjgcGBuLw4cMiJCIiXcYZACKCra0tpk2bplabJ602QkTac+bMmceuzjV//nwtpyEifcAZACICAJSXl8PDwwO3b99WuY2zszNyc3NhaWkpYDIiepKgoCDExsYqHO/RoweSk5NFSEREuo4zAEQEAJBKpQgLC1Or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\n", 167 | "text/plain": [ 168 | "" 169 | ] 170 | }, 171 | "metadata": {} 172 | } 173 | ] 174 | }, 175 | { 176 | "cell_type": "code", 177 | "source": [ 178 | "# ノック3\n", 179 | "df['y'].mean() - df['x'].mean()" 180 | ], 181 | "metadata": { 182 | "colab": { 183 | "base_uri": "https://localhost:8080/", 184 | "height": 37 185 | }, 186 | "id": "DTC2bv6VYnkQ", 187 | "outputId": "ba86a24c-d8be-460c-d641-f8e6c6d3d796" 188 | }, 189 | "execution_count": null, 190 | "outputs": [ 191 | { 192 | "output_type": "execute_result", 193 | "data": { 194 | "text/plain": [ 195 | "-0.7999999999999989" 196 | ], 197 | "text/latex": "$\\displaystyle -0.799999999999999$" 198 | }, 199 | "metadata": {}, 200 | "execution_count": 10 201 | } 202 | ] 203 | }, 204 | { 205 | "cell_type": "code", 206 | "source": [ 207 | "# ノック4\n", 208 | "df['y_t1'] - df['y_t0']" 209 | ], 210 | "metadata": { 211 | "colab": { 212 | "base_uri": "https://localhost:8080/" 213 | }, 214 | "id": "moFCCfc8af_R", 215 | "outputId": "68998e9f-84c2-4d13-ef9f-b6b73c600ad6" 216 | }, 217 | "execution_count": null, 218 | "outputs": [ 219 | { 220 | "output_type": "execute_result", 221 | "data": { 222 | "text/plain": [ 223 | "0 5\n", 224 | "1 5\n", 225 | "2 5\n", 226 | "3 4\n", 227 | "4 5\n", 228 | "5 5\n", 229 | "6 5\n", 230 | "7 5\n", 231 | "8 5\n", 232 | "9 5\n", 233 | "10 5\n", 234 | "11 5\n", 235 | "12 5\n", 236 | "13 5\n", 237 | "14 5\n", 238 | "15 5\n", 239 | "16 5\n", 240 | "17 5\n", 241 | "18 5\n", 242 | "19 5\n", 243 | "20 5\n", 244 | "21 5\n", 245 | "22 5\n", 246 | "23 5\n", 247 | "24 5\n", 248 | "25 5\n", 249 | "26 5\n", 250 | "27 5\n", 251 | "28 5\n", 252 | "29 5\n", 253 | "30 5\n", 254 | "31 5\n", 255 | "32 5\n", 256 | "33 5\n", 257 | "34 5\n", 258 | "35 5\n", 259 | "36 5\n", 260 | "37 5\n", 261 | "38 4\n", 262 | "39 5\n", 263 | "40 5\n", 264 | "41 5\n", 265 | "42 5\n", 266 | "43 5\n", 267 | "44 5\n", 268 | "45 5\n", 269 | "46 5\n", 270 | "47 5\n", 271 | "48 5\n", 272 | "49 5\n", 273 | "50 5\n", 274 | "51 5\n", 275 | "52 5\n", 276 | "53 5\n", 277 | "54 5\n", 278 | "55 5\n", 279 | "56 5\n", 280 | "57 5\n", 281 | "58 5\n", 282 | "59 5\n", 283 | "dtype: int64" 284 | ] 285 | }, 286 | "metadata": {}, 287 | "execution_count": 11 288 | } 289 | ] 290 | }, 291 | { 292 | "cell_type": "code", 293 | "source": [ 294 | "# ノック5\n", 295 | "df['y_t1'].mean() - df['y_t0'].mean()" 296 | ], 297 | "metadata": { 298 | "colab": { 299 | "base_uri": "https://localhost:8080/", 300 | "height": 37 301 | }, 302 | "id": "ydEcIMdFgZEL", 303 | "outputId": "96fbc02f-8f36-4226-8d31-d25f9168be76" 304 | }, 305 | "execution_count": null, 306 | "outputs": [ 307 | { 308 | "output_type": "execute_result", 309 | "data": { 310 | "text/plain": [ 311 | "4.966666666666667" 312 | ], 313 | "text/latex": "$\\displaystyle 4.96666666666667$" 314 | }, 315 | "metadata": {}, 316 | "execution_count": 12 317 | } 318 | ] 319 | }, 320 | { 321 | "cell_type": "code", 322 | "source": [ 323 | "# ノック6\n", 324 | "df_t1 = df[df['t']==1]\n", 325 | "df_t1['y_t1'].mean() - df_t1['y_t0'].mean()" 326 | ], 327 | "metadata": { 328 | "colab": { 329 | "base_uri": "https://localhost:8080/", 330 | "height": 37 331 | }, 332 | "id": "1SkCQupphCJD", 333 | "outputId": "83168210-843f-4ae7-f8bd-d6b93d8003b3" 334 | }, 335 | "execution_count": null, 336 | "outputs": [ 337 | { 338 | "output_type": "execute_result", 339 | "data": { 340 | "text/plain": [ 341 | "4.92" 342 | ], 343 | "text/latex": "$\\displaystyle 4.92$" 344 | }, 345 | "metadata": {}, 346 | "execution_count": 14 347 | } 348 | ] 349 | }, 350 | { 351 | "cell_type": "code", 352 | "source": [ 353 | "# ノック7\n", 354 | "df_over10 = df[df['x']>10]\n", 355 | "df_over10['y_t1'].mean() - df_over10['y_t0'].mean()" 356 | ], 357 | "metadata": { 358 | "colab": { 359 | "base_uri": "https://localhost:8080/", 360 | "height": 37 361 | }, 362 | "id": "BFRlbIedhR9P", 363 | "outputId": "2cebf8c1-5875-44c7-fa7c-ab232269cc63" 364 | }, 365 | "execution_count": null, 366 | "outputs": [ 367 | { 368 | "output_type": "execute_result", 369 | "data": { 370 | "text/plain": [ 371 | "5.0" 372 | ], 373 | "text/latex": "$\\displaystyle 5.0$" 374 | }, 375 | "metadata": {}, 376 | "execution_count": 15 377 | } 378 | ] 379 | }, 380 | { 381 | "cell_type": "code", 382 | "source": [ 383 | "# ノック8\n", 384 | "import matplotlib.pyplot as plt\n", 385 | "%matplotlib inline\n", 386 | "\n", 387 | "# 分析レポートありの営業の前季の受注件数\n", 388 | "df_t1 = df[df['t']==1]\n", 389 | "plt.hist(df_t1['x'], alpha=0.3, label='have report')\n", 390 | "\n", 391 | "# 分析レポートなしの営業の前季の受注件数\n", 392 | "df_t0 = df[df['t']==0]\n", 393 | "plt.hist(df_t0['x'], alpha=0.3, label='have no report')\n", 394 | "\n", 395 | "# 描画\n", 396 | "plt.legend()\n", 397 | "plt.show()" 398 | ], 399 | "metadata": { 400 | "colab": { 401 | "base_uri": "https://localhost:8080/", 402 | "height": 430 403 | }, 404 | "id": "lajI38FvjQ8q", 405 | "outputId": "bae823f9-8b0f-4647-8dd6-9f393ccc211d" 406 | }, 407 | "execution_count": null, 408 | "outputs": [ 409 | { 410 | "output_type": "display_data", 411 | "data": { 412 | "text/plain": [ 413 | "
" 414 | ], 415 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhgAAAGdCAYAAABQEQrmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAlDklEQVR4nO3deViVdf7/8ddB4cgqEqCQG6WZK6WmY8zXKEmpbHCsUYscNafSaMwWTWfGFMugJrkq69JqrkkqcKmEFtNyCbfRci+NITVMHPcWEBFkOPfvDy/PrzO4cPADh6PPx3VxXZxz7vvcb++5HZ/dZ7ltlmVZAgAAMMjH0wMAAIBLD4EBAACMIzAAAIBxBAYAADCOwAAAAMYRGAAAwDgCAwAAGEdgAAAA4xrX9wYdDocOHDig4OBg2Wy2+t48AACoBcuydPz4cUVHR8vH58LnJ+o9MA4cOKBWrVrV92YBAIABRUVFatmy5QWXq/fACA4OlnR6wJCQkPrePAAAqIWSkhK1atXK+e/4hdR7YJx5WSQkJITAAADAy9T07Q28yRMAABhHYAAAAOMIDAAAYFy9vwejJqqqqlRZWenpMXCJ8fX1VaNGjTw9BgBcFhpcYJSWlmr//v2yLMvTo+ASY7PZ1LJlSwUFBXl6FAC45DWowKiqqtL+/fsVEBCgiIgIvogLxliWpaNHj2r//v1q3749ZzIAoI41qMCorKyUZVmKiIiQv7+/p8fBJSYiIkJ79+5VZWUlgQEAdaxBvsmTMxeoCxxXAFB/GmRgAAAA70ZgGBAfH6/x48d7egwAABqMBvUejHNZ/u3het1eQqfm9bq9y8nevXsVExOjrVu36rrrrvP0OACAOsIZjMuIZVn673//67Htnzp1ymPbBgDULwLDEIfDoYkTJyosLEwtWrTQtGnTXB7PyMhQ165dFRgYqFatWunhhx9WaWmppNNXqPP399eSJUtc1snJyVFwcLDKysoknb4C7ZAhQxQaGqqwsDAlJSVp796955wpLy9PNptNS5YsUY8ePWS327V27Vo5HA6lpaUpJiZG/v7+io2N1fvvv19tvcWLF6tbt25q0qSJfvOb32jHjh0uz//BBx+oc+fOstvtatu2rWbOnOnyeNu2bfXMM8/oj3/8o0JCQvTggw8qJiZGknT99dfLZrMpPj7end0MAPASBIYhmZmZCgwM1JdffqkXXnhB06dP17Jly5yP+/j46JVXXtHOnTuVmZmplStXauLEiZJOX1l24MCBys7OdnnOrKwsDRo0SAEBAaqsrNSAAQMUHBysNWvWaN26dQoKClJiYuIFzwxMmjRJ6enpys/PV7du3ZSWlqa3335bc+bM0c6dO/XYY4/pvvvu06pVq1zWmzBhgmbOnKmNGzcqIiJCd955p/MbVjdv3qwhQ4Zo2LBh+uabbzRt2jRNmTJFc+fOdXmOF198UbGxsdq6daumTJmir776SpK0fPlyHTx4UIsWLarV/gYANGw2q56/MrOkpERNmzZVcXFxtcu1l5eXq7CwUDExMWrSpInz/ob+Hoz4+HhVVVVpzZo1zvt69eqlW265Renp6Wdd5/3339eYMWN07NgxSVJubq6GDx+uw4cPKyAgQCUlJWrevLlycnKUmJiod999V88++6zy8/OdH7c8deqUQkNDlZubq/79+1fbRl5enm6++Wbl5uYqKSlJklRRUaGwsDAtX75cffr0cS77pz/9SWVlZcrOznauN3/+fA0dOlSS9NNPP6lly5aaO3euhgwZouTkZB09elSff/658zkmTpyoxYsXa+fOnZJOn8G4/vrrlZOT41zGk+/BONfxBahgyYWXaWg63ObpCXCZOd+/32fDGQxDunXr5nI7KipKR44ccd5evny5+vXrpyuvvFLBwcEaPny4fvzxR+fLH7fffrt8fX310UcfSTr98kNISIgSEhIkSdu3b9fu3bsVHBysoKAgBQUFKSwsTOXl5dqzZ895Z+vZs6fz9927d6usrEy33nqr83mCgoL09ttvV3ueXwdIWFiYOnTooPz8fElSfn6+4uLiXJaPi4vTrl27VFVVddZtAwAuH17xKRJv4Ovr63LbZrPJ4XBIOv1f7QMHDtTYsWM1Y8YMhYWFae3atRo9erROnTqlgIAA+fn56e6771Z2draGDRum7OxsDR06VI0bn/6fqLS0VD169FBWVla1bUdERJx3tsDAQOfvZ973sXjxYl155ZUuy9ntdvf/4Bfw620DAC4fBEY92Lx5sxwOh2bOnCkfn9MnjRYuXFhtueTkZN16663auXOnVq5cqWeffdb5WPfu3bVgwQJFRkbW6NTUuXTq1El2u1379u3TTTfddN5lN2zYoNatW0uSfv75Z3333Xfq2LGjJKljx45at26dy/Lr1q3T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\n" 416 | }, 417 | "metadata": {} 418 | } 419 | ] 420 | }, 421 | { 422 | "cell_type": "code", 423 | "source": [ 424 | "# ノック9\n", 425 | "df_t1['y'].mean() - df_t0['y'].mean()" 426 | ], 427 | "metadata": { 428 | "colab": { 429 | "base_uri": "https://localhost:8080/", 430 | "height": 37 431 | }, 432 | "id": "kpwiYdu0hIQ2", 433 | "outputId": "d7313ec2-5d0c-4d2a-af94-f28c7d985bb1" 434 | }, 435 | "execution_count": null, 436 | "outputs": [ 437 | { 438 | "output_type": "execute_result", 439 | "data": { 440 | "text/plain": [ 441 | "4.434285714285714" 442 | ], 443 | "text/latex": "$\\displaystyle 4.43428571428571$" 444 | }, 445 | "metadata": {}, 446 | "execution_count": 16 447 | } 448 | ] 449 | }, 450 | { 451 | "cell_type": "code", 452 | "source": [ 453 | "# ノック10\n", 454 | "from scipy import stats\n", 455 | "\n", 456 | "t, p = stats.ttest_ind(df_t1['y'], df_t0['y'], alternative='greater')\n", 457 | "print(f\"p値: {p}\")" 458 | ], 459 | "metadata": { 460 | "colab": { 461 | "base_uri": "https://localhost:8080/" 462 | }, 463 | "id": "3ELEVxHIhavH", 464 | "outputId": "1a51da1d-72d1-4902-cb23-f701b5102b7c" 465 | }, 466 | "execution_count": null, 467 | "outputs": [ 468 | { 469 | "output_type": "stream", 470 | "name": "stdout", 471 | "text": [ 472 | "p値: 0.007380686135298631\n" 473 | ] 474 | } 475 | ] 476 | }, 477 | { 478 | "cell_type": "code", 479 | "source": [], 480 | "metadata": { 481 | "id": "yEuy2OS3hiKO" 482 | }, 483 | "execution_count": null, 484 | "outputs": [] 485 | } 486 | ] 487 | } --------------------------------------------------------------------------------