diff --git a/clean/print.py b/clean/print.py index e35e603..fc9e8a0 100644 --- a/clean/print.py +++ b/clean/print.py @@ -1,4 +1,5 @@ import pandas as pd +pd.set_option('display.expand_frame_repr', False) pd.set_option('display.max_rows', None) pd.set_option('display.max_columns', None) pd.set_option('display.width', None) diff --git a/data/austin_weather.csv b/data/austin_weather.csv new file mode 100644 index 0000000..99d5f94 --- /dev/null +++ b/data/austin_weather.csv @@ -0,0 +1,13 @@ +STATION,NAME,MLY-CLDD-BASE45,MLY-CLDD-BASE50,MLY-CLDD-BASE55,MLY-CLDD-BASE57,MLY-CLDD-BASE60,MLY-CLDD-BASE70,MLY-CLDD-BASE72,MLY-CLDD-NORMAL,MLY-DUTR-NORMAL,MLY-DUTR-STDDEV,MLY-GRDD-BASE40,MLY-GRDD-BASE45,MLY-GRDD-BASE50,MLY-GRDD-BASE55,MLY-GRDD-BASE57,MLY-GRDD-BASE60,MLY-GRDD-BASE65,MLY-GRDD-BASE70,MLY-GRDD-BASE72,MLY-GRDD-TB4886,MLY-GRDD-TB5086,MLY-HTDD-BASE40,MLY-HTDD-BASE45,MLY-HTDD-BASE50,MLY-HTDD-BASE55,MLY-HTDD-BASE57,MLY-HTDD-BASE60,MLY-HTDD-NORMAL,MLY-PRCP-25PCTL,MLY-PRCP-50PCTL,MLY-PRCP-75PCTL,MLY-PRCP-AVGNDS-GE001HI,MLY-PRCP-AVGNDS-GE010HI,MLY-PRCP-AVGNDS-GE050HI,MLY-PRCP-AVGNDS-GE100HI,MLY-PRCP-NORMAL,MLY-TAVG-NORMAL,MLY-TAVG-STDDEV,MLY-TMAX-AVGNDS-GRTH040,MLY-TMAX-AVGNDS-GRTH050,MLY-TMAX-AVGNDS-GRTH060,MLY-TMAX-AVGNDS-GRTH070,MLY-TMAX-AVGNDS-GRTH080,MLY-TMAX-AVGNDS-GRTH090,MLY-TMAX-AVGNDS-GRTH100,MLY-TMAX-AVGNDS-LSTH032,MLY-TMAX-NORMAL,MLY-TMAX-STDDEV,MLY-TMIN-AVGNDS-LSTH000,MLY-TMIN-AVGNDS-LSTH010,MLY-TMIN-AVGNDS-LSTH020,MLY-TMIN-AVGNDS-LSTH032,MLY-TMIN-AVGNDS-LSTH040,MLY-TMIN-AVGNDS-LSTH050,MLY-TMIN-AVGNDS-LSTH060,MLY-TMIN-AVGNDS-LSTH070,MLY-TMIN-NORMAL,MLY-TMIN-PRBOCC-LSTH016,MLY-TMIN-PRBOCC-LSTH020,MLY-TMIN-PRBOCC-LSTH024,MLY-TMIN-PRBOCC-LSTH028,MLY-TMIN-PRBOCC-LSTH032,MLY-TMIN-PRBOCC-LSTH036,MLY-TMIN-STDDEV,MONTH +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,190,103,50,35,18,1,-7777,5,25.8,3.9,308,190,103,50,35,18,5,1,-7777,244,214,22,59,128,229,277,353,495,0.83,1.48,2.76,7.2,3.9,1.2,0.8,2.20,49.2,3.0,299,25.8,185,90,8,0.0,0.0,0.1,62.1,4.1,0.0,1,15,11.9,203,275,302,310,36.3,298,570,839,967,997,1000,2.9,Jan +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,228,132,68,49,29,3,1,11,25.3,3.8,349,228,132,68,49,29,11,3,1,262,231,10,29,73,148,186,250,373,1.00,2.00,3.23,6.9,3.2,1.2,0.3,2.31,52.1,3.4,273,25.3,195,99,17,0.1,0.0,0.1,64.8,4.6,0.0,0,4,7.9,152,239,264,280,39.4,103,327,614,867,973,999,3.2,Feb +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,446,306,185,146,98,13,6,42,25.2,2.7,596,446,306,185,146,98,42,13,6,428,385,1,6,21,55,77,123,222,1.68,2.61,3.82,9.7,4.5,1.9,0.9,2.78,59.2,3.1,310,30.5,275,194,56,0.2,0.0,0.0,71.8,3.1,0.0,0,1,2.2,96,198,270,308,46.6,10,73,242,494,761,928,3.6,Mar +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,668,519,373,318,240,53,32,130,25.1,4.0,817,668,519,373,318,240,130,53,32,594,543,-7777,-7777,2,6,10,22,63,0.91,1.68,3.04,6.5,3.9,1.2,0.3,2.27,67.3,2.9,300,29.9,296,277,167,1.3,0.2,0.0,79.8,2.8,0.0,0,0,0.2,26,99,193,287,54.7,0,0,0,48,189,453,4.1,Apr +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,936,781,626,564,471,181,134,319,23.0,2.3,1091,936,781,626,564,471,319,181,134,804,744,0,0,0,-7777,-7777,-7777,3,1.73,3.85,6.12,6.2,3.9,1.8,1.0,4.05,75.2,2.4,310,31.0,310,309,273,9.3,0.0,0.0,86.7,2.8,0.0,0,0,0.0,1,15,89,250,63.7,0,0,0,0,0,0,2.5,May +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,1081,931,781,721,631,331,272,481,22.3,2.8,1231,1081,931,781,721,631,481,331,272,894,834,0,0,0,0,0,0,-7777,2.28,3.68,6.65,6.6,4.7,2.7,1.2,4.63,81.0,2.2,300,30.0,300,300,297,20.6,1.4,0.0,92.2,3.2,0.0,0,0,0.0,0,0,5,158,69.9,0,0,0,0,0,0,1.9,Jun +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,1192,1037,882,820,727,417,355,572,23.5,3.1,1347,1192,1037,882,820,727,572,417,355,955,893,0,0,0,0,0,0,0,0.97,2.21,3.20,6.9,4.8,1.7,0.8,2.44,83.4,1.9,310,31.0,310,310,308,26.7,5.6,0.0,95.2,3.2,0.0,0,0,0.0,0,0,0,83,71.7,0,0,0,0,0,0,1.3,Jul +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,1199,1044,889,827,735,425,363,580,24.9,1.8,1354,1199,1044,889,827,735,580,425,363,948,886,0,0,0,0,0,0,0,0.74,1.74,2.58,5.6,3.4,1.5,0.5,2.03,83.7,1.6,310,31.0,310,310,307,28.9,4.9,0.0,96.1,2.3,0.0,0,0,0.0,0,0,2,92,71.3,0,0,0,0,0,0,1.4,Aug +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,985,835,685,625,536,246,193,388,25.1,3.2,1136,985,835,685,625,536,388,246,193,813,754,0,0,-7777,-7777,-7777,-7777,2,0.77,1.95,4.06,5.8,4.0,1.5,0.9,2.54,77.8,2.0,300,30.0,300,298,278,16.8,1.3,0.0,90.4,2.6,0.0,0,0,0.0,0,11,57,226,65.3,0,0,0,0,0,0,2.5,Sep +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,745,591,438,379,295,83,56,175,26.4,4.8,901,745,591,438,379,295,175,83,56,649,595,0,-7777,-7777,3,5,15,49,1.57,3.15,6.50,7.1,4.8,2.2,1.4,4.24,69.0,1.9,310,31.0,308,286,202,5.3,0.0,0.0,82.2,2.3,0.0,0,0,0.0,16,96,199,284,55.9,0,0,3,25,96,264,3.7,Oct +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,412,281,172,136,91,12,7,38,25.8,3.3,555,412,281,172,136,91,38,12,7,403,362,1,8,28,68,92,137,234,1.04,2.56,3.78,7.1,3.6,1.6,0.7,2.94,58.4,2.9,299,29.2,258,180,65,0.1,0.0,0.0,71.4,3.7,0.0,0,1,3.2,102,198,269,297,45.5,2,46,216,530,819,969,2.9,Nov +USW00013904,AUSTIN BERGSTROM INTERNATIONAL AIRPORT TX US,208,119,63,47,29,2,1,10,26.4,3.6,335,208,119,63,47,29,10,2,1,268,234,13,40,106,205,251,326,462,0.51,0.91,2.96,6.6,3.2,1.4,0.4,2.21,50.4,3.5,304,28.5,194,96,16,0.0,0.0,0.0,63.6,3.8,0.0,0,1,11.5,206,271,300,309,37.2,246,499,777,941,991,999,4.0,Dec \ No newline at end of file diff --git a/data/bitcoin_data.csv b/data/bitcoin_data.csv new file mode 100644 index 0000000..cb85906 --- /dev/null +++ b/data/bitcoin_data.csv @@ -0,0 +1,453 @@ +Timestamp,Open,High,Low,Close,Volume (BTC),Volume (Currency),Weighted Price +1/1/17 0:00,966.34,1005,960.53,997.75,6850.59,6764742.06,987.47 +1/2/17 0:00,997.75,1032,990.01,1012.54,8167.38,8273576.99,1013 +1/3/17 0:00,1011.44,1039,999.99,1035.24,9089.66,9276500.31,1020.56 +1/4/17 0:00,1035.51,1139.89,1028.56,1114.92,21562.46,23469644.96,1088.45 +1/5/17 0:00,1114.38,1136.72,885.41,1004.74,36018.86,36211399.53,1005.35 +1/6/17 0:00,1004.73,1026.99,871,893.89,27916.7,25523261.28,914.26 +1/7/17 0:00,894.02,907.05,812.28,906.2,20401.11,17624310.02,863.89 +1/8/17 0:00,906.2,941.81,881.3,909.75,8937.49,8168170.35,913.92 +1/9/17 0:00,909.8,912.87,875,896.23,8716.18,7780059.06,892.6 +1/10/17 0:00,896.09,912.47,889.41,905.05,8535.52,7704271.2,902.61 +1/11/17 0:00,905.24,918.4,755,778.62,35893.77,29459968.9,820.75 +1/12/17 0:00,778.7,832.99,751.34,807.47,17400.14,13632251.44,783.46 +1/13/17 0:00,807.51,831.4,775,825.86,11409.52,9224729.89,808.51 +1/14/17 0:00,825.98,837.76,810,818.27,6614.72,5470214.99,826.98 +1/15/17 0:00,819.52,823.45,808,821.86,4231.46,3455365.87,816.59 +1/16/17 0:00,821.86,835,818.09,831.81,6166.04,5107031.21,828.25 +1/17/17 0:00,831.76,908.5,827,905.99,12264.17,10775497.86,878.62 +1/18/17 0:00,905.95,915.99,851.74,887.7,11181.9,9830117.65,879.11 +1/19/17 0:00,887.69,910,878.89,901.01,11094.6,9929647.2,895 +1/20/17 0:00,902.23,902.43,880,895.8,6618.63,5915865.49,893.82 +1/21/17 0:00,895.81,928,895,921.98,5865.63,5373391.08,916.08 +1/22/17 0:00,921.98,937.74,886.76,923.76,7166.67,6569177.19,916.63 +1/23/17 0:00,923.75,927.57,913.21,913.52,3514.74,3234454.3,920.25 +1/24/17 0:00,913.15,923,881.48,885.47,9405.05,8495975.46,903.34 +1/25/17 0:00,885.47,904.01,884.5,893.43,5291.55,4725942.37,893.11 +1/26/17 0:00,893.25,919.49,892.86,914.83,5164.9,4688102.25,907.69 +1/27/17 0:00,914.95,924.88,908.01,918.02,4830.54,4433746.38,917.86 +1/28/17 0:00,918.02,920.99,913.08,918.6,1175.86,1078884.52,917.53 +1/29/17 0:00,918.6,919.99,910.45,912.01,1349.01,1234746.08,915.29 +1/30/17 0:00,913.12,923,910,919.99,3121.19,2865063.73,917.94 +1/31/17 0:00,919.99,970,917.5,963.99,9507.1,9024041.55,949.19 +2/1/17 0:00,963.99,986.96,962,983.67,6954.4,6748543.97,970.4 +2/2/17 0:00,983.79,1011.65,973.12,1009.17,8269.68,8222686.79,994.32 +2/3/17 0:00,1009.15,1022.64,987.01,1016.99,10928.02,11029881.3,1009.32 +2/4/17 0:00,1015.06,1044.23,1004,1033.18,5752.29,5884560.6,1022.99 +2/5/17 0:00,1033.72,1034.6,1004.7,1011.07,4348.17,4417546.51,1015.96 +2/6/17 0:00,1010.03,1031.94,1005.1,1023.99,5080.85,5188721.52,1021.23 +2/7/17 0:00,1024,1056.25,1021.3,1052.48,5372.13,5605838.11,1043.5 +2/8/17 0:00,1052.48,1070,1025,1050.4,9633.26,10072826.84,1045.63 +2/9/17 0:00,1051.73,1074.69,913.73,986,25150.07,25064862.06,996.61 +2/10/17 0:00,985.71,1010.68,950,996.08,10731.29,10491584.37,977.66 +2/11/17 0:00,995.49,1020,987.62,1012.4,4472.51,4509154.73,1008.19 +2/12/17 0:00,1011.01,1011.97,991.98,1000.73,2684,2690265.37,1002.34 +2/13/17 0:00,1000.73,1007.89,975.1,1000.79,4547.26,4522130.78,994.47 +2/14/17 0:00,1000.74,1019,987.97,1008.88,6761.11,6806110.34,1006.66 +2/15/17 0:00,1008.88,1013.8,1000.97,1011.53,3095.66,3123812.22,1009.09 +2/16/17 0:00,1011.53,1043.21,1010.75,1032.7,5996.1,6170238.86,1029.04 +2/17/17 0:00,1032.91,1064.99,1031.98,1055.46,6085.02,6386285.16,1049.51 +2/18/17 0:00,1055.75,1068.99,1046.14,1056.4,4474.95,4745831.61,1060.53 +2/19/17 0:00,1056.4,1061.9,1039.07,1051.8,2270.85,2388775.41,1051.93 +2/20/17 0:00,1051.8,1089.99,1044.39,1084,3664.37,3902660.35,1065.03 +2/21/17 0:00,1084,1126.86,1077,1124.62,8395.47,9273663.18,1104.6 +2/22/17 0:00,1124.83,1143,1098.16,1130.01,11673.09,13146726.04,1126.24 +2/23/17 0:00,1130.02,1193.92,1120.73,1188.11,11753.24,13558056.03,1153.56 +2/24/17 0:00,1183.53,1220,1091.1,1180.14,19598.23,23023500.2,1174.77 +2/25/17 0:00,1180.05,1184.73,1127,1152.2,6238.44,7226444.77,1158.37 +2/26/17 0:00,1152.11,1184.97,1133,1179.05,3536.49,4127618.08,1167.15 +2/27/17 0:00,1180.46,1197.99,1169,1194.64,4640.77,5511306.9,1187.58 +2/28/17 0:00,1194.64,1209.99,1176.27,1191.21,7562.47,9017082.51,1192.35 +3/1/17 0:00,1191.16,1231,1188.3,1226.39,6013.07,7276140.33,1210.05 +3/2/17 0:00,1228,1283.25,1215,1257.6,7762.73,9679539.51,1246.92 +3/3/17 0:00,1256.32,1298,1255,1285.33,7545.48,9615648.42,1274.36 +3/4/17 0:00,1287.38,1289.55,1230,1260,4951.23,6237601.9,1259.81 +3/5/17 0:00,1260,1275,1240,1273,3026.02,3809526.44,1258.92 +3/6/17 0:00,1269.98,1285,1251,1278.49,4249.65,5420772.93,1275.58 +3/7/17 0:00,1278.49,1281.62,1175.97,1233.05,14450.04,17887749.61,1237.9 +3/8/17 0:00,1233.86,1245.49,1145.5,1150.05,13399.44,15905595.45,1187.03 +3/9/17 0:00,1149.34,1208,1135.01,1190.89,7654.74,9019820.32,1178.33 +3/10/17 0:00,1190.99,1350,975,1116.97,33467.94,38830456.29,1160.23 +3/11/17 0:00,1111.55,1198,1106.51,1176.55,7346.79,8529224.3,1160.95 +3/12/17 0:00,1176.58,1241.85,1170.9,1226.62,5793.91,7003314.41,1208.74 +3/13/17 0:00,1226.42,1249.02,1215.43,1242.46,5637.36,6963555.14,1235.25 +3/14/17 0:00,1242.46,1260,1226.5,1245.86,5745.5,7156458.55,1245.58 +3/15/17 0:00,1245.82,1260,1238.32,1257.32,3930.5,4920843.36,1251.96 +3/16/17 0:00,1258.75,1258.96,1130,1172.62,15246.55,18265147.56,1197.99 +3/17/17 0:00,1172,1173.23,1063,1071.02,16704.57,18711161.79,1120.12 +3/18/17 0:00,1068.16,1099,944.36,969.4,21292.6,21545879.41,1011.89 +3/19/17 0:00,969.4,1063.7,969.4,1017.97,12201.86,12333561.01,1010.79 +3/20/17 0:00,1012.88,1053,1010.01,1035.96,7497.91,7764665.81,1035.58 +3/21/17 0:00,1036.23,1117.9,1034.92,1114.39,11125.5,12068049.72,1084.72 +3/22/17 0:00,1114.39,1114.39,988,1037.56,14521.26,15061002.63,1037.17 +3/23/17 0:00,1037.6,1054.4,1010.69,1029.65,5917,6134595.75,1036.78 +3/24/17 0:00,1030.84,1032,920,929.06,16072.42,15697051.68,976.65 +3/25/17 0:00,928.1,963.36,891.33,956.02,13507.44,12469646.95,923.17 +3/26/17 0:00,956.02,997,937.52,960,9012.92,8743359.97,970.09 +3/27/17 0:00,959.08,1043,952.95,1039.92,8687.09,8753826.09,1007.68 +3/28/17 0:00,1039.09,1068.26,1014.9,1043.99,9115.52,9538479.55,1046.4 +3/29/17 0:00,1042.83,1059.43,1008.16,1035.96,9379.72,9675900.4,1031.58 +3/30/17 0:00,1037.29,1050.17,1017.14,1033.7,8645.38,8919386.18,1031.69 +3/31/17 0:00,1033.79,1081,1031.43,1070.31,12058.79,12711331.62,1054.11 +4/1/17 0:00,1071.34,1097,1061.64,1083.94,5209.13,5617315.77,1078.36 +4/2/17 0:00,1083.95,1100,1066.49,1078.01,7639.9,8274688.32,1083.09 +4/3/17 0:00,1076.59,1152,1076.19,1144.77,11076.86,12487637.63,1127.36 +4/4/17 0:00,1146.42,1162.93,1118.85,1143,7420.87,8471842.7,1141.62 +4/5/17 0:00,1143,1145,1111,1134.58,5588.98,6299621.45,1127.15 +4/6/17 0:00,1134.86,1201.37,1134.36,1190.85,9134.3,10690571.43,1170.38 +4/7/17 0:00,1190.72,1202,1176,1190.66,5450.27,6486716.5,1190.16 +4/8/17 0:00,1190.66,1197.3,1166.66,1184.03,2720.8,3224244.36,1185.04 +4/9/17 0:00,1184.05,1216.87,1173.98,1206.2,4817.42,5764973.91,1196.69 +4/10/17 0:00,1205.2,1219.71,1195,1209.25,3656.82,4416613.87,1207.78 +4/11/17 0:00,1209.99,1229,1198.02,1218.99,3487.75,4229830.76,1212.77 +4/12/17 0:00,1218.99,1224.57,1208,1212.17,3475.19,4224875.8,1215.72 +4/13/17 0:00,1212.16,1219.45,1141,1172.91,7135.3,8410788.79,1178.76 +4/14/17 0:00,1172.56,1193,1142,1170.34,8982.77,10475652.88,1166.19 +4/15/17 0:00,1169.53,1192.5,1165,1173.45,1804.45,2128067.82,1179.34 +4/16/17 0:00,1171,1179.3,1150,1162.31,2663.99,3094769.46,1161.7 +4/17/17 0:00,1162.31,1192.5,1161,1176.54,3568.83,4210491.81,1179.8 +4/18/17 0:00,1176.59,1210,1175.95,1202.58,5514.18,6636782.79,1203.58 +4/19/17 0:00,1202.59,1209.99,1190,1203.98,6046.52,7247878.76,1198.69 +4/20/17 0:00,1203.98,1243.88,1201.66,1234.19,5972.94,7302307.33,1222.57 +4/21/17 0:00,1234.93,1252.32,1231.65,1243.61,5023.04,6236859.58,1241.65 +4/22/17 0:00,1243.6,1247.15,1199,1233.2,4173.28,5126960.21,1228.52 +4/23/17 0:00,1231.85,1248.99,1223.42,1241.99,2604.72,3219987.14,1236.21 +4/24/17 0:00,1242,1254,1234,1253.58,3048.69,3788507.32,1242.67 +4/25/17 0:00,1253.57,1280,1251.07,1269,5249.77,6651231.27,1266.96 +4/26/17 0:00,1271.4,1330,1265,1287.99,8707.64,11266221.16,1293.83 +4/27/17 0:00,1287.92,1342.02,1285,1331.53,6669.99,8810060.91,1320.85 +4/28/17 0:00,1331,1347.02,1299,1330.7,8234.28,10882526.4,1321.61 +4/29/17 0:00,1333.93,1342.8,1316,1333,3927.45,5226089.45,1330.66 +4/30/17 0:00,1336.77,1356,1315.68,1350.21,3536.18,4718587.81,1334.38 +5/1/17 0:00,1348.88,1425,1341.22,1390.86,8604.41,11923132.22,1385.7 +5/2/17 0:00,1390.86,1481.73,1388,1447.75,8920.69,12836209.77,1438.93 +5/3/17 0:00,1447.75,1516.04,1431.02,1503.22,11077.59,16380266.84,1478.69 +5/4/17 0:00,1503.25,1623.01,1444.94,1537.23,19548.53,30115422.58,1540.55 +5/5/17 0:00,1537.36,1609,1495,1514.9,15603.68,24257672.5,1554.61 +5/6/17 0:00,1515.39,1578.97,1505,1558.02,7901.14,12179087.26,1541.43 +5/7/17 0:00,1554.04,1565,1525,1554.01,7667.79,11809645.33,1540.16 +5/8/17 0:00,1554.38,1653.97,1554.38,1649.54,19262.35,30652223.06,1591.3 +5/9/17 0:00,1649.55,1760.4,1616.05,1720.28,16807.73,28741490.64,1710.02 +5/10/17 0:00,1720.26,1794.21,1682,1772.58,11265.38,19697560.66,1748.5 +5/11/17 0:00,1774.52,1892,1745.01,1828.45,14740.22,26997283.11,1831.54 +5/12/17 0:00,1830.85,1832,1650,1691.51,17062.84,29856372.54,1749.79 +5/13/17 0:00,1690.33,1785.82,1601.46,1776.89,10532.23,17797259.46,1689.79 +5/14/17 0:00,1776.8,1815,1753,1784,4816.73,8585557.39,1782.44 +5/15/17 0:00,1782.3,1784,1682.56,1705.48,13316.8,22951575.79,1723.51 +5/16/17 0:00,1706.07,1750,1641.22,1700.01,16554.09,28255380.02,1706.85 +5/17/17 0:00,1700.01,1840.42,1670.01,1782.99,17797.32,31598676.87,1775.47 +5/18/17 0:00,1779,1881.8,1766.33,1878.99,11916.12,21766168.13,1826.61 +5/19/17 0:00,1879,1969.99,1874.99,1958,14124.62,27218796.92,1927.05 +5/20/17 0:00,1959.09,2021,1914,2013.99,12309.95,24248476.49,1969.83 +5/21/17 0:00,2013.99,2063.11,1961.52,2017.55,6755.83,13647083.74,2020.04 +5/22/17 0:00,2017.55,2230.34,2001,2099.97,16338.54,34535101.53,2113.72 +5/23/17 0:00,2088.76,2275,2088.45,2264.23,14138.92,31139771.52,2202.42 +5/24/17 0:00,2265.9,2481.75,2264.64,2420.29,22144.6,52782234.68,2383.53 +5/25/17 0:00,2420.29,2760.1,2221,2292.53,32964.76,83028907.05,2518.72 +5/26/17 0:00,2277.01,2599.12,2060,2279.82,28326.82,66466402.58,2346.41 +5/27/17 0:00,2280.7,2339.94,1850,2042,26216.28,54113571.78,2064.12 +5/28/17 0:00,2042.89,2313.96,2041.48,2178.81,15375.22,33655092.72,2188.92 +5/29/17 0:00,2172.54,2350,2110,2292.1,12129.28,27376000.71,2257.02 +5/30/17 0:00,2290.18,2339.08,2160,2203.51,13888.85,31434633.58,2263.3 +5/31/17 0:00,2201.7,2334,2154.28,2298.01,16279.29,36862481.13,2264.38 +6/1/17 0:00,2298.01,2456.39,2296.81,2413.63,18401.66,43990417.87,2390.57 +6/2/17 0:00,2413.58,2489,2370.03,2488.94,12428.7,30186115.46,2428.74 +6/3/17 0:00,2488.94,2584.34,2445,2540.94,10810.58,27295110.64,2524.85 +6/4/17 0:00,2538.1,2569,2460,2530.27,8828.62,22263365.05,2521.73 +6/5/17 0:00,2530.27,2699.35,2525.28,2698,12221.44,31919212.32,2611.74 +6/6/17 0:00,2698,2933,2689.4,2880.74,26695.67,75249106.78,2818.78 +6/7/17 0:00,2875.71,2893.28,2612.5,2683.03,16967.04,47205426.44,2782.18 +6/8/17 0:00,2680.24,2815,2613.13,2806,13251.41,36430027.3,2749.14 +6/9/17 0:00,2805.46,2868.23,2780.43,2822.32,8036.31,22701156.24,2824.82 +6/10/17 0:00,2818,2912.98,2800,2899.99,9593.36,27434766.12,2859.77 +6/11/17 0:00,2899.01,2967.46,2861.53,2954.22,6830.61,19889995.68,2911.89 +6/12/17 0:00,2954.23,2980,2480.03,2667.06,31534.95,85799286.22,2720.77 +6/13/17 0:00,2656.97,2783.62,2638.62,2703.02,16275.83,44217458.2,2716.76 +6/14/17 0:00,2705.99,2801,2320,2450,29478.82,76114991.86,2582.02 +6/15/17 0:00,2451.42,2516.2,2120,2424.91,36751.09,84952914.56,2311.58 +6/16/17 0:00,2424.96,2540,2307.66,2484.68,13802.39,33831741.34,2451.15 +6/17/17 0:00,2484.68,2674.4,2420.53,2630,11142.99,28569796.41,2563.93 +6/18/17 0:00,2630.06,2665,2460.62,2516.98,9424.23,24023680.66,2549.14 +6/19/17 0:00,2516.98,2598,2480.96,2598,10570.67,27011860.51,2555.36 +6/20/17 0:00,2598,2783,2581,2740,15891.7,42538164.74,2676.75 +6/21/17 0:00,2734.03,2789,2611,2657.04,15676.32,42304860.31,2698.65 +6/22/17 0:00,2658.67,2740,2594.61,2713.48,10792.79,28955845.86,2682.89 +6/23/17 0:00,2713.48,2745,2657.46,2685.05,8232.48,22348019.56,2714.62 +6/24/17 0:00,2685.05,2724.96,2512.13,2557.66,13342.82,34944802.73,2619 +6/25/17 0:00,2557.66,2635.72,2432,2502.03,10339.57,26249953.89,2538.78 +6/26/17 0:00,2502.26,2550.03,2315.01,2421.22,22094.21,54096000.65,2448.42 +6/27/17 0:00,2421.21,2565,2291,2565,19129.6,45774590.05,2392.87 +6/28/17 0:00,2565,2593,2468.01,2559.9,12274.55,31106035.77,2534.19 +6/29/17 0:00,2550.99,2594.78,2500.31,2541.59,8125.38,20771078.34,2556.32 +6/30/17 0:00,2538.41,2564.58,2451,2465.49,8715.72,21948643.03,2518.28 +7/1/17 0:00,2465.48,2517.11,2390,2412.41,8885.89,21750491.24,2447.76 +7/2/17 0:00,2421.3,2528.72,2374.34,2504.37,8744.53,21386273.68,2445.67 +7/3/17 0:00,2504.81,2595,2472.68,2550.47,11520.71,29213705.74,2535.76 +7/4/17 0:00,2540.07,2639.47,2540.07,2596.12,9662.76,25107482.88,2598.38 +7/5/17 0:00,2594.52,2623,2530.1,2602.9,10882.84,27950344.7,2568.3 +7/6/17 0:00,2598.37,2614,2522,2600.39,8333.98,21529601.71,2583.35 +7/7/17 0:00,2599.01,2605,2475,2501.46,9430.62,23870564.36,2531.18 +7/8/17 0:00,2501.46,2555,2462,2550.07,5405.89,13584489.52,2512.9 +7/9/17 0:00,2550.13,2564.65,2500.5,2502.28,4483.14,11362427.97,2534.48 +7/10/17 0:00,2504,2527.88,2261.85,2323.45,17296.34,41650843.77,2408.07 +7/11/17 0:00,2326.12,2399,2242.62,2305.98,17580.96,41145883.94,2340.37 +7/12/17 0:00,2301.55,2408.84,2239.54,2388,12883.55,30256255.57,2348.44 +7/13/17 0:00,2383.97,2425.16,2312.93,2339.99,8429.85,19957908.68,2367.53 +7/14/17 0:00,2340,2357.84,2140,2213.37,12659.02,28326253.11,2237.63 +7/15/17 0:00,2209.44,2219.99,1967.65,1970.51,19886.68,40927009.37,2058.01 +7/16/17 0:00,1970.51,2044.44,1830,1917.63,25562.71,49010482.23,1917.27 +7/17/17 0:00,1917.72,2229.97,1910.57,2226,26448.5,55057438.35,2081.68 +7/18/17 0:00,2226,2392,2164,2303.71,25204.49,57683997.07,2288.64 +7/19/17 0:00,2308.82,2402.5,2223,2265.21,17009.88,39248446.86,2307.39 +7/20/17 0:00,2265.51,2938,2265.51,2875.03,30989.89,80388738.23,2594.03 +7/21/17 0:00,2880,2887.45,2611.39,2670,20724.16,56456355.34,2724.18 +7/22/17 0:00,2667.01,2882,2644.59,2832.71,12819.63,35805144.41,2792.99 +7/23/17 0:00,2824.82,2855,2640,2749.02,11001.96,30310788.74,2755.03 +7/24/17 0:00,2756.8,2800,2701,2759.98,10001.92,27562701.02,2755.74 +7/25/17 0:00,2759.95,2775.79,2450,2564.82,21326.55,55120720.9,2584.61 +7/26/17 0:00,2564.74,2608.96,2400,2524.99,17713.67,44091449.21,2489.12 +7/27/17 0:00,2524.99,2695,2509.63,2666.33,11826.48,30470923.86,2576.5 +7/28/17 0:00,2666.33,2825,2655.82,2777.01,14069.5,38675840.62,2748.91 +7/29/17 0:00,2777.01,2785.65,2631.78,2680.56,10782.22,29159800.95,2704.43 +7/30/17 0:00,2681.6,2774.45,2569.69,2742.37,9678.16,25848893.08,2670.85 +7/31/17 0:00,2745.76,2889.99,2680.01,2855.81,11114.34,30777296.21,2769.15 +8/1/17 0:00,2855.81,2929.17,2615,2731,12525.08,34322796.56,2740.33 +8/2/17 0:00,2732,2760,2650,2703.51,9486.63,25701106.1,2709.19 +8/3/17 0:00,2703.51,2807.44,2698.83,2793.37,7963.7,21938304,2754.79 +8/4/17 0:00,2793.34,2877.52,2765.91,2855,7635.82,21650087.64,2835.33 +8/5/17 0:00,2851.01,3339.66,2848.32,3263.62,16996.27,53861926.03,3169.04 +8/6/17 0:00,3263.51,3296.51,3146.1,3222.75,5998.74,19412655.97,3236.12 +8/7/17 0:00,3216.78,3430,3186,3387.55,12046.12,40225852,3339.32 +8/8/17 0:00,3387.54,3490,3300,3412.41,15835.37,54054824.25,3413.55 +8/9/17 0:00,3408.46,3423.1,3178.72,3342.99,14286.84,47356464.4,3314.69 +8/10/17 0:00,3342.99,3448,3311.17,3413.03,9031.12,30658440.51,3394.75 +8/11/17 0:00,3410,3705,3390.67,3645.06,11927.37,41888022.26,3511.92 +8/12/17 0:00,3651.74,3934,3586.95,3855.1,12351.07,46799798.4,3789.13 +8/13/17 0:00,3855.04,4190,3841.71,4053.87,15889.83,63672103.45,4007.1 +8/14/17 0:00,4053.87,4329.43,3964.96,4306.23,14212.3,59836002.81,4210.15 +8/15/17 0:00,4320.95,4400,3800,4155.67,25515.72,104651369.1,4101.45 +8/16/17 0:00,4154.99,4379.78,3926.06,4378.84,12923.64,54194325.8,4193.43 +8/17/17 0:00,4361.99,4480,4167.21,4276.5,14573.19,63228604.19,4338.69 +8/18/17 0:00,4260.47,4368,3964.96,4100,17516.99,73224029.24,4180.17 +8/19/17 0:00,4100,4188,3900,4099.55,15036.18,60604905.58,4030.6 +8/20/17 0:00,4091.99,4125.95,4000,4058.68,6237.97,25289638.6,4054.14 +8/21/17 0:00,4058.64,4080,3949.78,3987.52,9782.06,39203908.96,4007.74 +8/22/17 0:00,3987.51,4139.31,3600,4085,23522.76,91600325.72,3894.12 +8/23/17 0:00,4078,4248.97,4051.94,4108.12,14979.4,62117291.56,4146.85 +8/24/17 0:00,4121.78,4350,4082.57,4300.34,10782.69,45174068.67,4189.5 +8/25/17 0:00,4308.8,4449.98,4270,4355.98,9699.61,42274063.39,4358.33 +8/26/17 0:00,4348.17,4369.78,4232.43,4333.38,6559.67,28227915.28,4303.25 +8/27/17 0:00,4333.38,4393.3,4290.32,4337.68,3979.12,17263967.23,4338.63 +8/28/17 0:00,4329.91,4399.72,4169.01,4379.99,8641,37077203.39,4290.85 +8/29/17 0:00,4385,4649.78,4336.26,4578.82,11879.64,53491168.4,4502.76 +8/30/17 0:00,4578.82,4642.22,4479,4573.2,8720.04,39800539.16,4564.26 +8/31/17 0:00,4573.15,4765.21,4566.66,4734.26,8911.41,41726210.49,4682.33 +9/1/17 0:00,4734.26,4935,4671.09,4921.7,15367.53,73889667.5,4808.17 +9/2/17 0:00,4921.71,4979.9,4488.5,4599.9,16977.79,79492706.8,4682.16 +9/3/17 0:00,4599.9,4700,4385,4606.26,11224.91,51112035,4553.45 +9/4/17 0:00,4603.68,4613.97,4058.5,4277,25069.13,107792606.9,4299.82 +9/5/17 0:00,4282.53,4474.88,4001.93,4396.52,20884.22,88444473.15,4234.99 +9/6/17 0:00,4397.38,4649.23,4356.42,4605.8,16634.1,75306805.37,4527.25 +9/7/17 0:00,4605.81,4674.34,4475,4615,9254.85,42435328.99,4585.2 +9/8/17 0:00,4615,4679.97,4125.99,4312,23693.3,103569423.2,4371.25 +9/9/17 0:00,4327.41,4379.78,4164,4308.72,9974.39,42689334.62,4279.9 +9/10/17 0:00,4322.44,4322.44,4010,4226.22,14724.2,61040452.05,4145.59 +9/11/17 0:00,4226.21,4353.49,4092.4,4207.31,11191.6,47148979.98,4212.89 +9/12/17 0:00,4198.89,4377.65,4080,4172.56,13294.44,56268039.79,4232.45 +9/13/17 0:00,4170.6,4179.14,3720.01,3865.34,29636.38,115516897.1,3897.81 +9/14/17 0:00,3861.89,3921.74,3210,3227.79,41319.4,146101729.7,3535.91 +9/15/17 0:00,3227.79,3820,2972.01,3700.01,60278.95,203168386,3370.47 +9/16/17 0:00,3699.89,3872.9,3500,3678.93,23158.23,84905914.76,3666.34 +9/17/17 0:00,3669.07,3772.52,3463,3662.99,11770.22,42657776.56,3624.21 +9/18/17 0:00,3662.95,4122.7,3659.42,4101.6,17207.6,67988469.46,3951.07 +9/19/17 0:00,4102,4119.7,3848.35,3888.8,15278.93,60404491.57,3953.45 +9/20/17 0:00,3888.8,4050,3820.56,3874.46,11660.27,45847238.86,3931.92 +9/21/17 0:00,3864,3914,3573,3617.05,17904.3,67012342.18,3742.81 +9/22/17 0:00,3607.83,3761.84,3514,3612.18,15007.74,54271184.82,3616.21 +9/23/17 0:00,3611.91,3810.25,3552,3779.17,10123.23,37609099.77,3715.13 +9/24/17 0:00,3781.13,3783.25,3615,3664.22,6508.72,24009707.82,3688.85 +9/25/17 0:00,3667.01,3968.59,3658.39,3918,14979.78,57632408.09,3847.35 +9/26/17 0:00,3920.66,3970,3850.61,3888.03,10014.62,39220959.7,3916.37 +9/27/17 0:00,3883.95,4226.73,3870,4199.29,15075.84,61255648.53,4063.17 +9/28/17 0:00,4202.34,4270.01,4123.5,4184.84,9625.93,40309035.77,4187.55 +9/29/17 0:00,4183.47,4227.62,4022.02,4164.82,12191.93,50336312.65,4128.66 +9/30/17 0:00,4162.04,4349,4154.28,4326.09,7496.78,32073448.82,4278.3 +10/1/17 0:00,4326.09,4377.22,4216,4377.22,7211.34,30871704.79,4281 +10/2/17 0:00,4369.33,4453,4352,4391.48,8259.82,36293751.01,4394.01 +10/3/17 0:00,4391.41,4425,4218,4315.83,12468.06,53551605.48,4295.1 +10/4/17 0:00,4315.73,4343,4170.07,4219.53,8518.99,36068254.94,4233.86 +10/5/17 0:00,4219.74,4358.97,4137.96,4301.09,8419.96,35912272.84,4265.13 +10/6/17 0:00,4301.09,4425,4278.4,4362.95,8377.3,36552658.15,4363.3 +10/7/17 0:00,4356.09,4463,4312.82,4423.3,4646.41,20320065.24,4373.29 +10/8/17 0:00,4422.72,4612,4404.5,4597.98,10083.87,45490443.57,4511.21 +10/9/17 0:00,4597.97,4865,4541,4764.7,12923.67,60473207.29,4679.26 +10/10/17 0:00,4761.67,4909.97,4700,4749.29,11666.02,56088789.35,4807.87 +10/11/17 0:00,4747.9,4869.78,4700,4822.01,9866.9,47256315.42,4789.38 +10/12/17 0:00,4822.01,5445,4793.66,5445,19916.23,102559923.2,5149.57 +10/13/17 0:00,5444,5846.43,5380,5653.6,27827.38,155848051.9,5600.53 +10/14/17 0:00,5653.58,5817.34,5558.26,5801.29,8410.94,47779356.45,5680.62 +10/15/17 0:00,5795.01,5830,5415,5679.7,11542.95,64464008.42,5584.71 +10/16/17 0:00,5683.92,5807.11,5548,5745.72,9066.8,51508749.11,5681.03 +10/17/17 0:00,5752.2,5776.31,5506.78,5597.31,9105.28,51035573.57,5605.05 +10/18/17 0:00,5591.97,5617.75,5101.36,5582.05,18961.68,101657249.6,5361.2 +10/19/17 0:00,5572.64,5735.14,5512.06,5698.69,9919.84,56087316.56,5654.06 +10/20/17 0:00,5700,6074,5589.8,5977.29,15109.06,89014299.88,5891.45 +10/21/17 0:00,5977.26,6180,5871,6013.46,15357.42,92912504.83,6050.01 +10/22/17 0:00,6010.85,6071.07,5700,5969,12232.52,71898806.16,5877.68 +10/23/17 0:00,5967.38,6045.34,5617.75,5871.17,15331.64,89530043.16,5839.56 +10/24/17 0:00,5869.82,5870,5453.01,5523.4,17286.72,97560230.19,5643.65 +10/25/17 0:00,5518.49,5748,5366,5735.88,12349.11,68370411.13,5536.47 +10/26/17 0:00,5741.35,5988,5683,5890,11788.3,69079451.81,5860 +10/27/17 0:00,5889.99,5994.06,5674.06,5771.89,11911.04,69053794.44,5797.46 +10/28/17 0:00,5773.03,5875.66,5646.18,5730.69,5926.3,33993472.69,5736.04 +10/29/17 0:00,5731.7,6316.85,5683,6137.37,16086.63,96361934.29,5990.19 +10/30/17 0:00,6133.01,6229.77,6024.03,6119.99,9574.64,58637080.14,6124.2 +10/31/17 0:00,6120,6449.78,6072.81,6434.21,13423.31,84354477.98,6284.18 +11/1/17 0:00,6434.24,6756.36,6340.01,6741.59,12967.22,84891427.3,6546.62 +11/2/17 0:00,6745.04,7354.1,6700,7030,26514.65,184979262.3,6976.49 +11/3/17 0:00,7030,7500,6925.22,7146.82,15999.78,116037544.2,7252.44 +11/4/17 0:00,7145.24,7569.9,6994,7388.83,9200.11,66730277.42,7253.2 +11/5/17 0:00,7388.79,7590,7275.16,7372.72,9218.33,68631151.85,7445.08 +11/6/17 0:00,7373.3,7421.39,6922.07,6967.68,19323.13,138542391.8,7169.77 +11/7/17 0:00,6967.64,7244.69,6945,7130.28,11634.27,82632999.59,7102.55 +11/8/17 0:00,7131.38,7888,7080.01,7450.32,24679.72,183501327.1,7435.31 +11/9/17 0:00,7465.06,7490,7061.2,7148,14799.27,106985408.5,7229.1 +11/10/17 0:00,7150.61,7343.18,6429.44,6588.18,26614.28,181284361.1,6811.55 +11/11/17 0:00,6588.18,6820,6218,6355.13,14942.7,96800268.09,6478.1 +11/12/17 0:00,6355.13,6488.88,5555.55,5870.37,37315.16,225565297.5,6044.87 +11/13/17 0:00,5870.03,6775.75,5846,6525.17,27202.28,173971383.6,6395.47 +11/14/17 0:00,6524.69,6750,6466.88,6609,12072.05,79508390.54,6586.15 +11/15/17 0:00,6609,7350,6609,7294,16869.9,119171192.4,7064.13 +11/16/17 0:00,7294,7976.79,7120.85,7846.96,19272.37,145738327.5,7562.03 +11/17/17 0:00,7846.96,7997,7528.5,7674.99,17714.37,138124189.4,7797.3 +11/18/17 0:00,7675,7858,7431.54,7771.03,7326.81,56264967.21,7679.33 +11/19/17 0:00,7775.55,8087.35,7675,8016.58,8307.78,65332064.65,7863.96 +11/20/17 0:00,8016.58,8269.99,7900,8226.17,8179.46,66366007.81,8113.74 +11/21/17 0:00,8226.14,8354.46,7770,8095.23,13686.51,110811263.5,8096.38 +11/22/17 0:00,8095.19,8310.89,8045.76,8214.69,8078.58,66215711.71,8196.45 +11/23/17 0:00,8214.69,8279.76,7980,7989,7811.79,63644740.39,8147.26 +11/24/17 0:00,7988.96,8340,7876,8199.19,9289.99,75751868.75,8154.14 +11/25/17 0:00,8199.83,8737,8114.78,8717.99,11611.67,97628924.79,8407.83 +11/26/17 0:00,8718,9366.6,8538.2,9271.06,12021.22,108525815.5,9027.86 +11/27/17 0:00,9278.99,9721.7,9267,9708.07,13272.45,126458117.7,9527.86 +11/28/17 0:00,9708.06,9968,9582.25,9868.82,11214.93,110496755.9,9852.65 +11/29/17 0:00,9877.63,11395,9250,9824.68,33432.34,346949562.2,10377.66 +11/30/17 0:00,9833.7,10618.29,9000,9947.67,25433.46,247093850.8,9715.31 +12/1/17 0:00,9927.29,10949.89,9370.11,10840.45,16708.03,171881760.6,10287.37 +12/2/17 0:00,10840.45,11200,10637.69,10872,9267.16,101270084.4,10927.84 +12/3/17 0:00,10875.68,11800.01,10513.16,11250,14238.53,160176290.4,11249.5 +12/4/17 0:00,11250,11613.07,10850,11613.07,13621.48,154122917.9,11314.7 +12/5/17 0:00,11613.07,11850,11384.25,11677,11875.03,138370076.2,11652.18 +12/6/17 0:00,11676.99,13700,11659.8,13623.5,19784.87,250560790.3,12664.26 +12/7/17 0:00,13623,16615.62,13085.9,16599.99,25787.68,382694044.1,14840.19 +12/8/17 0:00,16599.99,16666.66,13482.42,15800,25473.4,389366035.1,15285.2 +12/9/17 0:00,15799.87,15998.5,12701.05,14607.49,16587.47,238909072.6,14402.98 +12/10/17 0:00,14601.01,15385,13011,14691,18487.98,263150668,14233.61 +12/11/17 0:00,14690.99,17270,14677.19,16470,16583.72,270203844.3,16293.32 +12/12/17 0:00,16470,17428.42,15967.29,16650.01,13517.89,227842348.7,16854.87 +12/13/17 0:00,16650.01,17107.03,15497.69,16250,17136.71,281640493.8,16434.93 +12/14/17 0:00,16245.02,16830.45,15852.69,16404.99,13409.52,219263192.5,16351.3 +12/15/17 0:00,16404.99,17934,16337.19,17471.5,18998.39,329337014.8,17335 +12/16/17 0:00,17477.98,19377,17269.99,19187.78,9761.22,179906034.6,18430.69 +12/17/17 0:00,19187.78,19666,18465,18953,9749.25,186310530.8,19110.24 +12/18/17 0:00,18953,19220,17835.2,18940.57,14678.94,273533539.4,18634.42 +12/19/17 0:00,18940.58,19160.79,16831.26,17700,21528.14,387206242.4,17986.05 +12/20/17 0:00,17700,17950,15343.04,16466.98,31172.23,521350550.6,16724.84 +12/21/17 0:00,16466.98,17281.17,15005,15600.01,20377.86,326730689.7,16033.61 +12/22/17 0:00,15600,15795.61,11159.93,14009.79,57444.89,772143020.6,13441.46 +12/23/17 0:00,13980,15756.22,13496.48,14619,21786.41,322120599.6,14785.39 +12/24/17 0:00,14619,14619.1,12488,14157.87,18519.49,250476423.6,13525.02 +12/25/17 0:00,14107.87,14650,13210,13911.28,11564.54,161347357.1,13951.9 +12/26/17 0:00,13925.5,16147.87,13746.95,15764.44,15051.16,230922569.2,15342.51 +12/27/17 0:00,15764.45,16480.52,14484,15364.93,15643.75,241860985.1,15460.55 +12/28/17 0:00,15390.05,15474.19,13500,14470.07,16557.22,234428578.5,14158.69 +12/29/17 0:00,14436.99,15111,13998,14340,13505.7,195727638.8,14492.22 +12/30/17 0:00,14351,14463.28,12050,12640,21749.67,285985550.3,13148.96 +12/31/17 0:00,12640,14296.06,12491.21,13880,11583.42,154552644.5,13342.58 +1/1/18 0:00,13880,13941.75,12801.38,13443.41,7688.03,102815718.5,13373.48 +1/2/18 0:00,13394.2,15257.53,12910.58,14678.94,16299.67,229138844.1,14057.88 +1/3/18 0:00,14670.96,15500,14546.28,15155.62,12275,183639413.7,14960.44 +1/4/18 0:00,15155.62,15430.27,14192.37,15143.67,15004.02,222160244.5,14806.72 +1/5/18 0:00,15143.67,17200,14810,16928,16248.91,259695892.9,15982.35 +1/6/18 0:00,16927.99,17234.99,16220,17149.67,9501.02,158389594.5,16670.8 +1/7/18 0:00,17142.43,17149.97,15707.16,16124.02,8632.81,141555094.2,16397.33 +1/8/18 0:00,16173.98,16300,13900,14999.99,16676.35,251877784.1,15103.89 +1/9/18 0:00,14999.99,15367.18,14123.97,14403.51,13913.52,204579121.6,14703.62 +1/10/18 0:00,14403.51,14900,13412,14890.02,18479.01,261210687,14135.53 +1/11/18 0:00,14899.99,14973.07,12800,13243.83,19630.08,266846190.8,13593.74 +1/12/18 0:00,13249.99,14152.19,12807.27,13781.41,13433.08,183399343.5,13652.81 +1/13/18 0:00,13829.28,14619.1,13789.42,14197.78,7488.99,106595650.1,14233.65 +1/14/18 0:00,14197.78,14365.81,13072.22,13647.99,7588.64,102783826.7,13544.44 +1/15/18 0:00,13647.99,14394.36,13429.25,13607.04,9444.64,131049852.4,13875.59 +1/16/18 0:00,13581.66,13607.04,10162,11386.34,38789.88,457725763.4,11800.13 +1/17/18 0:00,11393.97,11794.07,9222,11191.35,41356.19,433168120.1,10474.08 +1/18/18 0:00,11199,12146,10693,11247.57,22195.26,256082650,11537.72 +1/19/18 0:00,11290.9,12050.39,11025.18,11552,13203.26,151834406.4,11499.77 +1/20/18 0:00,11560.82,13052.12,11515.94,12775.99,10324.06,128912075.5,12486.57 +1/21/18 0:00,12782.99,12791.88,11100,11558.87,11596.44,137150604.6,11826.96 +1/22/18 0:00,11558.87,11910.78,10028.41,10808.99,17067.73,186028930.6,10899.45 +1/23/18 0:00,10810,11409.87,9927.54,10851.82,17250.18,184369293.7,10687.97 +1/24/18 0:00,10848.99,11500,10488.13,11400.96,11646.79,128825119.7,11061 +1/25/18 0:00,11400.98,11741.82,10868.57,11155.54,10212.92,115421975,11301.56 +1/26/18 0:00,11140.01,11635,10263.32,11092.95,15074.67,164020352.5,10880.53 +1/27/18 0:00,11093.74,11630.47,10815.84,11446.54,10309.81,116376809.5,11287.97 +1/28/18 0:00,11446.54,11989.15,11360.52,11685.58,9956.09,116531522.5,11704.54 +1/29/18 0:00,11685.58,11820.01,10991,11162.62,9996.36,112806531.8,11284.76 +1/30/18 0:00,11162.62,11222.36,9731.2,9971,21082.19,219169216.4,10395.94 +1/31/18 0:00,9971,10324,9514.96,10149,12743.51,126723437.3,9944.16 +2/1/18 0:00,10148.99,10187.56,8455,8998.99,26356.59,243067799.6,9222.28 +2/2/18 0:00,9010.87,9096.79,7625.25,8838.83,44406.02,373423805.1,8409.31 +2/3/18 0:00,8838.29,9491.2,8170.71,9225.86,16208.37,144713399.5,8928.31 +2/4/18 0:00,9225.31,9350.09,7825,8191,19110.67,162005632.6,8477.23 +2/5/18 0:00,8190.78,8335.56,6600,6874.27,46544.43,342210634.7,7352.34 +2/6/18 0:00,6878.65,8150,5920.72,7737.37,70961.37,487504446,6870 +2/7/18 0:00,7737.26,8649,7213.8,7588.01,32640.89,260674865.8,7986.14 +2/8/18 0:00,7588.01,8644.36,7565.5,8259.76,22746.39,187157997.7,8228.03 +2/9/18 0:00,8259.42,8779.62,7753.32,8693.98,18418.12,152040059.9,8254.92 +2/10/18 0:00,8693.98,9090.8,8170.86,8560,14670.56,127082570.7,8662.42 +2/11/18 0:00,8560,8560,7820,8067,12711.79,103542540.6,8145.4 +2/12/18 0:00,8077.25,8995,8067,8899,15071.04,130557481.6,8662.8 +2/13/18 0:00,8891.2,8951.89,8360.13,8522.99,11374.52,97689771.64,8588.47 +2/14/18 0:00,8504.57,9515,8504.57,9490.98,17468.74,158839393.3,9092.78 +2/15/18 0:00,9490.98,10234,9350,10018,21036.34,206814744.9,9831.31 +2/16/18 0:00,10011.3,10300,9707.51,10196,11857.64,118860367.7,10023.95 +2/17/18 0:00,10203.14,11135.83,10053.5,11101,14511.17,155314935.2,10703.13 +2/18/18 0:00,11101,11300,10153.15,10421.06,17623.08,188724919.3,10708.96 +2/19/18 0:00,10433.68,11262.48,10307.51,11173,11698.26,127802568.1,10924.92 +2/20/18 0:00,11159.12,11780,11080.37,11233.41,15880.91,182156478,11470.15 +2/21/18 0:00,11233.42,11275.74,10256,10449.4,19959.68,215353691.9,10789.44 +2/22/18 0:00,10446.79,10935,9731.2,9843.34,20204.69,206051152.4,10198.18 +2/23/18 0:00,9843.33,10405.3,9600,10166.1,16044.04,160782973.1,10021.35 +2/24/18 0:00,10135.2,10540.63,9373.48,9689.99,13972.71,137805304.5,9862.46 +2/25/18 0:00,9688.26,9883.41,9260,9590.04,11037.18,105367249.3,9546.58 +2/26/18 0:00,9595.99,10461.97,9376.34,10324.7,16156.81,162306362.4,10045.7 +2/27/18 0:00,10329.99,10850,10150,10566.3,10408.48,110086762.8,10576.64 +2/28/18 0:00,10572.49,11064.75,10255.07,10314.9,10490.75,111457734.8,10624.38 +3/1/18 0:00,10314.99,11090,10223.41,10903.13,9481.67,101712406.7,10727.27 +3/2/18 0:00,10917.37,11175,10774.01,11029.99,8329.1,91455982.5,10980.3 +3/3/18 0:00,11032.81,11503.24,11022.85,11445,7786.27,88241259.78,11332.93 +3/4/18 0:00,11445,11511,11054.91,11463.27,6831.63,77060624.28,11279.98 +3/5/18 0:00,11479.68,11688,11383.66,11419.24,9933.68,114638102.2,11540.35 +3/6/18 0:00,11417.39,11420.01,10560.19,10723.76,14734.42,161507885.7,10961.27 +3/7/18 0:00,10723.01,10911.78,9450,9913.03,26116.51,264099759.8,10112.37 +3/8/18 0:00,9904.52,10150,9078.95,9285.32,22522.43,217370120.9,9651.27 +3/9/18 0:00,9293.06,9420.39,8366,9230,29014.17,257069817.6,8860.15 +3/10/18 0:00,9228.83,9514.96,8697,8791.47,12886.59,118146982.5,9168.21 +3/11/18 0:00,8795.04,9768.37,8450,9535.04,16407.54,149758874.8,9127.44 +3/12/18 0:00,9535.04,9892,8742.07,9120.75,18751.02,175103380.1,9338.34 +3/13/18 0:00,9115.24,9482.79,8830,9142.32,16001.48,146461539.3,9153 +3/14/18 0:00,9152.07,9356.14,7948,8196.69,21191.02,182210730.9,8598.49 +3/15/18 0:00,8195.99,8425,7682,8265.05,18387.61,148610946.9,8082.12 +3/16/18 0:00,8265.05,8613.06,7914.08,8258.54,16498.62,137219222.8,8317.01 +3/17/18 0:00,8258.54,8356.4,7730.23,7860.83,12048.67,97294029.18,8075.09 +3/18/18 0:00,7860.83,8324.92,7325.37,8188.24,19547.36,150315447.6,7689.81 +3/19/18 0:00,8205.55,8718.74,8114.17,8596.93,19396.09,162448296.2,8375.31 +3/20/18 0:00,8596.79,9051,8313.01,8904.02,13454.82,116496171,8658.32 +3/21/18 0:00,8904.02,9188.1,8754.83,8893.79,12101,108594771.1,8974.03 +3/22/18 0:00,8892.18,9099.59,8503.52,8704.67,12587.63,109923828.1,8732.68 +3/23/18 0:00,8708.52,8920.79,8265,8920.79,13749.78,117134344.5,8518.99 +3/24/18 0:00,8917.99,9020,8505,8547,9731.98,85811618.32,8817.49 +3/25/18 0:00,8541.96,8680,8368.63,8453.9,9155.91,78013217.69,8520.53 +3/26/18 0:00,8451.12,8500,7831.15,8149.66,17693.42,145246518.5,8209.07 +3/27/18 0:00,8152.26,8211.62,7742.11,7791.7,12385.25,98488415.19,7952.07 +3/28/18 0:00,7791.69,8104.98,7723.03,8039.86,4732.51,37497616.99,7923.4 \ No newline at end of file diff --git a/data/btc-market-price.csv b/data/btc-market-price.csv new file mode 100644 index 0000000..4046108 --- /dev/null +++ b/data/btc-market-price.csv @@ -0,0 +1,365 @@ +2017-04-02 00:00:00,1099.169125 +2017-04-03 00:00:00,1141.813 +2017-04-04 00:00:00,1141.6003625 +2017-04-05 00:00:00,1133.0793142857142 +2017-04-06 00:00:00,1196.3079375 +2017-04-07 00:00:00,1190.45425 +2017-04-08 00:00:00,1181.1498375 +2017-04-09 00:00:00,1208.8005 +2017-04-10 00:00:00,1207.744875 +2017-04-11 00:00:00,1226.6170375 +2017-04-12 00:00:00,1218.92205 +2017-04-13 00:00:00,1180.0237125 +2017-04-14 00:00:00,1185.2600571428572 +2017-04-15 00:00:00,1184.8806714285713 +2017-04-16 00:00:00,1186.9274125 +2017-04-17 00:00:00,1205.634875 +2017-04-18 00:00:00,1216.1867428571427 +2017-04-19 00:00:00,1217.9300875 +2017-04-20 00:00:00,1241.6863250000001 +2017-04-21 00:00:00,1258.3614125 +2017-04-22 00:00:00,1261.311225 +2017-04-23 00:00:00,1257.9881125 +2017-04-24 00:00:00,1262.902775 +2017-04-25 00:00:00,1279.4146875000001 +2017-04-26 00:00:00,1309.109875 +2017-04-27 00:00:00,1345.3539125 +2017-04-28 00:00:00,1331.2944285714286 +2017-04-29 00:00:00,1334.9790375 +2017-04-30 00:00:00,1353.0045 +2017-05-01 00:00:00,1417.1728125 +2017-05-02 00:00:00,1452.0762875 +2017-05-03 00:00:00,1507.5768571428573 +2017-05-04 00:00:00,1508.292125 +2017-05-05 00:00:00,1533.3350714285714 +2017-05-06 00:00:00,1560.4102 +2017-05-07 00:00:00,1535.8684285714285 +2017-05-08 00:00:00,1640.619225 +2017-05-09 00:00:00,1721.2849714285715 +2017-05-10 00:00:00,1762.88625 +2017-05-11 00:00:00,1820.9905625 +2017-05-12 00:00:00,1720.4785 +2017-05-13 00:00:00,1771.9200125 +2017-05-14 00:00:00,1776.3165 +2017-05-15 00:00:00,1723.1269375 +2017-05-16 00:00:00,1739.031975 +2017-05-17 00:00:00,1807.4850625 +2017-05-18 00:00:00,1899.0828875 +2017-05-19 00:00:00,1961.5204875 +2017-05-20 00:00:00,2052.9097875 +2017-05-21 00:00:00,2046.5344625 +2017-05-22 00:00:00,2090.6623125 +2017-05-23 00:00:00,2287.7102875 +2017-05-24 00:00:00,2379.1938333333333 +2017-05-25 00:00:00,2387.2062857142855 +2017-05-26 00:00:00,2211.976857142857 +2017-05-27 00:00:00,2014.0529625 +2017-05-28 00:00:00,2192.9808 +2017-05-29 00:00:00,2275.9307 +2017-05-30 00:00:00,2239.2053428571426 +2017-05-31 00:00:00,2285.9339142857143 +2017-06-01 00:00:00,2399.2426714285716 +2017-06-02 00:00:00,2446.142414285714 +2017-06-03 00:00:00,2525.7651584699997 +2017-06-04 00:00:00,2516.173142857143 +2017-06-05 00:00:00,2698.3138125 +2017-06-06 00:00:00,2883.3136966371426 +2017-06-07 00:00:00,2664.9208625 +2017-06-08 00:00:00,2792.9991875 +2017-06-09 00:00:00,2827.4913 +2017-06-10 00:00:00,2845.3728571428574 +2017-06-11 00:00:00,2961.8296124999997 +2017-06-12 00:00:00,2657.6750625 +2017-06-13 00:00:00,2748.185085714286 +2017-06-14 00:00:00,2447.0415625 +2017-06-15 00:00:00,2442.48025 +2017-06-16 00:00:00,2464.9598142857144 +2017-06-17 00:00:00,2665.927 +2017-06-18 00:00:00,2507.389252144286 +2017-06-19 00:00:00,2617.2102625 +2017-06-20 00:00:00,2754.97825 +2017-06-21 00:00:00,2671.04325 +2017-06-22 00:00:00,2727.2880125 +2017-06-23 00:00:00,2710.4122857142856 +2017-06-24 00:00:00,2589.1648875 +2017-06-25 00:00:00,2512.3662857142854 +2017-06-26 00:00:00,2436.4510571428573 +2017-06-27 00:00:00,2517.9031142857143 +2017-06-28 00:00:00,2585.349185714286 +2017-06-29 00:00:00,2544.414475 +2017-06-30 00:00:00,2477.641375 +2017-07-01 00:00:00,2434.0778625 +2017-07-02 00:00:00,2501.191342857143 +2017-07-03 00:00:00,2561.225428571429 +2017-07-04 00:00:00,2599.7298375 +2017-07-05 00:00:00,2619.1875030042856 +2017-07-06 00:00:00,2609.96775 +2017-07-07 00:00:00,2491.201214285714 +2017-07-08 00:00:00,2562.1306624999997 +2017-07-09 00:00:00,2536.2389375 +2017-07-10 00:00:00,2366.1701428571428 +2017-07-11 00:00:00,2369.8621285714285 +2017-07-12 00:00:00,2385.7485714285717 +2017-07-13 00:00:00,2354.7834166666667 +2017-07-14 00:00:00,2190.947833333333 +2017-07-15 00:00:00,2058.9955999999997 +2017-07-16 00:00:00,1931.2143 +2017-07-17 00:00:00,2176.6234875 +2017-07-18 00:00:00,2320.12225 +2017-07-19 00:00:00,2264.7657 +2017-07-20 00:00:00,2898.1884166666664 +2017-07-21 00:00:00,2682.1953625 +2017-07-22 00:00:00,2807.609857142857 +2017-07-23 00:00:00,2725.549716666667 +2017-07-24 00:00:00,2751.821028571429 +2017-07-25 00:00:00,2560.9979166666667 +2017-07-26 00:00:00,2495.028585714286 +2017-07-27 00:00:00,2647.625 +2017-07-28 00:00:00,2781.636583333333 +2017-07-29 00:00:00,2722.512785714286 +2017-07-30 00:00:00,2745.955416666666 +2017-07-31 00:00:00,2866.431666666667 +2017-08-01 00:00:00,2710.4130666666665 +2017-08-02 00:00:00,2693.6339833333336 +2017-08-03 00:00:00,2794.117716666666 +2017-08-04 00:00:00,2873.8510833333335 +2017-08-05 00:00:00,3218.1150166666666 +2017-08-06 00:00:00,3252.5625333333332 +2017-08-07 00:00:00,3407.2268333333336 +2017-08-08 00:00:00,3457.374333333333 +2017-08-09 00:00:00,3357.326316666667 +2017-08-10 00:00:00,3424.4042000000004 +2017-08-11 00:00:00,3632.5066666666667 +2017-08-12 00:00:00,3852.8029142857145 +2017-08-13 00:00:00,4125.54802 +2017-08-14 00:00:00,4282.992 +2017-08-15 00:00:00,4217.028328571429 +2017-08-16 00:00:00,4360.876871428572 +2017-08-17 00:00:00,4328.725716666667 +2017-08-18 00:00:00,4130.440066666667 +2017-08-19 00:00:00,4222.662214285714 +2017-08-20 00:00:00,4157.958033333333 +2017-08-21 00:00:00,4043.722 +2017-08-22 00:00:00,4082.180983333333 +2017-08-23 00:00:00,4174.95 +2017-08-24 00:00:00,4340.316716666667 +2017-08-25 00:00:00,4363.05445 +2017-08-26 00:00:00,4360.5133166666665 +2017-08-27 00:00:00,4354.308333333333 +2017-08-28 00:00:00,4391.673516666667 +2017-08-29 00:00:00,4607.98545 +2017-08-30 00:00:00,4594.98785 +2017-08-31 00:00:00,4748.255 +2017-09-01 00:00:00,4911.740016666667 +2017-09-02 00:00:00,4580.387479999999 +2017-09-03 00:00:00,4648.159983333334 +2017-09-04 00:00:00,4344.0983166666665 +2017-09-05 00:00:00,4488.72014 +2017-09-06 00:00:00,4641.822016666666 +2017-09-07 00:00:00,4654.6585000000005 +2017-09-08 00:00:00,4310.750183333334 +2017-09-09 00:00:00,4375.55952 +2017-09-10 00:00:00,4329.955 +2017-09-11 00:00:00,4248.090016666666 +2017-09-12 00:00:00,4219.036616666667 +2017-09-13 00:00:00,3961.2712666666666 +2017-09-14 00:00:00,3319.6299999999997 +2017-09-15 00:00:00,3774.2652833333336 +2017-09-16 00:00:00,3763.62604 +2017-09-17 00:00:00,3746.060783333333 +2017-09-18 00:00:00,4093.316666666667 +2017-09-19 00:00:00,3943.4133333333334 +2017-09-20 00:00:00,3977.5616666666665 +2017-09-21 00:00:00,3658.8981833333332 +2017-09-22 00:00:00,3637.5025499999997 +2017-09-23 00:00:00,3776.3869 +2017-09-24 00:00:00,3703.0406500000004 +2017-09-25 00:00:00,3942.5550000000003 +2017-09-26 00:00:00,3910.3073833333333 +2017-09-27 00:00:00,4202.554983333333 +2017-09-28 00:00:00,4201.98905 +2017-09-29 00:00:00,4193.574666666666 +2017-09-30 00:00:00,4335.368316666667 +2017-10-01 00:00:00,4360.722966666667 +2017-10-02 00:00:00,4386.88375 +2017-10-03 00:00:00,4293.3066 +2017-10-04 00:00:00,4225.175 +2017-10-05 00:00:00,4338.852 +2017-10-06 00:00:00,4345.6033333333335 +2017-10-07 00:00:00,4376.191666666667 +2017-10-08 00:00:00,4602.280883333334 +2017-10-09 00:00:00,4777.967816666666 +2017-10-10 00:00:00,4782.28 +2017-10-11 00:00:00,4819.485766666667 +2017-10-12 00:00:00,5325.130683333333 +2017-10-13 00:00:00,5563.806566666666 +2017-10-14 00:00:00,5739.438733333333 +2017-10-15 00:00:00,5647.311666666667 +2017-10-16 00:00:00,5711.205866666667 +2017-10-17 00:00:00,5603.71294 +2017-10-18 00:00:00,5546.176100000001 +2017-10-19 00:00:00,5727.6335 +2017-10-20 00:00:00,5979.45984 +2017-10-21 00:00:00,6020.371683333334 +2017-10-22 00:00:00,5983.184550000001 +2017-10-23 00:00:00,5876.079866666667 +2017-10-24 00:00:00,5505.827766666666 +2017-10-25 00:00:00,5669.622533333334 +2017-10-26 00:00:00,5893.138416666666 +2017-10-27 00:00:00,5772.504983333333 +2017-10-28 00:00:00,5776.6969500000005 +2017-10-29 00:00:00,6155.43402 +2017-10-30 00:00:00,6105.87422 +2017-10-31 00:00:00,6388.645166666666 +2017-11-01 00:00:00,6665.306683333333 +2017-11-02 00:00:00,7068.020100000001 +2017-11-03 00:00:00,7197.72006 +2017-11-04 00:00:00,7437.543316666666 +2017-11-05 00:00:00,7377.012366666667 +2017-11-06 00:00:00,6989.071666666667 +2017-11-07 00:00:00,7092.127233333333 +2017-11-08 00:00:00,7415.878250000001 +2017-11-09 00:00:00,7158.03706 +2017-11-10 00:00:00,6719.39785 +2017-11-11 00:00:00,6362.851033333333 +2017-11-12 00:00:00,5716.301583333334 +2017-11-13 00:00:00,6550.227533333334 +2017-11-14 00:00:00,6635.412633333333 +2017-11-15 00:00:00,7301.42992 +2017-11-16 00:00:00,7815.0307 +2017-11-17 00:00:00,7786.884366666666 +2017-11-18 00:00:00,7817.1403833333325 +2017-11-19 00:00:00,8007.654066666667 +2017-11-20 00:00:00,8255.596816666666 +2017-11-21 00:00:00,8059.8 +2017-11-22 00:00:00,8268.035 +2017-11-23 00:00:00,8148.95 +2017-11-24 00:00:00,8250.978333333334 +2017-11-25 00:00:00,8707.407266666667 +2017-11-26 00:00:00,9284.1438 +2017-11-27 00:00:00,9718.29505 +2017-11-28 00:00:00,9952.50882 +2017-11-29 00:00:00,9879.328333333333 +2017-11-30 00:00:00,10147.372 +2017-12-01 00:00:00,10883.912 +2017-12-02 00:00:00,11071.368333333332 +2017-12-03 00:00:00,11332.622 +2017-12-04 00:00:00,11584.83 +2017-12-05 00:00:00,11878.433333333334 +2017-12-06 00:00:00,13540.980000000001 +2017-12-07 00:00:00,16501.971666666668 +2017-12-08 00:00:00,16007.436666666666 +2017-12-09 00:00:00,15142.834152123332 +2017-12-10 00:00:00,14869.805 +2017-12-11 00:00:00,16762.116666666665 +2017-12-12 00:00:00,17276.393333333333 +2017-12-13 00:00:00,16808.366666666665 +2017-12-14 00:00:00,16678.892 +2017-12-15 00:00:00,17771.899999999998 +2017-12-16 00:00:00,19498.683333333334 +2017-12-17 00:00:00,19289.785 +2017-12-18 00:00:00,18961.856666666667 +2017-12-19 00:00:00,17737.111666666668 +2017-12-20 00:00:00,16026.271666666667 +2017-12-21 00:00:00,16047.51 +2017-12-22 00:00:00,15190.945 +2017-12-23 00:00:00,15360.261666666667 +2017-12-24 00:00:00,13949.175000000001 +2017-12-25 00:00:00,14119.028333333334 +2017-12-26 00:00:00,15999.048333333332 +2017-12-27 00:00:00,15589.321666666665 +2017-12-28 00:00:00,14380.581666666667 +2017-12-29 00:00:00,14640.14 +2017-12-30 00:00:00,13215.573999999999 +2017-12-31 00:00:00,14165.574999999999 +2018-01-01 00:00:00,13812.186666666666 +2018-01-02 00:00:00,15005.856666666667 +2018-01-03 00:00:00,15053.261666666665 +2018-01-04 00:00:00,15199.355000000001 +2018-01-05 00:00:00,17174.12 +2018-01-06 00:00:00,17319.198 +2018-01-07 00:00:00,16651.471666666668 +2018-01-08 00:00:00,15265.906666666668 +2018-01-09 00:00:00,14714.253333333334 +2018-01-10 00:00:00,15126.398333333333 +2018-01-11 00:00:00,13296.794 +2018-01-12 00:00:00,13912.882000000001 +2018-01-13 00:00:00,14499.773333333333 +2018-01-14 00:00:00,13852.92 +2018-01-15 00:00:00,14012.196 +2018-01-16 00:00:00,11180.998333333331 +2018-01-17 00:00:00,11116.946666666669 +2018-01-18 00:00:00,11345.423333333332 +2018-01-19 00:00:00,11422.44 +2018-01-20 00:00:00,12950.793333333333 +2018-01-21 00:00:00,11505.228 +2018-01-22 00:00:00,10544.593333333332 +2018-01-23 00:00:00,11223.064 +2018-01-24 00:00:00,11282.258333333333 +2018-01-25 00:00:00,11214.44 +2018-01-26 00:00:00,10969.815 +2018-01-27 00:00:00,11524.776666666667 +2018-01-28 00:00:00,11765.71 +2018-01-29 00:00:00,11212.654999999999 +2018-01-30 00:00:00,10184.061666666666 +2018-01-31 00:00:00,10125.013333333334 +2018-02-01 00:00:00,9083.258333333333 +2018-02-02 00:00:00,8901.901666666667 +2018-02-03 00:00:00,9076.678333333333 +2018-02-04 00:00:00,8400.648333333333 +2018-02-05 00:00:00,6838.816666666667 +2018-02-06 00:00:00,7685.633333333334 +2018-02-07 00:00:00,8099.958333333333 +2018-02-08 00:00:00,8240.536666666667 +2018-02-09 00:00:00,8535.516666666668 +2018-02-10 00:00:00,8319.876566184 +2018-02-11 00:00:00,8343.455 +2018-02-12 00:00:00,8811.343333333332 +2018-02-13 00:00:00,8597.7675 +2018-02-14 00:00:00,9334.633333333333 +2018-02-15 00:00:00,9977.154 +2018-02-16 00:00:00,10127.161666666667 +2018-02-17 00:00:00,10841.991666666667 +2018-02-18 00:00:00,10503.298333333334 +2018-02-19 00:00:00,11110.964999999998 +2018-02-20 00:00:00,11390.391666666668 +2018-02-21 00:00:00,10532.791666666666 +2018-02-22 00:00:00,9931.071666666667 +2018-02-23 00:00:00,10162.116666666667 +2018-02-24 00:00:00,9697.956 +2018-02-25 00:00:00,9696.593333333332 +2018-02-26 00:00:00,10348.603333333334 +2018-02-27 00:00:00,10763.883333333333 +2018-02-28 00:00:00,10370.164999999999 +2018-03-01 00:00:00,11009.381666666668 +2018-03-02 00:00:00,11055.815 +2018-03-03 00:00:00,11326.948333333334 +2018-03-04 00:00:00,11430.181666666665 +2018-03-05 00:00:00,11595.54 +2018-03-06 00:00:00,10763.198333333334 +2018-03-07 00:00:00,10118.058 +2018-03-08 00:00:00,9429.111666666666 +2018-03-09 00:00:00,9089.278333333334 +2018-03-10 00:00:00,8746.002 +2018-03-11 00:00:00,9761.396666666666 +2018-03-12 00:00:00,9182.843333333332 +2018-03-13 00:00:00,9154.699999999999 +2018-03-14 00:00:00,8151.531666666667 +2018-03-15 00:00:00,8358.121666666666 +2018-03-16 00:00:00,8530.402 +2018-03-17 00:00:00,7993.674643641666 +2018-03-18 00:00:00,8171.415 +2018-03-19 00:00:00,8412.033333333333 +2018-03-20 00:00:00,8986.948333333334 +2018-03-21 00:00:00,8947.753333333334 +2018-03-22 00:00:00,8690.408333333333 +2018-03-23 00:00:00,8686.826666666666 +2018-03-24 00:00:00,8662.378333333334 +2018-03-25 00:00:00,8617.296666666667 +2018-03-26 00:00:00,8197.548333333334 +2018-03-27 00:00:00,7876.195 +2018-03-28 00:00:00,7960.38 +2018-03-29 00:00:00,7172.28 +2018-03-30 00:00:00,6882.531666666667 +2018-03-31 00:00:00,6935.48 +2018-04-01 00:00:00,6794.105 diff --git a/data/seattle_weather.csv b/data/seattle_weather.csv new file mode 100644 index 0000000..23a8263 --- /dev/null +++ b/data/seattle_weather.csv @@ -0,0 +1,13 @@ +STATION,NAME,MLY-CLDD-BASE45,MLY-CLDD-BASE50,MLY-CLDD-BASE55,MLY-CLDD-BASE57,MLY-CLDD-BASE60,MLY-CLDD-BASE70,MLY-CLDD-BASE72,MLY-CLDD-NORMAL,MLY-DUTR-NORMAL,MLY-DUTR-STDDEV,MLY-GRDD-BASE40,MLY-GRDD-BASE45,MLY-GRDD-BASE50,MLY-GRDD-BASE55,MLY-GRDD-BASE57,MLY-GRDD-BASE60,MLY-GRDD-BASE65,MLY-GRDD-BASE70,MLY-GRDD-BASE72,MLY-GRDD-TB4886,MLY-GRDD-TB5086,MLY-HTDD-BASE40,MLY-HTDD-BASE45,MLY-HTDD-BASE50,MLY-HTDD-BASE55,MLY-HTDD-BASE57,MLY-HTDD-BASE60,MLY-HTDD-NORMAL,MLY-PRCP-25PCTL,MLY-PRCP-50PCTL,MLY-PRCP-75PCTL,MLY-PRCP-AVGNDS-GE001HI,MLY-PRCP-AVGNDS-GE010HI,MLY-PRCP-AVGNDS-GE050HI,MLY-PRCP-AVGNDS-GE100HI,MLY-PRCP-NORMAL,MLY-SNOW-25PCTL,MLY-SNOW-50PCTL,MLY-SNOW-75PCTL,MLY-SNOW-AVGNDS-GE001TI,MLY-SNOW-AVGNDS-GE010TI,MLY-SNOW-AVGNDS-GE030TI,MLY-SNOW-AVGNDS-GE050TI,MLY-SNOW-AVGNDS-GE100TI,MLY-SNOW-NORMAL,MLY-SNWD-AVGNDS-GE001WI,MLY-SNWD-AVGNDS-GE003WI,MLY-SNWD-AVGNDS-GE005WI,MLY-SNWD-AVGNDS-GE010WI,MLY-TAVG-NORMAL,MLY-TAVG-STDDEV,MLY-TMAX-AVGNDS-GRTH040,MLY-TMAX-AVGNDS-GRTH050,MLY-TMAX-AVGNDS-GRTH060,MLY-TMAX-AVGNDS-GRTH070,MLY-TMAX-AVGNDS-GRTH080,MLY-TMAX-AVGNDS-GRTH090,MLY-TMAX-AVGNDS-GRTH100,MLY-TMAX-AVGNDS-LSTH032,MLY-TMAX-NORMAL,MLY-TMAX-STDDEV,MLY-TMIN-AVGNDS-LSTH000,MLY-TMIN-AVGNDS-LSTH010,MLY-TMIN-AVGNDS-LSTH020,MLY-TMIN-AVGNDS-LSTH032,MLY-TMIN-AVGNDS-LSTH040,MLY-TMIN-AVGNDS-LSTH050,MLY-TMIN-AVGNDS-LSTH060,MLY-TMIN-AVGNDS-LSTH070,MLY-TMIN-NORMAL,MLY-TMIN-PRBOCC-LSTH016,MLY-TMIN-PRBOCC-LSTH020,MLY-TMIN-PRBOCC-LSTH024,MLY-TMIN-PRBOCC-LSTH028,MLY-TMIN-PRBOCC-LSTH032,MLY-TMIN-PRBOCC-LSTH036,MLY-TMIN-STDDEV,MONTH +USW00094290,SEATTLE SAND PT WSFO WA US,27.0,3.0,-7777.0,-7777.0,0.0,0.0,0.0,0.0,10.2,1.4,104.0,27.0,3.0,-7777.0,-7777.0,0.0,0.0,0.0,0.0,28.0,16.0,39.0,117.0,247.0,400.0,462.0,555.0,710.0,3.29,4.99,6.07,18.5,12.1,3.1,0.7,4.81,0.0,0.0,0.0,0.6,0.3,0.0,0.0,0.0,0.4,0.2,0.0,0.0,0.0,42.1,2.2,279.0,10.1,2.0,0.0,0.0,0.0,0.0,0.3,47.2,2.4,0.0,0.0,1.0,6.4,203.0,309.0,310.0,310.0,37.0,64.0,129.0,317.0,709.0,959.0,1000.0,2.3,Jan +USW00094290,SEATTLE SAND PT WSFO WA US,31.0,3.0,-7777.0,-7777.0,0.0,0.0,0.0,0.0,13.1,1.8,116.0,31.0,3.0,-7777.0,-7777.0,0.0,0.0,0.0,0.0,47.0,31.0,19.0,75.0,186.0,323.0,379.0,463.0,603.0,2.09,3.08,4.44,14.1,7.6,1.4,0.1,3.31,0.0,0.0,0.0,0.4,0.2,0.1,0.0,0.0,0.6,0.3,0.1,0.0,0.0,43.4,2.3,269.0,13.3,14.0,0.0,0.0,0.0,0.0,0.0,50.0,2.4,0.0,0.0,1.0,5.0,190.0,280.0,280.0,280.0,36.9,15.0,76.0,273.0,616.0,917.0,1000.0,2.6,Feb +USW00094290,SEATTLE SAND PT WSFO WA US,81.0,16.0,2.0,-7777.0,-7777.0,0.0,0.0,0.0,14.5,1.2,207.0,81.0,16.0,2.0,-7777.0,-7777.0,0.0,0.0,0.0,97.0,72.0,4.0,33.0,123.0,263.0,324.0,417.0,572.0,2.60,3.46,3.93,17.1,10.1,1.7,0.4,3.51,0.0,0.0,0.0,0.1,0.0,0.0,0.0,0.0,-7777.0,0.0,0.0,0.0,0.0,46.6,2.0,308.0,23.0,45.0,3.0,0.0,0.0,0.0,0.0,53.8,2.4,0.0,0.0,0.0,1.6,173.0,310.0,310.0,310.0,39.3,0.0,20.0,41.0,152.0,670.0,986.0,1.8,Mar +USW00094290,SEATTLE SAND PT WSFO WA US,169.0,58.0,12.0,6.0,1.0,0.0,0.0,-7777.0,16.0,1.7,315.0,169.0,58.0,12.0,6.0,1.0,-7777.0,0.0,0.0,160.0,130.0,-7777.0,4.0,43.0,147.0,200.0,286.0,435.0,2.10,2.68,2.94,15.0,8.2,1.3,0.1,2.77,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,50.5,1.6,300.0,28.4,105.0,12.0,1.0,0.0,0.0,0.0,58.5,2.0,0.0,0.0,0.0,-7777.0,80.0,293.0,300.0,300.0,42.5,0.0,0.0,0.0,0.0,114.0,711.0,1.5,Apr +USW00094290,SEATTLE SAND PT WSFO WA US,343.0,193.0,78.0,49.0,21.0,-7777.0,-7777.0,3.0,16.5,1.8,497.0,343.0,193.0,78.0,49.0,21.0,3.0,-7777.0,-7777.0,277.0,234.0,0.0,-7777.0,5.0,46.0,78.0,144.0,281.0,1.34,1.95,2.91,12.5,6.5,1.0,0.1,2.16,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,56.0,2.2,310.0,30.9,222.0,63.0,8.0,0.0,0.0,0.0,64.3,2.8,0.0,0.0,0.0,0.0,12.0,214.0,310.0,310.0,47.8,0.0,0.0,0.0,0.0,0.0,58.0,1.9,May +USW00094290,SEATTLE SAND PT WSFO WA US,480.0,330.0,184.0,130.0,65.0,2.0,1.0,14.0,17.4,1.8,630.0,480.0,330.0,184.0,130.0,65.0,14.0,2.0,1.0,392.0,336.0,0.0,0.0,-7777.0,4.0,10.0,35.0,134.0,1.04,1.54,2.25,9.9,4.8,0.7,0.1,1.63,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,61.0,1.8,300.0,30.0,284.0,131.0,21.0,-7777.0,0.0,0.0,69.7,2.5,0.0,0.0,0.0,0.0,0.0,74.0,297.0,300.0,52.3,0.0,0.0,0.0,0.0,0.0,0.0,1.2,Jun +USW00094290,SEATTLE SAND PT WSFO WA US,648.0,493.0,338.0,276.0,185.0,15.0,8.0,65.0,19.6,2.5,803.0,648.0,493.0,338.0,276.0,185.0,65.0,15.0,8.0,551.0,490.0,0.0,0.0,0.0,-7777.0,-7777.0,2.0,37.0,0.30,0.72,1.10,5.8,2.1,0.2,0.0,0.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,65.9,1.8,310.0,31.0,309.0,248.0,76.0,0.7,-7777.0,0.0,75.7,2.9,0.0,0.0,0.0,0.0,0.0,3.0,278.0,310.0,56.1,0.0,0.0,0.0,0.0,0.0,0.0,1.2,Jul +USW00094290,SEATTLE SAND PT WSFO WA US,668.0,513.0,358.0,296.0,204.0,14.0,6.0,75.0,19.5,1.5,823.0,668.0,513.0,358.0,296.0,204.0,75.0,14.0,6.0,572.0,511.0,0.0,0.0,0.0,-7777.0,-7777.0,1.0,27.0,0.33,0.60,1.24,5.7,3.0,0.6,0.1,0.97,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,66.5,1.4,310.0,31.0,310.0,262.0,83.0,0.4,0.0,0.0,76.3,1.8,0.0,0.0,0.0,0.0,0.0,4.0,263.0,310.0,56.8,0.0,0.0,0.0,0.0,0.0,0.0,1.3,Aug +USW00094290,SEATTLE SAND PT WSFO WA US,498.0,348.0,202.0,149.0,83.0,2.0,1.0,19.0,18.2,1.9,648.0,498.0,348.0,202.0,149.0,83.0,19.0,2.0,1.0,412.0,358.0,0.0,0.0,-7777.0,4.0,11.0,35.0,121.0,0.64,1.67,2.06,7.8,4.0,0.8,-7777.0,1.52,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,61.6,1.7,300.0,30.0,286.0,159.0,27.0,0.1,0.0,0.0,70.7,2.3,0.0,0.0,0.0,0.0,0.0,75.0,296.0,300.0,52.5,0.0,0.0,0.0,0.0,0.0,0.0,1.5,Sep +USW00094290,SEATTLE SAND PT WSFO WA US,260.0,123.0,35.0,17.0,4.0,-7777.0,0.0,-7777.0,13.7,1.5,412.0,260.0,123.0,35.0,17.0,4.0,-7777.0,-7777.0,0.0,207.0,167.0,-7777.0,3.0,21.0,88.0,132.0,212.0,363.0,2.03,3.41,4.41,13.2,7.8,2.0,0.3,3.41,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,53.3,1.8,310.0,29.7,148.0,17.0,2.0,0.0,0.0,0.0,60.1,2.0,0.0,0.0,0.0,0.1,24.0,236.0,310.0,310.0,46.5,0.0,0.0,0.0,2.0,58.0,349.0,1.8,Oct +USW00094290,SEATTLE SAND PT WSFO WA US,78.0,18.0,2.0,1.0,-7777.0,0.0,0.0,0.0,10.4,1.6,195.0,78.0,18.0,2.0,1.0,-7777.0,0.0,0.0,0.0,66.0,43.0,9.0,42.0,132.0,266.0,325.0,414.0,564.0,4.53,5.42,7.17,18.5,12.6,3.8,1.0,5.84,0.0,0.0,0.0,0.1,0.1,0.1,0.0,0.0,0.3,0.2,0.0,0.0,0.0,46.2,2.9,296.0,18.6,12.0,-7777.0,0.0,0.0,0.0,0.1,51.4,2.9,0.0,0.0,1.0,1.9,123.0,285.0,300.0,300.0,41.0,3.0,21.0,75.0,224.0,566.0,960.0,3.0,Nov +USW00094290,SEATTLE SAND PT WSFO WA US,18.0,1.0,-7777.0,0.0,0.0,0.0,0.0,0.0,9.6,1.2,84.0,18.0,1.0,-7777.0,0.0,0.0,0.0,0.0,0.0,18.0,9.0,50.0,139.0,277.0,431.0,493.0,586.0,741.0,3.94,5.06,6.97,18.8,11.8,3.2,1.1,5.43,0.0,0.0,2.0,0.9,0.6,0.3,0.2,0.0,2.3,1.6,1.0,0.5,0.0,41.1,2.2,272.0,7.2,-7777.0,0.0,0.0,0.0,0.0,0.6,45.9,2.3,0.0,-7777.0,6.0,6.4,228.0,310.0,310.0,310.0,36.3,84.0,174.0,376.0,729.0,980.0,1000.0,2.3,Dec \ No newline at end of file diff --git a/matplotlib/Data Visualization.ipynb b/matplotlib/Data Visualization.ipynb new file mode 100644 index 0000000..ea4b347 --- /dev/null +++ b/matplotlib/Data Visualization.ipynb @@ -0,0 +1,372 @@ +{ + "cells": [ + { + "metadata": {}, + "cell_type": "markdown", + "source": "# Introduction to data visualization with Matplotlib\n", + "id": "a277ea5ab0a520f4" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Using the matplotlib.pyplot interface\n", + "There are many ways to use Matplotlib. In this course, we will focus on the pyplot interface, which provides the most flexibility in creating and customizing data visualizations.\n", + "\n", + "Initially, we will use the pyplot interface to create two kinds of objects: Figure objects and Axes objects.\n", + "\n", + "This course introduces a lot of new concepts, so if you ever need a quick refresher, download the Matplotlib Cheat Sheet and keep it handy!\n", + "### Instructions\n", + "- Import the `matplotlib.pyplot` API, using the conventional name `plt`.\n", + "- Create `Figure` and `Axes` objects using the `plt.subplots` function.\n", + "- Show the results, an empty set of `axes`, using the `plt.show` function." + ], + "id": "e315c66910fb2736" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T14:28:56.075713Z", + "start_time": "2025-08-18T14:28:56.030838Z" + } + }, + "cell_type": "code", + "source": [ + "# Import the matplotlib.pyplot submodule and name it plt\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Create a Figure and an Axes with plt.subplots\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Call the show function to show the result\n", + "plt.show()" + ], + "id": "9555646ff6f1dbb6", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "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" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 7 + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Adding data to an Axes object\n", + "Adding data to a figure is done by calling methods of the Axes object. In this exercise, we will use the plot method to add data about rainfall in two American cities: Seattle, WA and Austin, TX.\n", + "\n", + "The data are stored in two pandas DataFrame objects that are already loaded into memory: seattle_weather stores information about the weather in Seattle, and austin_weather stores information about the weather in Austin. Each of the DataFrames has a \"MONTH\" column that stores the three-letter name of the months. Each also has a column named \"MLY-PRCP-NORMAL\" that stores the average rainfall in each month during a ten-year period.\n", + "\n", + "In this exercise, you will create a visualization that will allow you to compare the rainfall in these two cities.\n", + "### Instructions\n", + "- Import the `matplotlib.pyplot` submodule as `plt`.\n", + "- Create a Figure and an Axes object by calling `plt.subplots`.\n", + "- Add data from the `seattle_weather` DataFrame by calling the Axes `plot` method.\n", + "- Add data from the `austin_weather` DataFrame in a similar manner and call `plt.show` to show the results." + ], + "id": "15dd42cdea7a6503" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T14:28:56.133304Z", + "start_time": "2025-08-18T14:28:56.090579Z" + } + }, + "cell_type": "code", + "source": [ + "# Import the matplotlib.pyplot submodule and name it plt\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Load the data\n", + "import pandas as pd\n", + "seattle_weather = pd.read_csv(\"../data/seattle_weather.csv\")\n", + "austin_weather = pd.read_csv(\"../data/austin_weather.csv\")\n", + "\n", + "# Create a Figure and an Axes with plt.subplots\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Plot MLY-PRCP-NORMAL from seattle_weather against the MONTH\n", + "ax.plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-NORMAL\"])\n", + "# ax.(seattle_weather[\"MONTH\"], ____)\n", + "\n", + "# Plot MLY-PRCP-NORMAL from austin_weather against MONTH\n", + "ax.plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-NORMAL\"])\n", + "\n", + "# Call the show function\n", + "plt.show()" + ], + "id": "e909eaa29fff52ff", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "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" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 8 + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Customizing data appearance\n", + "We can customize the appearance of data in our plots, while adding the data to the plot, using key-word arguments to the plot command.\n", + "\n", + "In this exercise, you will customize the appearance of the markers, the linestyle that is used, and the color of the lines and markers for your data.\n", + "\n", + "As before, the data is already provided in pandas DataFrame objects loaded into memory: seattle_weather and austin_weather. These each have a \"MONTHS\" column and a \"MLY-PRCP-NORMAL\" that you will plot against each other.\n", + "\n", + "In addition, a Figure object named fig and an Axes object named ax have already been created for you.\n", + "### Instructions\n", + "- Call ax.plot to plot \"MLY-PRCP-NORMAL\" against \"MONTHS\" in both DataFrames.\n", + "- Pass the color key-word arguments to these commands to set the color of the Seattle data to blue ('b') and the Austin data to red ('r').\n", + "- Pass the marker key-word arguments to these commands to set the Seattle data to circle markers ('o') and the Austin markers to triangles pointing downwards ('v').\n", + "- Pass the linestyle key-word argument to use dashed lines for the data from both cities ('--')." + ], + "id": "6cef012794c80699" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T14:29:17.299001Z", + "start_time": "2025-08-18T14:29:17.253880Z" + } + }, + "cell_type": "code", + "source": [ + "# Create a Figure and an Axes with plt.subplots\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Plot Seattle data, setting data appearance\n", + "ax.plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-NORMAL\"], color='b', marker='o', linestyle='--')\n", + "\n", + "# Plot Austin data, setting data appearance\n", + "ax.plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-NORMAL\"], color='r', marker='v', linestyle='--')\n", + "\n", + "# Call show to display the resulting plot\n", + "plt.show()" + ], + "id": "ba406eff02832820", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "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8sMPP5jt3+Nx/Phx2954Tj6H5E12vhadcMMNN8jPP/8s7777rqxcuVI+++wzufTSS2M+WSfKn3/+KXXr1pVVq1bJhx9+aF50vf766/Ltt99KgwYNZNeuXa6OL3fu3DJw4EDZvXu3eP0cs3btWpkyZYpcdtllZmB27bXXyrFjx8RLfBlYfPXVV9KoUSMpXLiwFCtWzHxi//jjj5PfxxOPyG7ChAnmk583b16pVauWefXhFOtqIfqGK51JkyZJnTp1zBfuGWecIU8//fQpLwK8WK655hrJkyeP+ZhPPvnE9vFhDDgx4jmx4HOcEGvXrp3p53bcuHFyySWXmP+v0aNH2zbO/fv3mz8bV2G4Shw1atQpVyyTJ0+W8847z/zd9evXl6VLl558DB6PseMAe/bZZ5t/l/Xr13vqObz88sula9eup1x54ioOB1onVK5cWQYPHpzsvvPPP1/69u178ms8t2+++aa0bt3afM+ceeaZ5vOYaLGMNRHSey1ar7OMrnCfe+45KVmypLk30n//+1959NFHzf+LHXDlPnPmTPOEiOMcZgAuuugi6d27t1x33XUnH4PfW6JECbO9M157v/zyy8mfgecU4xkxYoT52sbf/aabbpI9e/aInTCrh9f3N998Yx438J7BMW/atGmyadMm6dOnj/m4w4cPyyOPPGKOBe/dqlWrmsEdjjv4P0KRIkVsnyFs1qyZeczu379/mo8ZP3681KxZ0xwXXqMvvfTSye899thjUq9evVP+Ta1ateSZZ56x9RxTrlw581iE34nzC4IM67WZ0d8bPv/8c7nwwgvN42fx4sXN97vdfBlYHDhwQB544AFZsGCBeSDG/iN4clJemeLF+tBDD8nixYulWrVqcssttyQ0ssObvmPHjmZUuXz5cvPNixfA888/n+xxTzzxhHnlgRdAhw4d5Oabb5bffvvN9vFgGvKdd945+TWm0f7zn/9k6bnFARL/L4wTU692+eijj+Sss86S6tWry6233mqOMWWrlV69eplv6vnz55tvoJYtWyabNTl48KB5sMVJctmyZeaB3UvPId74mOXAQdTywQcfmAcMHAjchMAXJ5Zff/1Vmjdvbr4e3b6adEssr8X0IODGex2vxYULF5on0+HDh9s2vvz585s3BDTRr6VoN954o2zfvt08+WAMOCE1bdo02d8Uswf4v+KEg6AYMyCd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" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 10 + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Customizing axis labels and adding titles\n", + "Customizing the axis labels requires using the set_xlabel and set_ylabel methods of the Axes object. Adding a title uses the set_title method.\n", + "\n", + "In this exercise, you will customize the content of the axis labels and add a title to a plot.\n", + "\n", + "As before, the data is already provided in pandas DataFrame objects loaded into memory: seattle_weather and austin_weather. These each have a \"MONTH\" column and a \"MLY-PRCP-NORMAL\" column. These data are plotted against each other in the first two lines of the sample code provided.\n", + "\n", + "In addition, a Figure object named fig and an Axes object named ax have already been created for you.\n", + "### Instructions\n", + "- Use the `set_xlabel` method to add the label: `Time (months)`.\n", + "- Use the `set_ylabel` method to add the label: `Precipitation (inches)`.\n", + "- Use the `set_title` method to add the title: `Weather patterns in Austin and Seattle`." + ], + "id": "8d3c0a5ac2d427f0" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T14:31:53.432734Z", + "start_time": "2025-08-18T14:31:53.356747Z" + } + }, + "cell_type": "code", + "source": [ + "# Create a Figure and an Axes with plt.subplots\n", + "fig, ax = plt.subplots()\n", + "\n", + "ax.plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-NORMAL\"])\n", + "ax.plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-NORMAL\"])\n", + "\n", + "# Customize the x-axis label\n", + "ax.set_xlabel(\"Time (months)\")\n", + "\n", + "# Customize the y-axis label\n", + "ax.set_ylabel(\"Precipitation (inches)\")\n", + "\n", + "# Add the title\n", + "ax.set_title(\"Weather patterns in Austin and Seattle\")\n", + "\n", + "# Display the figure\n", + "plt.show()" + ], + "id": "f6361e53c1c089a4", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "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" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 11 + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Creating small multiples with plt.subplots\n", + "Small multiples are used to plot several datasets side-by-side. In Matplotlib, small multiples can be created using the plt.subplots() function. The first argument is the number of rows in the array of Axes objects generate and the second argument is the number of columns. In this exercise, you will use the Austin and Seattle data to practice creating and populating an array of subplots.\n", + "\n", + "The data is given to you in DataFrames: seattle_weather and austin_weather. These each have a \"MONTH\" column and \"MLY-PRCP-NORMAL\" (for average precipitation), as well as \"MLY-TAVG-NORMAL\" (for average temperature) columns. In this exercise, you will plot in a separate subplot the monthly average precipitation and average temperatures in each city.\n", + "### Instructions\n", + "- Create a Figure and an array of subplots with 2 rows and 2 columns.\n", + "- Addressing the top left Axes as index 0, 0, plot the Seattle precipitation.\n", + "- In the top right (index 0,1), plot Seattle temperatures.\n", + "- In the bottom left (1, 0) and bottom right (1, 1) plot Austin precipitations and temperatures." + ], + "id": "a7bb59ba2bd5665d" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T16:15:28.656647Z", + "start_time": "2025-08-18T16:15:28.433313Z" + } + }, + "cell_type": "code", + "source": [ + "# Create a Figure and an array of subplots with 2 rows and 2 columns\n", + "fig, ax = plt.subplots(2, 2)\n", + "\n", + "# Addressing the top left Axes as index 0, 0, plot month and Seattle precipitation\n", + "ax[0, 0].plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-NORMAL\"])\n", + "\n", + "# In the top right (index 0,1), plot month and Seattle temperatures\n", + "ax[0, 1].plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-TAVG-NORMAL\"])\n", + "\n", + "# In the bottom left (1, 0) plot month and Austin precipitations\n", + "ax[1, 0].plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-NORMAL\"])\n", + "\n", + "# In the bottom right (1, 1) plot month and Austin temperatures\n", + "ax[1, 1].plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-TAVG-NORMAL\"])\n", + "plt.show()" + ], + "id": "5fefc4cae599a22e", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiYAAAGgCAYAAACez6weAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAnu5JREFUeJztnQd4FGUTx4f03juEkJBKIHRCR3qXJihFEBE/FBFRUVFsoIIVUBEBEVSaoFRp0nsNLaEEQghJSEIo6SH9vmfmsuclJJByd7t7N7/n2Sd7JXvv7e2+OzvlP3UUCoUCGIZhGIZhJICR2ANgGIZhGIYRYMOEYRiGYRjJwIYJwzAMwzCSgQ0ThmEYhmEkAxsmDMMwDMNIBjZMGIZhGIaRDGyYMAzDMAwjGdgwYRiGYRhGMrBhwjAMwzCMZGDDhGEYhmEYwzJMbt++DWPGjAFnZ2ewtLSEJk2awJkzZ3Tx0QzDMAzDyAgTbX9AWloadOjQAbp27Qo7duwAV1dXuH79Ojg6OlZ5GyUlJZCUlAS2trZQp04drY6XYZhHwZZaWVlZ4OXlBUZG8nC08rzBMPKcO+pou4nfe++9B0ePHoXDhw/XeBuJiYng7e2t0XExDFN9EhISoF69eiAHeN5gGHnOHVr3mGzZsgV69+4Nw4cPh4MHD0LdunXh1VdfhYkTJ1b6P/n5+bQICLYTfjE7OzttD5lhmHJkZmbSRR69D3JBGCvPGwwjr7lD64ZJbGwsLFq0CN588014//334fTp0/D666+DmZkZjBs3rsL/mTNnDnz66aePPI+TC08wDCMecgqJCGPleYNh5DV3aD2UgwZIq1at4NixY6rn0DBBA+X48eNV8pgIFldGRgZPMAwjAngO2tvby+oclOOYGUbfqMl5qPUsNk9PT2jUqFGZ50JCQiA+Pr7S/zE3N1fd5fDdDsMwDMMYDlo3TLAiJzo6usxz165dAx8fH21/NMMwDMMwMkPrOSbTpk2D9u3bwxdffAEjRoyAU6dOwZIlS2hhGKb6/B2RCKduPoDXewRAXQdLsYfDMLIFMxnuZOZD1O0MuJSUCdfuZEGXIFcY0YqrufTaMGndujVs3LgRZsyYAbNmzQJfX1+YP38+jB49WtsfzTB6R1FxCXyy5RJk5RfBtshkmNk/BJ5t7S2rpFSGEYOSEgXEP8glAyQqSWmIXLqdAfdzCsq8b+elFAj1soNQL3vRxmroaN0wQQYMGEALwzC1AydTNEqQ7PwieG9DJBkoc4eFsfeEYdQM+Bt3c+BSUgZE3c6kv5fVzh11jI3qgL+rDYTWtYPEtIfkjZyxIRI2vtqBXmP01DBhGEYzHI+9T3+7BbtBOz9n+ObfaDh8/R70nncIPugfAs+x94QxMIpLFGUMkKikTLianAn5RSWPvNfMxAiCPWzJG4JekcZ17emxhakxvZ6amQfdvzsIFxMz4LdjcfBiR18RvhHDhgnDyIjjN5SGSQd/F5jQ0Re6hbjB9PUX4Gx8Ot3lbY9MhjlDm0A9Ryuxh8owOjFKXlh+iozz8libGZMB0qjUAEFDxN/NBkyNK6/5cLOzgBl9Q+D9jZFk9Pdu7MGeSBFgw4RhZEJhcQmcjntA6+gtQRq62sD6Se1h+dGb8PUupfekz/zD8H6/EBjZhr0njH6z6uQtOubRExLu66Q0QrzsyRDxcbICoxqEYtDruOFsIpy5lQYfbYqCX8a14vNIx8ijGxfDMORezi0oBgcrU3I/C2Ac/KVOfrBjaido6eNIuSd4x/f8slOQmJYLUuVJXcdfeOEFuiCoL3369BF1zIx0SMnIg692KqUoMAn8jwnh5O0Y2NQLfF2sa2SUIPh/6HU0Na4De6+mwo6oFA2PnHkSbJgwjEw4UZpfgneGFU26fq42sO5/7WiSNjcxgiMxytwTvKvUssBzjbuOm5qaUtfxy5cvw7fffvtI13E0RJKTk1XLmjVrRBszIy0+3hJFRnjz+g4wOlyzulgB7rbwylP+pZ9zCTIeFmp0+8zj4VAOw8gsv0QI41SE4D3B5Nh3/rpI7ugPNkZR7smXw8Ikk3vy5ZdfUpuJ5cuXq55DKYGKVKA9PDx0PDpG6uyMSoFdl+6ASal3QxvVM68+1RD+uZgEsXdz4MudV+GLIU00/hlMxbDHhGFkQH5RMZy5VZpf0tDlie9H78mf/2sHHw5oBBamRnA05j55T1aekIb3BLuOYw8t7Dru5uYGzZs3h6VLlz7yvgMHDtDrQUFB8Morr8D9+0rjrCKwvxb25VBfGP0jK6+QvCXI/7r4QbCHdlqWYKWOYIysPhmvyu9itA8bJgwjAy4kZEBeYQk4W5tBoLtNlf4H7yKxcmfH1M7QuoEj5BQUw8xNUTD6l5OQ8EDc3BOh63hAQADs2rWLjA5s7vnbb7+VCeP8/vvvsHfvXvKwHDx4EPr27QvFxcWVdiXHZmHCgh4ZRv/AJG9Ua23gbAVTugVo9bPa+jlTMiyCVW94g8BoH613F9YE3CWUMXQW7LkO8/Zcg/5NPGHh6BY1Ur1ccSwOvtp1lQwcKzNjmNEvBEa3qV+lJEFNn4M16TqOxkzDhg1hz5490L1790de567k+k/ErTR45udjgFet1S+FQ3v/J3sPa0tGbiFpm9zLzodpPQJhag/tGkP6hiS7CzMMo7nE17YNK88veRxofLyo5j3B6p4PRfSe1KTruJ+fH7i4uEBMTEyFr3NXcv0vl39/QyQZJcNa1NOJUYLYW5nCxwOVx+rC/TEQk5qtk881ZNgwYRiJk1dYDBHxaU9MfK0KWEb558vtaKLF3BNUku33/WFIzy3bL0SKXccTExMpxwSNGsbwWHIoFqLvZIGTtRmpHOuSAWGe8FSQKxSUGkfogWS0BxsmDCNxzsWnQ0FRCbjamkNDV+tabw+9J+M7+MLOqZ2hTQMnKrV0sDIDXYJdx0+cOEFdx9EDsnr1auo4PnnyZHo9Ozsbpk+fTu+Ji4ujPJNBgwaBv78/9O7dW6djZcTn5r0cWLD3Oq1/OCCEjBNdgho6swc1BktTYzgV9wDWnUnQ6ecbGmyYMIxM+uOgt0STCpQNXKxh7ctt4c2egaBrhK7jqEvSuHFjmD17dpmu48bGxnDx4kV4+umnITAwECZMmAAtW7aEw4cPU8iGMRwwDfKDjZFknHcKcIHBzeqKMg5vJyt4q5fyXPli+xW4m/VfPhOjWVjHhGEkzglBv6SG+SVP8p6YidRB9XFdx1EJFqt1GObvs7fh2I37FHr8fHATUeXhX2jfADadv00NA2f9cxl+GNlctLHoM+wxYRgJ87CgGM4laCa/hGHkxv3sfPhs22Vaf6NHINR3Flcg0MTYCOYODQO05bdeSIL9V1NFHY++woYJw0i8PLKwWAEedhbgI/KkzDC65rNtVyA9txBCPO1Ik0cKYINAYSyoC5STXyT2kPQONkwYRsIcj72nCuNwh1PGkDh07S5sPHcb8LCfS031pHO5mtYzEOo6WMLt9Icwb/c1sYejd0jnl2YYpkb9cRhGH0OYH2yKpPVx7RpAU28HkBJWZibw2ZDGtP7r0ZsQmZgh9pD0CjZMGEaioIv4YumEp43EV4aRKlganPDgIXjaW8DbvYNAinQNcoOBTb0AJU3e23ARiopLxB6S3qB1w+STTz4hF7T6EhwcrO2PZRjZg52Bi0oU5DLGUkWGMQQuJ2XC0sOxtI7aITbm0i0e/WhAI7CzMIFLSZmw/Gic2MPRG3TiMQkNDYXk5GTVcuTIEV18LMPoRxiHvSWMgVBcooAZGy7S335NPKBHI3eQMih6KKjQfrf7mujNMfUFnRgmJiYm4OHhoVqw3wXDMFUXVmMYQ+D343FwITEDbC1M4JOBoSAHRrTyhnBfJ3hYqOzeLYO+uJJHJ4bJ9evXwcvLi5pwobLj4xp1MQwDkJVXCFG3Ob+EMRywwuXrXcr+Se/1DQY3OwuQA5ie8MXQJmBmbAQHr92FLReSxB6S7NG6YRIeHg4rVqyAnTt3wqJFi+DmzZvQqVMnyMrKqvR/sHU5tkpWXxjGkDgd94Dc2ahd4uVgKfZwGEaroJfho01R1PW6lY8jjGxdH+REQ1cbeK2bP63P/ueyzpti6htaN0z69u0Lw4cPh7CwMGq+tX37dkhPT4d169ZV+j9z5swBe3t71eLt7a3tYTKMpOAyYcaQ2BGVAnuvpoKpcR2YM7QJtUqQG5O6NIQANxu4l10Ac7ZfFXs4skbn5cIODg7UlAs7ilbGjBkzICMjQ7UkJHAnR8ZA80s4jMPoORkPC+GTLZdo/RW8uLvbghwxMzEiowr580yC6uaCkYFhgu3Mb9y4AZ6enpW+B7uH2tnZlVkYxlDIyC2k8kOkLXtMGD3nq51XITUrH/xcrOHVrspwiFxp1cAJRoUrw1DYETmvsFjsIckSrRsmb7/9Nhw8eBDi4uLg2LFjMGTIEGppPnLkSG1/NMPIkpM37wMm9uNE7S6TBECGqWku1aqTymIITCC1MDUGufNun2AqI469lwMrT9wSeziyROuGSWJiIhkhQUFBMGLECHB2doYTJ06Aq6urRj8nOeMhWd7ct4CROydiH9DfthzGYfSY/KJimLFBKTv/bCtvvfEO2luawhs9Amj9z9MJXD5cA7Quqbd27VrQBdfvZMNPB26QSuDLnf3AWsJqgQzzOFi/hDEEFh+MhZjUbHCxMYMZ/fRLDRyl6mdtvQzXU7Mh8nYGhNWTVq8fqaM3vXI6+rtAA2cryM4vgs3nuY6ckSdpOQVwJZnzSxj95sbdbPhxn7IA4qOBoeBgZQb6hJ2FKfQO9aD1vyISxR6O7NAbwwTLy0aH+9A6xvXYfcbINb8EwbJDjFMzjL6BczMmhhYUl0CXQFcYGFZ5IYSceaZlPfqLgmsYtmIM0DARDgQs2bqcnAnnEtLFHg7DVBvuj8PoOxvO3qY8KgtTI/hscGNSTtVHOvi7gIedBaTnFsK+K6liD0dW6JVh4mhtBgNKrW/OhmbkiCHll9y+fRvGjBlDCfGWlpbQpEkTOHPmTFk10I8+ImkBfL1Hjx7U3oKRL6iI+vn2K7T+evcAve6abWxUB4a0qEvrf5/lcI7BGibImLbKcM4/F5MpXs8wcuFedj5cu5NN6+F6bpikpaVBhw4dwNTUFHbs2AGXL1+Gb7/9FhwdHVXv+eqrr+D777+Hn3/+GU6ePAnW1takHp2Xlyfq2JmaM3fHVXiQUwCB7jYwsZMf6DvDWijDOfuj78LdrHyxhyMb9M4wae7tAI087aCgqISTjhhZcaLUWxLsYQtO1vqVDFieL7/8klpNLF++HNq0aQO+vr7Qq1cvaNiwocpbMn/+fJg5cyYMGjSIWlr8/vvvkJSUBJs2bRJ7+EwNNUvWnlaqeH8+pAmYGuvd5ecR/N1soJm3A/W92nz+ttjDkQ16d2RgvFLwmqw8eQtKSjgJlpEHhpRfsmXLFmjVqhX10XJzc4PmzZvD0qVLVa9js8+UlBQK3whg3yxsCnr8+PEKt8nNP6VLYXEJJbwKmiWtGziBoSAkweKNMhdlGKhhggxq5gW25iZw634uHIm5J/ZwGKZa+SWGUCYcGxtL3cYDAgJg165d8Morr8Drr78Ov/32G72ORgni7u5e5v/wsfBaebj5p3T55fBNClOiJ/C9vvqlWfIkBoZ5UVHG1ZQsVasJxgANExRXG1qadMRJsIwcSM3Mg9i7OYAFCm199d8wKSkpgRYtWsAXX3xB3pKXX34ZJk6cSPkkNYWbf0qThAe5sGCvUpH7/X4hVKRgSNhbmULPRkoDm5NgDdgwQUaXhnP2XLlDcvUMIwdvCeZH4USm72ClTaNGjco8FxISAvHxyr4pHh5Kcao7d+6UeQ8+Fl4rDzf/lB5UWbU5CvIKS6CtnxMMK71hNDSeKU2CRfFPzH9kDNQwCXS3hTa+ToApJmtO8Z0TI4/EV0MoE0awIic6OrrMc9euXQMfH+UNBSbDogGyd+9e1euYM4LVOe3atdP5eJmasTMqhSpSTI3rwGeDm+itZsmT6BTgQoKJWJG0P5o1TQzWMEGEJNi1p+Ip+YphpIohJb4i06ZNo2aeGMqJiYmB1atXw5IlS2Dy5Mn0Ol7A3njjDfjss88oUTYyMhLGjh0LXl5eMHjwYLGHz1SBrLxC+GTrJVqf1KUhVagYKibGRjCkeammCVeLGrZh0ifUgxpEpWblw57LZV3CDCMVMNQYdz8XjOoAtPY1jGqF1q1bw8aNG2HNmjXQuHFjmD17NpUHjx49WvWed955B6ZMmUL5J/j+7Oxs2LlzJ1hYWIg6dqZqfLf7GtzJzAcfZyuY3NUfDB1B02Tf1VS4n82aJgZrmGAm9LOtlZn5f3ASLCNxb0mTuvbU/MtQGDBgAHlCUDDtypUrlPyqDnpNZs2aRVU4+J49e/ZAYGCgaONlqk7U7Qz47Vgcrc8e1BgsTI3B0AnysIWwevZQVKKg/jmMgRomyMg29anS4diN+9TRkmGkapi0NZAwDqPfoJjY+xsjKb9vYFMv6BzoKvaQJOc1YfFPAzdM6jlaQbcgN1pfdUKZ8c8wUsKQ+uMw+g9KNFxMzABbCxP4cECI2MORFE839aJEYNQzuZLMmiYGa5ioJ8H+FZEADwu4/TQjLY2HxLSHYGJUx6DUMBn95E5mHny9S1lt9U6fYHCz5XwgdVDDpXtwqaYJe00M2zBBV2I9R0vIzCuCrRc5tsdIr0wYY88oDMgwcmbW1suQnV9E/WFGt6kv9nAkLVG/6fxtrhY1ZMME20+PCleeJKs4CZaRYhiH80sYmYP6HNsik2m+/XxIYzDCMjPmEboEuVK16L3sAjh07a7Yw5EkOjdM5s6dq9Io0CUjWnmDmbERXEjMgIuJ6Tr9bIapTBXzhJD4yvkljIzBEDkqvCLj2zeAUC97sYckWbCr8qBmSk0TToKVgGFy+vRpWLx4MbUw1zUuNubQt4lSypr75zBSIP5BLiRl5FEyXCsfzi9h5MsP+65DwoOH4GlvAdN6ckl3VcM52DIlLadA7OEYrmGC4kgonoStzR0dHUHMJFisIc/ILRRlDAxTvkwY4/GWZqzzwMiTa3eyYMmhWFr/5OlQzpWqAiGedtQXq7BYwXmPYhomKDXdv39/6NGjB4hFKx9HCHK3pYZS3OWRERsuE2bkTkmJAmZujCLRsB4h7tA7tOIGi0zlXhMO54hkmKxduxbOnj0Lc+bMqdL78/PzqWGX+qIJMLdlTNvSJNiTtyjGzzBigMceC6sxcgcvqqfiHoClqTF8OihU7OHIikHNvEgmADVf0OvE6NAwSUhIgKlTp8KqVauq3OMCDRh7e3vV4u2tlJXXBIOb1wUrM2O4cTdHdcfKMLom9l4O9XDCtgkt6osT2mSY2oCdcr/YcYXWp/UMgLoOlmIPSVY425hD12Cl+CdrmujYMImIiIDU1FRo0aIFmJiY0HLw4EH4/vvvab24+FHBsxkzZkBGRoZqQeNGU9hamKq6PLISLCMWgrekRX0H7iPCyJIvtl+B9NxCCPawhfEdfMUejqzDORvP3YYi1jRRofUspe7du1OjLnXGjx8PwcHB8O6774Kx8aOTsrm5OS3aTIJddTIedl1KgdTMPHCzY3VCRqz8Ehexh8IwNRIGxDAO9iH7YmgTKoFlqk/XIDdwtDIl7+nhmHv0mNGBx8TW1pbamqsv1tbW4OzsTOtiZUS39HGkhK21pzXnjWGYquaXnGRhNUamFBSVwAcbI1VNUjkUWXMwlMuaJo9isGaukAS75lQ8u9AYnRKTmk2qjxamRtDUm4WoGHmx5NANytFD9dJ3eweLPRy9CefsvnyHZSzENEwOHDgA8+fPBzHp29iTXGjJGXmw72qqqGNhDDOMg6Jq5iacX8LIh1v3c+CHfTG0/uGARmBvZSr2kGRPqJcd5emgJ4o1TQzcY4IJhyhTj6w8yUmwjO5QlQn7sdorI68Q5IebL0F+UQl09HeBp5t6iT0kvQBlLASvCetrGbhhgmBjP0zewkZKeCfAMLoQpBI6CnN+CSMnMNSAcyXmRcwe3JguqIxmwDwTbH54Lj6dQr2GjkEbJj7O1tA5wJXWV7PXhNEB0XeyIC23kLR0wuo5iD0chqkSGGaYs+Mqrb/U0Rd8XazFHpJe4WprDk8FKq9Ff7PXxLANE/X+OevOJEBe4aOaKgyjjTBOqwZOBl1i+cknn9Adt/qCEgICTz311COvT5o0SdQxGzLY+PTmPWXC66td/cUejl4yTNA0OXsbiksMW5Xc4LstdQt2Ay97C+ryuj0yGYa2UB4cDKMNuD/Of4SGhsKePXtUj1FwUZ2JEyfCrFmzVI+trKx0Oj5GSXpuASzYe53W3+oVBDbcpE8rdA9xA3tLU0jJzIOjMfegc6kHxRAx3Fu2UjCuh7X4wl0Bw2gLvAti/RIoY4h4eHioFheXsmJzaIiov25nZyfaWA2Z7/fGQMZDpcKrUDDAaB6s0BMSiv828HCOwRsmyLNtvKmZ0tn4dLicpJmGgQxTnivJmZCZV0R3nI29+CJ7/fp18PLyAj8/Pxg9ejTEx5fN88L+WmisoBAjtqnIzc0VpfmnIRN7Nxt+Px5H6x/0D6EbOUZ7CNU5O6NSIDPPcDVN2DABADdbC+jdWNmue+VJzXpNbqc/hIQHj59QGcNAqMZp4+sEJgacX4KEh4fDihUrYOfOnbBo0SK4efMmdOrUCbKylF1WR40aBStXroT9+/eTUfLHH3/AmDFjRGv+aahgwisqZHcNcoVOpYUCjPYIq2cPAW42VJK97WIyGCp1FFicLnHwzgcnGmzopy13LiYljlx6gqolTr7fnZr91eYuY0dUClm9kbczwNS4Dvz2Yhto35D7ohgyE1achr1XU+GDfiEwsbMfyAltn4Pp6eng4+MD3333HUyYMOGR1/ft20d9t2JiYqBhw4aVekxwUR8zGifanDf0mWM37sGopSfJS7LrjU7g72Yr9pAMgp8P3oC5O65CKx9H+OuV9iB3ajJ3GPZtmxooduXvZgO5BcWw6dztav0v2nbRKVkwb/c16D3vEHT79iB8vSuajBKksFgBr646C3H3WCvFUMG2B6duPqB1zi95FAcHBwgMDCTDozIPC1LZ6wg2/sSJT31hap4P9dk/V2h9dHh9Nkp0yJDmdQEjZmdupVEllCHChkkpWI6IJyCy8kQ8GRuPA1+PTMyAr3Zehe7fHoTe8w9R5jrqVGC+SqcAF/hiSBM4+l43aOrtQO3BJ/x2mpLIGMPjUlImZOUXgZ2FCTWRZMqSnZ0NN27cAE9PzwpfP3/+PP2t7HVGs2Dy5eXkTLC1MIGp3QPEHo5B4W5noQqbbTDQJFiu+1IDS4W/2hlNxsXpuDTKBSiv2nkuIQ12RKbAzkspkJj2UPUaqiF2DnCBPo09oUeIGzhYmaleW/p8Sxi08Cg1vpqy5hz8Oq6VwecYGBpHb9yjv+F+zpxACABvv/02DBw4kMI3SUlJ8PHHH4OxsTGMHDmSDJTVq1dDv379qAv5xYsXYdq0adC5c2cICwsTe+h6T05+EXyzK5rWp3TzB2cbc7GHZJBJsAev3YW/IxJhWo9AMDKwOYMNEzWwhhzLtf48k0Clw2iYkAs+7gHli+y6lAJ3Mv+LYVuaGkPXYFcyRlAPpbL6fjc7C1g6thU88/MxknT+fPsV+HhgqA6/GSM2uy7dob9dDFibQJ3ExEQyQu7fvw+urq7QsWNHOHHiBK3n5eWRvgk2+szJyaE8kWHDhsHMmTPFHrZBsPhQLKRm5UN9JysY176B2MMxSHo2cidvFeprofZRB3/Dyk9kw6Qcz7fzIcNkR1QyvPuXMey5cgfu5xSoXkfjA4Vw+jb2gC6BbmBpVrXusI3r2sO8Ec3glVVnYfnROAh0t1XppzD6DVZmXUhIp75MvUOV1V+Gztq1ayt9DQ2RgwcP6nQ8jJLkjIew5NANWp/RN5i7X4vYZHZgUy9qlYJeE0MzTDieUIEBgTkhmLCKBgoaJQ5WpjC8ZT349YVWEPFhD1jwXHPyklTVKBHo28QT3uwZSOsfbopSyZMz+g1625DWDZyoJwbDSBVM2s8rLIHWDRyhT6mEAiOupsmOqBTIzi8CQ4I9JhWAdwqfb7sCTerZQ7/GnhDup7m+JhizvZ6aDVsvJMErqyJg8+QO1EyQ0V92Rin1CPrxRM9ImIuJ6bDhrLIicWb/Rtw9WGSaezuAn4s1xN7LoXYphqS6yx6TCmjr5wxbp3SkqpqOAS4abbaGJ/vXz4RB03r2pZU6Zwxa4U/fSc3Mo7I/BL1sDCNFsMpQKA8e2rwueY0ZcalTp46qsd9fEYZVncOGiUjxQ0yG9bCzgJjUbJiy+hwl2TL6ByZMY+V58/oO4GFvIfZwGKbS4xST/C1MjeDt3kFiD4cpZWiLupSbhhpIKNxpKLBhIhJYqfPLuFY0EWBZ2Bfbr4o9JEYLbI9U5pdgSJBhpEh+UTFJzyMvd/IDLwdLsYfElOJpbwndgtxo/bdjyp5FhgAbJiIn2n43ohmt/3r0Jqw9VbaJGSNv7mfnw8mbygRnTiRkpMofx2/Brfu54GZrDv/rUrHcPyMeL3b0pb/rIxINRqBT64YJNuhCUSRBIrpdu3awY8cObX+sbOjXxJMEdJCZm6JUjd4Y+fPv5TtQogBoUtcevJ2sxB4OwzzCg5wCUqxGMIRjXYkWEyMe7Rs6Q5C7LbVLWXc6AQwBrRsm9erVg7lz50JERAScOXMGunXrBoMGDYJLly5p+6Nlw+vd/WFAmCd18XxlZQTE3+duxPoAlvkh7C1hpMqCPdcgK68IGnnawbAWykRLRnpJsOM7KIXuVhyLM4h8RK0bJig7jdLSAQEB1KTr888/BxsbG1J5ZP478L4Z3pRaXqeV9tTJ4kodWZORWwjHYpQy9CjGxzBSAxPvV55Uho9n9g/hVgkSZnDzuuBoZUpijSj6qe/oNMekuLiYFB9RZhpDOpWBrcuxVbL6YiiVOu525qRz8vqac9Thk5Enu6/cIQ9YsIct+LnaiD0chnmEOduv0BzTI8Qd2huYsqgcrw+jw31o/dcj+p8EqxPDJDIykrwk2JZ80qRJsHHjRmjUqFGl758zZw7Y29urFpSoNpSukmicYKXO/ui7NHEw8hZV68vVOIwEOXL9Huy9mkqd0N/vFyz2cJgqtksxMapDZd3Y2V6f0YlhEhQURG3LT548Ca+88gqMGzcOLl++XOn7Z8yYARkZGaolIcEwEn6QsHoOFNZBfjlyE/48zZU6cgPDcIeulYZxmnAYh5EW6CX5bNtl1cWOPXryuXHtH6a80Vl+9CboMzoxTMzMzMDf3x9atmxJ3pCmTZvCggULKn0/elaEKh5hMSQGhHnBGz0CVJU6J7lSR1bsu5oKBcUl0NDVGgLceNJnpMX6MwlwNSWLuqlP7a6cZxh5ML6DsnR468UkSM3KA31FFB2TkpISyiNhKgcnDLSOsZngJK7UkRU7SkXVMIzD/UYYKYHN4L759xqtv949AByszMQeElMNmnk7QEsfR7ourDyhv950rRsmGJY5dOgQxMXFUa4JPj5w4ACMHj1a2x8t/0qdZ7hSR27kFhTBgWuptM5lwozU+PnADbiXnQ++LtbwfFtlMiUjL8aXlg6vOnEL8gqLQR/RumGSmpoKY8eOpTyT7t27w+nTp2HXrl3Qs2dPbX+07LE0M4Ylz7ciRUau1JEHB6LvUtv4+k5WEOplWCFIRtpgqenSw7GqDupmJiz8LUf6hHqAl70F3M8pgC0XkkAf0fqRuWzZMvKWYOgGjZQ9e/awUVINsPEbVuqYmygrdWZtvUSdQBlpi6qhdgmHcRgp8dXOq5BfVAJt/ZygZyN3sYfD1BATYyMY217pNVl+NE4vrwdsMssAbEEuVOr8dvwWzPrnsl4ejHIH3ar7SsWP+jbhMmFGOpyLT4PN55OoU+3M/o3YaJY5z7X2JlmJK8mZcCL2AegbbJjIhIFNvWDO0CYqK/nTrWycSI3D1+9BTkExuVmb1rMXezgMQ+A88dk2pSYSys5j81BG3jhYmalaCGADWH2DDRMZMbJNffhyWBO668GeCR9tvgQlnHMiGXaUiqr14WqcJ/LJJ5/QPlJfgoP/E/rKy8uDyZMng7OzM4kzDhs2DO7c0X8pbm2wLTIZIm6lgaWpMUzvHST2cBgNJ8HuuXJH76o22TCRGc+2RuMkjIyTP07cgg83R7FxIgEKikpg92UhjMPVOFUhNDQUkpOTVcuRI0dUr02bNg22bt0K69evh4MHD0JSUhIMHTpU1PHKNeH1483KhqmTujQkkS5GP/B3s4Uuga6AjnO8UdUn2DCRISNaecPXzzQl42TVyXj4YFMkGycic+zGPerSihVULes7ij0cWWBiYgIeHh6qxcVF2a8F1Z4xaf67776jbuQozLh8+XI4duwYN/+sZs4TdivH6g2sEPtfFz+xh8RoyWuy7kyCXslJsGEiU55pWQ++G9EUsCHomlMJMGMDGydSEFXrHeoBRtyltUpcv34dvLy8wM/Pj3SN4uOVglERERFQWFgIPXr0UL0Xwzz169eH48ePizhieeWVoGr0xcQM6kr785iW1AiO0S86B7iSwjQK560/kwj6AhsmMmZI83ow79lmZJz8eSYB3v37IuuciEBRcQn8e7m0TJjDOFUiPDwcVqxYATt37oRFixbBzZs3oVOnTpCVlQUpKSnUxsLBwaHM/7i7u9NrlWGIXckrY+WJW/BXRCLNDT+MbAHeTlZiD4nRAkZGdVQy9b8dj9Ob+Z8NE5kzqFldmP9cczA2qgPrIxLhnb/YONE1J28+IHVeJ2szaNPASezhyIK+ffvC8OHDISwsDHr37g3bt2+H9PR0WLduXY23aahdyctzJu4BVe0h7/YJho4ByhAZo58MbVGX+h7dup9Lfbr0ATZM9ICnm3rBgueakXHy99lEmL7+AhsnIlTj9GrkTuJHTPVB70hgYCDExMRQvklBQQEZKupgVQ6+VhmG3JVc4E5mHryy6iwUlSio19bLnTmvRN+xMjOB59oojfBfj+hH6TDPonrUkfiHkc3BxKgObDh3G95cd55CDIx2QQNwZxSLqtWW7OxsuHHjBnh6elKyq6mpKezdu1f1enR0NOWgtGvXrtJtGHpXcqwMw2TXu1n5EORuC19R9R7nOxkCY9s1oBvT47H3SXRN7rBhokf0a+IJP45SGieo8jht3QU2TrQM6kNgUzQ7CxNo5+cs9nBkw9tvv01lwNiuAqtthgwZAsbGxjBy5EgKw0yYMAHefPNN2L9/PyXDjh8/noyStm3bij10yfLp1ktwNj6djsXFz7cEa3MTsYfE6Ii6DpaqpqHL9UBwjQ0TPQPFvRaObgGmxnVg64UkmPrneShk40TrYZyejTy4KVo1SExMJCMEm3uOGDGChNSwFNjV1ZVenzdvHgwYMICE1Tp37kwhnA0bNog9bMny5+l4kg5AB8mC55pDAxdrsYfE6JgXS0uHN51PopslOcMmtR6CJas/jW4Jr66KgG0Xk6l0ECcrU85/0ChYnr1TrWkfU3XWrl372NctLCxg4cKFtDCP53xCOny4SSmi9maPQOga7Cb2kBgRaFHfkVphXEjMgNUn4+H17gEgV/hKpadg91DULjAzNoLtkSkwZfU5ikEzmuNCYjokZ+SBjbkJVz4wooD5JJP+iICC4hJKvp7c1V/sITEiUadOHXixo7J0GFXB5Tzfs2Gix3QPcadYMxonOy+lwGurz8r6YJUaO0q9Jd2C3Vi8itE5GKKdvPospGTmkcjWtyi4yOJ+Bk3fxp7gbmdOBuu2yCSQK2yY6Dno1l0ytiXlP/x7+Q68uuos5BcViz0s2YPhMSG/pB+LqjEi8MX2K3Dq5gPy2C1+vhXYWpiKPSRGZMxMjOD5tj60vuzITdl2oGfDxAB4KsgNfhnbCsxNjKgT5asr2TipLZeSMiHhwUPq2NolkGP6jG7ZeC4Rlh9VNm5DT4m/m43YQ2Ik1IXe3MQIom5nwplbaSBH2DAxEDoHusKyca3pgN17NZXi0tjki6kZgreka7ArWJpxGIfRHVG3M+C9vyNpfUo3f0p2ZxgBZxtzGNK8rqxLh9kwMSAwQXP5C63BwtQI9kffhdG/nIT7Mi8rEy2MU9q0D8uzGUZXPMgpgP/9EQH5RSXQNcgV3ugRKPaQGAkyvrR/DlYNJqblgtzQumGC/Stat24Ntra24ObmBoMHDyYVR0Yc2vu7wIrxbUiECcXBhi46BjfuZos9LFlx7U42xN7LoXguJr4yjC5AscQpa87C7fSH4ONsBfOfVfbIYpjyBHnYQgd/Z8DOJL8fvwVyQ+uGCao7Tp48mcSTdu/eTe3Me/XqBTk5Odr+aKYS2vo5w4ZX24O3kyU1fhr60zE4GXtf7GHJhu2RyaqW45h4yDC64Otd0XA05j7lNS15vhXYW3GyK1M5L5Z6Tdacioec/CKQE1o3TLCt+QsvvAChoaHQtGlTanWOPS9QZpoRD383W9j4agdoXt8BMh4WwphlJymhjnkyLKrG6Jp/LibB4kOxtP718DC6I2aYx9E1yA0aOFtBVl4RbDgrr7ld5zkm2PUTcXKqvD18fn4+ZGZmllkYzeNiYw5rJralctfCYgVM+/MCzN9zTbYlZroAw17Rd7JI8r9HiLvYw2EMgKspmTB9/UVa/19nP2rYyTBPAjVthFwTrOBCpWq5oFPDpKSkBN544w3o0KEDNG7c+LF5KdjIS1i8vZUtnRnNg8JgP45sAZO6NKTH8/dchzfXXeBy4id4S9o3dGFXOqN1MnILKdn1YWExdPR3gem9g8QeEiMjhrWsB7bmJpQTd/DaXZALOjVMMNckKirqiX0yZsyYQZ4VYUlISNDZGA3Vsn6vbzDMGdqEkuk2nrsNzy87Bem5BWIPTXKwqBqjK4pLFDD1z3OUB4bdY38Y2RxMuN8VUw0wB+7Z1sob+19lVDqss6P8tddeg3/++YfamNerV++x7zU3Nwc7O7syC6MbYZ4V41uThY2KkpgUe+s+JykLxN/PJdEiNN6wmzDDaBMMqx6IvkvaQ9hawtHaTOwhMTJkXPsGgMVbh6/fg2t3skAOaN0wwXwFNEo2btwI+/btA19fZcyLkSadAlzhr1fa0x0auv+G/HQMzsQ9EHtYkmDnJaW3pK2fEzjxRYLRIpvO3YYf9sXQ+txhTaBxXXuxh8TIFG8nK2rqighqwWDohgmGb1auXAmrV68mLZOUlBRaHj58qO2PZmoIZvxvfLU9hNWzJ0GnUb+chK0X5NsQSlNgl2aERdUYbbLtYjK8ue48rU/o6AtDmj/ew8wwVS0dxuqctBzph+i1bpgsWrSI8kSeeuop8PT0VC1//vmntj+aqQVudhaw9uW2ZGljR+Ipa87Bwv0xBluxk5T+EM4npEOdOgC9Q7kah9EOuy/fgalrz5Ew1vCW9eCDfiFiD4nRA9r4OkGolx0pBq8+FQ9SRyehnIoW1DZhpI2VmQn8PKYlvNTRVyXw9O7fF6nduqFW47T2cQI3Wwuxh8PoIVg1MXnVWSgqUcCgZl4wd1gYJaYzTG2pU6eOymuy5FCs5FuRcIo381gw0XPmgEYwe1AoJVCtO5MILyw/RaJsBimqxtU4jBY4duMevPz7GSgoLiHhvm+HN2W5eUajoLHbyNOO5u65O66ClGHDhKkSz7drQN2Jrc2MSRZ72KJjkPBAfs2hakJqVh6cvqVMAO7Daq+Mhjkd9wAmrDhDbvYeIW6w4DkuC2Y0Dx5Tswcr9cPWRyTScSdV+OhnqkzXYDdYN6kdeNhZQExqNgz56Sici08DfWfXpTuAqTXNvB3A095S7OHoJXPnziV3MwowCmBeGj6nvkyaNAn0CcxbGr/8NAmodQpwgR9HtaDmkAyjDVr6OMJzpbomH26KosaQUoTPAKZahHrZw6bJHcgleC+7AJ5bcgJ2loqO6SvC92NRNe1w+vRpWLx4MYSFhT3y2sSJEyE5OVm1fPXVV6AvRN3OgLHLTkJ2fhGVoGNjPlRiZhht8k6fYHCwMoWrKVmw4pg0y4fZMGGqjYe9BXlOugW7kft58upzEHFLPz0nWC59Ilbp8uzLZcIaJzs7G0aPHg1Lly4FR0fHR163srICDw8P1aIvYovRKVnw/LKTkJlXRHexGCa1NGOjhNE+qMH0Xp9gWp+3+xqkZOSB1GDDhKmx1PGS51uSFwGls19fc04vE2J3X06h79e4rh0JFTGa1znq378/9OjRo8LXV61aBS4uLtRbC1tV5ObKP68Jw6CjfzkBabmF0LSePSwf3xqszU3EHhZjQIxo5U2d5XMKiuGzbZdBarBhwtQqmQpLGus7WcHt9Ifw/oZIvdM5EUTV2FuiebBn1tmzZ6lpZ0WMGjWKxBmxjQUaJX/88QeMGTNG1l3JscUDGiUYBsVw6O8vhoOdBTeDZHSLkVEdmD2oMVVa/nMxGY5cvwdSgg0TplbgpErNxYzqwLbIZFhzSn8aLp6NT6MyTgRLOBnNgY05p06dSh4RC4uKdWFefvll6N27NzRp0oTCPb///ju1trhx44Ysu5InpuXCqKUn4U5mPgS42cAfE9pwh2pGNBrXtYex7RrQ+keboyTVUZ4NE6bWNPV2gHf6KNuxf7r1EsXP9UGBc9TSE1BYrKB2836uNmIPSa+IiIiA1NRUaNGiBZiYmNBy8OBB+P7772m9uPjRSTI8PJz+xsQoe8jIqSs5xvHRKEHPop+LNayaGA7ONuZiD4sxcN7sFQiutubUF23poViQCmyYMBrhpY5+0CXQlZJhX1t9Fh4WSMf6ri5rTsXD//44A3mFJfBUkCt1dmU0S/fu3SEyMhLOnz+vWlq1akWeEVw3Nn40ERSfR7ClhZy6kqMODhq58Q9ywdvJkowSVg9mpOLxntlf2fYAm0ZKRZuKDRNGYzHLb0c0Jev7emo2zPrnEsgNzI/BLPUZGyKpV8mIVvVg6dhWnJioBbChJya0qi/W1tbg7OxM6xiumT17NnlW4uLiYMuWLTB27Fjo3LlzhWXFUq7qGvPLSboj9bK3gNUvtWUtHEZSPN3UC9r5OdNNJXq8pQAbJozGcLExh/nPNqNGd5hr8s9F+XQkRqGh9/6OhAV7r9Pj17v5w5fDwsCUFThFwczMDPbs2QO9evWC4OBgeOutt2DYsGGwdetWkAsZuYVklFy7kw1utuawemJbruxiJEedOnVg9uBQyhPccyWVwthiU0chgzIKzK7HZDaMG0vFPctUzte7rsLC/TfA1twEtk/tJPnJOLegCF5bfQ72XU2lLHWUbR4d7iP2sCSFHM9BMceclVcIY5adggsJ6eBiYwZrX24H/m6cp8RIl7k7rsLPB29AXQdL2PNmF43p6tTkPOTbQUbjvNEjkESjsvKL4LU15yTdjRi7bI5cepKMEnMTI+qmzEYJUxty8otIZh6NElTYXPlSOBsljOR5vbs/hRsxQfvH/UrPsViwYcJoHAx/LHiuGdhZmNDk/M2/0SBF4u/nwjM/H1ddQFZPDIdeoVwWzNScvMJieOm3M3DmVhrYWpjAHy+GQ7CHPDxMjGFjZWYCHw0MpfUlh2Lhxt1s0cbChgmjFeo5WsFXzyiTFBcfjIVD1+6C1PqUDF10DG7eyyHX5V+T2kNLHyexh8XIlJISBeyPTqXqm+Ox96kL928vtoEm9ezFHhrDVJneoe7QNciVZBJQ20SsTA82TBit0aexJ4xpW5/W31x3nsompQAaSc8uPg73svMhxNMONrzanl3tTI0TXH85HAtdvz1A4Zuz8elgaWoMv77QGlrUf7T3D8NIPRH2k6dDqcP10Zj7pAorBmyYMFplZv9GEOxhSxLcb/55ge4sxeTviER4ccVp6hHRwd8Z1v2vLbjbsaYEUz0uJWXAe39fhPA5e+CzbVfg1v1cCt282MEXdr3RGcL9nMUeIsPUCB9na5j8lD+tz/7nMiVy6xoWaGC0CrZx/3FUcxj4w1E4EnMPfj50A14tPeh1CbokFx28AV/tjFbV7n8zvCndGTBMVSgoKoEdUcnwx/FblEMigIY3SnsPbu5FcXqGkTv/6+IHG88lQtz9XJi/5zp8OKCRTj9fJ7PyoUOHYODAgeDl5UWuok2bNuniYxmJ4O9mC58+rUyq+vbfaxChNqnrAuwO/PGWSyqj5OXOfqS3wkYJU1U5+e/+jYb2c/fB1LXnyShBzYcBYZ6w7n/tYMfUTjAqvD4bJYxe3VB+Oqgxra84FgdXknXbEFMnM3NOTg40bdoUFi5cqIuPYyTI8Fb1YGBTLzISXl9zDjIeFuqsSmLyqrPw+/FbJPyGlv/7/UJIqZZhHudhOxF7H15dFQEdvtwH3++LoZwkFEp7o0cAHHuvG/w4qgW08XWimy2G0Te6BLpCvyYeNGfP3BSl0zC8Tkz8vn370sIYLjh5fz6kMZXmYs8QjM//NLqFVid1TEyc+PsZOBX3AMyMjeC7Z5vCgDAvrX0eox8aJBvP3Ybfj8eRYqsAGiDj2jWAXqHurAbMGAwfDmgEB6Lvkpf7r7OJMKKVbjp2s++R0WnDqB9GNodhi47BjqgUWH0qXmtiZigS9MKvp6hvDyrQLhnbCto15IREpmJQswFzRzA5GoUBEayuGdKiLoxt58NaJIxB4mlvSR7CL7ZfJWXYXo3cwcHKzDANk/z8fFrUJW0Z/aCptwO82ycYPt9+BWZtvQytfJwgyMNWowmKx27co743KZl54G5nTnoSfGFhKgO7YauXRfq5WMPz7XxgWMt6ZEwzjCEzvoMv/BWRSB7Er3ZFwxdDmhimYTJnzhz49NNPxR4GoyUmdPSlCp2D1+7SRWHLax1r1ZfhTmYe7L+aSgJXR67fo1JgJMDNBla82IYE1BimMrwcLKlHUvcQd/KOdGjowjlIDFMKhi5nD2oMzy45AWtOxVM4p5m3A+hVEz/MKdi4cSMMHjy4Wh4Tb29vWTUQYx4PJhL2XXAY7mblw8g23jBnaNVb2WMy1oXEdDJGsMfNpaTMR7ocYy7AO72DdOJ2NAT0uYkfCv+hpw3VihmGqZg3/zwPG87dhsZ17WDz5I5gXEXjvSZzhyQ9Jubm5rQw+gsaD1iyO2bZSVhzKgHaN3Shqp3HJbIevH6XjBH0tDzIKVC9hvmzYfUcoFuQG3QLdoNQLzu+42WqjJstC+wxzJOY0S8Edl+5A1G3M2HVyVuk3aMtdGKYZGdnQ0xMjOrxzZs34fz58+Dk5AT16yslyxnDo4O/CykM/rg/Bt7fEAlN6zlAfWflXSs68qLvZJFHBI0RzApXr1ZDlc3Oga7QNcgNngpyJUOHYRiG0Q6utuYwvXcQfLT5Eny9Kxr6Nvak52Qbyjlw4AB07dr1kefHjRsHK1as0Es3MlM1iopL4LklJ0i0ChNjp3T1p1wRNEaSMsr21sGcEfSIdA12g5Y+jly2qUPkeA7KccwMI2UwjD5o4RHymgxtXhe+e7aZVs5DneeY1ASeYPSbxLRc6LfgMGTmKcs0BcxNjKB9Q2cyRp4KcgNvJ84BEAs5noNyHDPDSJ3zCekw5KejgJbD2pfbQtsn9IXSmxwTxrDApMNvRzQjlU2M93cNdiVjpJ2fS62qdRiGYRjNghU5I9vUh7Wn4iHqdsYTDZOawIYJIwl6NnKHqE97k0IrS3wzDMNIF6x4HB1eH0K97LWyfQ7SM5LB3MSYjRIDZe7cufTbv/HGG6rn8vLyYPLkyeDs7Aw2NjYwbNgwuHPnjqjjZBgGSIZBW0YJwoYJwzCicvr0aVi8eDGEhZXVspk2bRps3boV1q9fDwcPHoSkpCQYOnSoaONkGEY3sGHCMIxooJTA6NGjYenSpeDo6Kh6HhPlli1bBt999x1069YNWrZsCcuXL4djx47BiRMnRB0zwzDahQ0ThmFEA0M1/fv3hx49epR5PiIiAgoLC8s8HxwcTLpHx48fF2GkDMPoCk5+ZRhGFNauXQtnz56lUE55UlJSwMzMDBwcyvbkcHd3p9cqgpt/Mox+IAvDRJBa4YmGYcRBOPc0JXuUkJAAU6dOhd27d4OFhYVWm3/yvMEwMps7FDIgISEBvxEvvPAi8oLnoibYuHEjbc/Y2Fi14OM6derQ+p49e+hxWlpamf+rX7++4rvvvqtwm3l5eYqMjAzVcvnyZdH3Fy+88ALVnjtkofxaUlJCGfm2traPLScVuhDj3VhtlB41tR2pbkuKY9LktqQ4Jk1uS4wx4TSRlZUFXl5eYGRU+9Q03NatW7fKPDd+/HjKI3n33XdpTK6urrBmzRoqE0aio6Ppdcwxadu2reTmDaluS4pj0uS2eEzS/n41mTtkEcrBL1OvXr0qvx93lCYkqDW1HaluS4pj0uS2pDgmTW5L12NCWWlNgcZC48aNyzxnbW1NmiXC8xMmTIA333yTmn3i2KZMmQLt2rWrklEi5rwh1W1JcUya3BaPSbrfr7pzhywME4ZhDI958+aRcYEeE0xq7d27N/z0009iD4thGC3DhgnDMJIAu5Crg0mxCxcupIVhGMNBr3RMzM3N4eOPP6a/UtiOVLclxTFpcltSHJMmtyXFMckZqe5PfT9e9Pn7SXFMUv1+FSGL5FeGYRiGYQwDvfKYMAzDMAwjb9gwYRiGYRhGMrBhUg1QC2HTpk1iD8Pg4P3OyBk+fsWB97t8kY1h8sILL8DgwYM1sh08YMsvMTEx1d7GpEmTKmxKhq/he6oLCkcZGxtTU7PqoK3xaHK/a2qbNd1H5bl79y688sor1BQOE7g8PDyoHPXo0aM12h4KDb344oskIoQ9Xnx8fEhy/f79+1X6/z59+tDvhAll6uDE+jhxsCcd46amptRfpmfPnvDrr7+S6JihoYljWBPzhrbO1dqcE9qaO3jekN/c8YKE5g3ZGCaaBH/I5OTkMouvr2+1toGqd9iE7OHDh6rn8vLyYPXq1XTQ1gRs844iUocOHSLFytqMp7i4GHJzc2s1HilSm32kDmpjnDt3Dn777Te4du0abNmyBZ566qkqTwbqxMbGQqtWreD69eukVIoXq59//hn27t1LgmAPHjyo8rYWLFgAaWlpoKljPC4uDnbs2AFdu3alyW7AgAFQVFRU6+0bIpqYN7Qxd6ifE+XVdKs7Hpw38CJU27lMakhx3pDi3NFHIvOGLA2TnTt3QseOHanzKCpF4k67ceOG6nXcqWj1bdiwgXaslZUVNG3aVNUuXbB01Re0pjdv3gwtWrQg/QQ/Pz9qCFb+x8AfDRuP3b59my787733nuo1/Dw8kZs3b17tseKBvmLFChKQatSoEa2r6zvge7Zt2wZhYWE0PlS/jIqKUr3HxcWFZH8/+OAD+n/8jkuXLq32eLp16wavvfZame+M4lZoyeN+mj9/fpnXmjVrBp988onqMY7zl19+gSFDhtB+DwgIoJO3Mho0aPDEbQpkZ2fDn3/+SXcseOejvo9wvXwn2oruGD777DPaV4cPH6bvv2vXLhg0aBC0adMGZsyYAU8//TS9Lz09HV566SWSRUdlQ9wvFy5cUG0Hx4fjXLx4Me1vvJNyc3Oj53Cf9+3bF/bs2UPHCf4mwn4U5Nbx9/H396cJE48BHAeSkZFBSqeV3aX+/fffEBoaSv+P++7bb79Vvfb+++9DeHh4mWO8bt26JPWOxzEe3zjZCPvtSd8R2bp1K7Ru3ZqOOdxv+LvKmZrOHfj71nbewGPijz/+oIsY7m/8DE3MHatWraI7dpyP3nrrrWrNG3ghxLHhZ+DxiN8xPj6+RuOpaO7A/YZjePXVV8s8z/PGYpoH8HvivL1+/Xro0qWLqHPHtm3byswbeEzjfkNjTNfzhiwNk5ycHJKqPnPmDFmWqA6JX7y8uwl/1LfffhvOnz8PgYGBMHLkyEpdUnjAjR07lqzDy5cv04GDP8Tnn39e5n0ffvghudpw0kJL+fvvv4crV67Qa+jywotATcaKEwoeLNgPBF2ouK3yldzTp0+ngwnbxONBMXDgQCgsLCzzHvw/PMEvXbpEJ1h1x4MHHN4pqbePT0xMpAO1ql1gcWIeMWIEXLx4Efr16wejR4+uluVfGevWraNeKUFBQTBmzJgK99HjwAkcf8+5c+fS5IdjqkxJdPjw4ZCamkonZEREBJ2k3bt3L/M9cFLHbRYUFNB+w++rPgHjCY7fHU9uHCceX3hXJBwzeIzZ2NjQZIPHEvLjjz/Sfn7nnXceGROOA/frc889B5GRkTTJ4fEoTBj4WadOnaKJTgCPAxzXqFGjaALBi6xwQXzSd8SJCo8N/A3xLhGPF5yI5UxN546DBw9WeKxVZ97ACR4vZiiTj+cU/tYCtZk78DFeHPGz8Xes7ryBXhK8EGMoAY8XNLBrMp6K5o6VK1eS8YYX4CdhSPMGjgn3DY7D0tKyjEEp1txx7949+o3Lzx0zZ87U/byhkAnjxo1TDBo0qMLX7t69S90LIyMj6fHNmzfp8S+//KJ6z6VLl+i5wYMHU/dSa2tr1fLMM88ounfvrvjiiy/KbPePP/5QeHp6qh7j/0+aNEk1ltTUVOqGOmbMGEVcXJzCwsKCxoKv4XuqM1ZfX1/F/Pnz6bnCwkKFi4uLYv/+/fQY/+J71q5dq9rO/fv3FZaWloo///yTPqt58+b0HjMzMxpLTcfz8OFDhaOjI21X2O92dnaKTz75ROHj46OYN29emf9v2rSp4uOPPy6zj2bOnKl6nJ2dTc/t2LGjwt+yqtvEbrTt27evdB8tX75cYW9vX2EHW4Hw8HDF5MmTaf2vv/6i72lkZKSwsrJSzJgxQ3HhwgV67fDhw/SdsVutOg0bNlQsXryY1nF8eBxt2bJFNT78jri95ORk1f9gJ1x8/eTJk/R39+7dFf4OvXv3VnXTbdu2reLFF1985DuMGjVK0bNnzzL/N336dEWjRo3K7LtmzZqp9i9+L/zeAs8++6wiJCSkSt+xXbt2itGjRyvkjqbmjtrOG+pjadGiBW2vNueqMNYhQ4bUaN5AOnToQO/Zt2+fwtzcXGNzh/A9w8LC6LzkeaPsvJGYmKg4ceIEfc6HH374yLwhxtyB3ys4OFj1WH3u0PW8IUuPCcbj0PuBblN0JaGnAUEXpDrovhTw9PSkvxg7RW8H3gkJC1qh6IqaNWsWWaHCMnHiRHJzootUAON+Anj30bBhQzhy5AgsX76c3ITotqrJWPExvg8xMTGBZ599llx16qh/Nrrs8A5A8NYgGG5B9ypawTUdD1rczz//PN1VIOh2xk6S1UmAU9/v2JgNPwct7NqAbk30BjxpHz0O9EYJljvevWKsGZPpcHzo9kbLH/cdHgvo/kWXrfrxcPPmzTKua3S74t0lgvMg/j5494ifUx50ueKdI7prn8SXX35JoT313xbBxx06dCjzHD7G3xTveoU7H4xbC2PCuyx8TgCfw7vjqnxHPDfwTkifqM3cgS54TcwbSOfOncHR0bFW56rwO2HiZG3mDTwe8K5bCHNoau5Alz+GjXCfVAVDmjfQAy2AHrnK5g1dzh34u6Inr6K5Q9fzhix75aArEsMpmEOB7kf8UbEjKbrU1cHMYgEhZog7GA96jNGpgzsbXYlDhw595PMeF8LAmB3G+PBgqKinR1XHigcHvi6A48R4n7q790mgSxAnKSHOW9PxoEsWJ2E8SNHtiAYY/g+6bsu7QMuHksrvd2HfVxZCq+o2MeaKcfvK9lFVt1P+d8XvhSfUsWPH6HtjZjuGY/BiVL53C1I+Ho3HEX4/PPExVFIefB4vQPjbVBW8aGGmP7rnq1sRgRMwunLxooDfCTP+cSJWHw8mbOLx/qTvWJ0xG8LcgceLpuYNBPe/4EqvybmK4QBEvVKlJvMGXvTwO2py7sD9gQYLnhN4fvG8UXbeUJ87MIm2Iq7oeO7AeQFDM2fPnqVEaPW5Q9fzhuwME7yDR8sST45OnTrRc+ixqC1o9eJ2y0885Tlx4kSZxykpKXRi48GMB0R1xyokyWHstnxMFycctFoxPip8tpAlj9nXeECHhISQtaqeVY0TBR7wNRkP0qRJE8oUx/fh3Tc+RtBAwTtBAfSkqH92TajqNvFEwDh5r169KtxHOFFgbgXGSNHwFCx3dfBOEePsGK8VwMcCmMSKeTl4LODvindXwl1hReDEi/F0LKnDmDNO0jjR4ecguA2MT+Pn4T7ESRZzFXr06PHItvD/EOHuBePZOMEL20Lwty5floiP8Y4Lj0EE8xewzA+NSvxsHJvg1dm3bx/Fl6dNm0bve9J3xDtYjA+XPy7lijbmjurMG+rHHT5u3749JQnW5FzFeUOI+WNFjTBHVGfeKI8m5w68E8djEHMzMEmV542y8wZ6XdBYwvNz0aJFtM/Vz/UUEeYO/P7oCcHPRcNEmDtEmTcUMkGILxYXFyucnZ0pr+P69euKvXv3Klq3bq2KJ6rHXs+dO6f6f4y/4XMYj6so3rxz506FiYkJ5VJERUUpLl++rFizZo3igw8+UL0H/x/jkxizxNjyRx99RLFBjAFmZGSo3ifEZasyVozL4eNDhw49MqZ33nlH0apVK1WsODQ0VLFnzx6K6T799NOK+vXrK/Lz81U5JkKsFMdS0/EILFmyhPJVcBkwYAA999577yk8PDxorBcvXqR8HRsbmwrjuurguDCWW/63rM428bdJT0+vdB9h7Bzj/q+//roiJiZGsWrVKoWXl1eZWPHKlSspvv7jjz9SLHbYsGH0Pxg7XbduncLd3Z3isyUlJYqOHTtSzHrXrl10PB09elTx/vvvK06fPk3bwvHh//bo0UOxefNm+o647W7duini4+MpNt64cWNFQEAAjQ154YUXFN7e3rR/YmNj6XcVYv3Dhw+nsa5YsYJyl7KyshTPP/88xfqF7xAREUHH26xZsxTR0dH0XvxM9X0rxHgxX8DJyUmxYMEC+r/PP/+c9iv+lkVFRVX6jjg+/Dw8zvF8wN9n7ty5CrmhqbkD8zFqM28sW7aM8kGCgoJov2LuSk3PVVzw3Cw/1urMGwh+Jxy/gKbmDvx+pqamlHfC80bF88b58+fp8zDnxNXVVXHw4EFR545x48bR5+L3wXyT2bNnizZvyMYwwR2NBwSCSUB4UODki8lVBw4cqLVhIkwyaHTgD4YJPm3atKGTTAD/f+HChZTYhju+QYMGqoNDHfWEsSeNFS9kFU0uiJD0hBcX/Lt161aaZHBCwrEJSVflDZPajEcAD25M7goMDFTtd5ywMAkK9w2eJHhwV5Zw9rgJRv23rOo2W7ZsWeF3E/YR7gv8XH9/f/r98ETC36687Y0nJk6wOGniX9yX+FvixQKT73Jzc+l9mZmZiilTptAkhe/FsWFCF04cCI4Px/nTTz/Re3B/YkKem5ub6v34//fu3VN9Nk7S06ZNo+MHPxfH+uuvv6p+Q0w8w8kWE6rxMR7HwsVHAJPvMGENPwMvMF9//fUj+2TkyJH0P8LEjJMeToT4WXiBEXjSd0T+/vtvSqbFceDFdejQoQq5oam5oyLDpDrzBiYf4rGmnnxa03MVj++uXbtWOHdUdd6oyDCp6XjKzx14sfXz86PHPG9UPm+g8dC3b186Z9EgEHPuGDdunGreEIxpseYN2RgmaFAImdGGhnDngxOkrsADG088vPvW9H6X0m+JJx7eBVYXYYJhpI+Ujjd9nzfUjbsRI0bo7e/I84Z2kXyOCcZEMRaGscKKZJMZzYK5MhhPRu0DjD9iIlRFdfFy/C2xSgJVFTF+jnFVjDFjchwK5jH6h9jHmyHOHZgQivsacyaEShi5/448b+geyRsmmCmOiUYoQIPiRIx2wQkAy6kxEQoXTe53sX9LnCy3b99OCXlYNo7JYaiGWFFCGSN/xD7eDHXuwMTICRMm8LzB1Jg66Dap+b8zDMMwDMNoDlkKrDEMwzAMo5+wYcIwDMMwjGRgw4RhGIZhGMnAhgnDMAzDMJKBDROGYRiGYSQDGyYMwzAMw0gGNkwYhmEYhpEMbJgwDMMwDCMZJK/8imDLZ2wTbWtrSyp8DMPoFtRhxPbw2KpdaLMudXjeYBh5zh2yMExwcvH29hZ7GAxj8CQkJEC9evVADvC8wTDynDtkYZjgHY/wxezs7MQeDsMYHJmZmXSRF85FOcDzBsPIc+6QhWEiuGFxcuEJhmHEQ04hEZ43GEaec4c8gsUMwzAMwxgEbJgwDMMwDCMZ2DBhGIZhGEYysGHC1Ir8omIoLlGIPQyGYZhalbQ+LCiGO5l5UFRcIvZwDB5ZJL8y0iQ7vwie/vEIYErTrjc6g4kx27kMw4hrYOQVlkBabgGk5xZC+sMCyMgthDS1dXyeXn9YqHz8sIBeLyhSGiStfBxhzcttwZTnM9Fgw4SpMUsOxULs3RxaT0h7CL4u1mIPiWEYAyItpwB+3B8Dh6/fLTVE/jMwasqZW2mwYM91eLt3kMbGyVQPNkyYGpGamQdLD8WqHsfdy2HDhGEYnVBYXAIrT9yC+XuuQ8bDwkdeNzGqAw5WZuBgZQoOlqbKv/i4dN3eygwc6TXle+wtTcHR2gwORKfCa6vPwcIDMdApwAXC/ZxF+X6GDhsmTI2Yt+c6PCwsVj2+eS8Huoo6IoZhDCFUcyD6LszedlnlrQ1yt4WpPQKgvpOVygCxNjOukebOgDAv2v5fEYkw7c/zsGNqZ7C3MtXCN2EeR62CaHPnzqUf/4033qj0PStWrKD3qC8WFha1+VhGZGJSs+DP0/G03sbXif7G3VdOEgzDMNrg+p0sGLf8NIxfcZqMEidrM/h8SGPY9npH6NfEExrXtYd6jlZgY25SKyHAT54OBR9nK0jKyIP3N0WSMcTIxGNy+vRpWLx4MYSFhT3xvai6GB0dLUv1SOZR5u6IBizE6dnIHXqGuMOpmw/IY8IwDKNpHuQUwPw912DVyXiqADQ1rgPjO/jCa938wc5C894MNGzmP9sMnvn5OGy7mAxdg9zgmZby6A9l0IZJdnY2jB49GpYuXQqfffbZE9+PhoiHh0dNPoqRGCdj78OeK3fA2KgOvNsnmCYNhA0ThmE0CSax/nHiFizYcw0y84rouV6N3OH9fiHQQMv5bM3rO8K0HgHwzb/X4OPNUdC6gSP4OHMOnaRDOZMnT4b+/ftDjx49qmzI+Pj4UCOfQYMGwaVLl2rysYzIoEvzix1Xaf3Z1t7g72YDDVys6HFS+kPSNGEYhqntPLP3yh3oM/8QzP7nMhklIZ52sHpiOCwZ20rrRonAK0/5Q5sGTpBTUAxT156nhFtGoh6TtWvXwtmzZymUUxWCgoLg119/pZBPRkYGfPPNN9C+fXsyTiprgZyfn0+LendCRny2R6bAhYR0sDIzhjd6BNBzrjbmlGiGJ2/Cg1zwd5NP91mGYaRFdEoWfLbtMhy+fo8eu9iYwdu9gmB4K2/y0uoS/Lx5zzUjA+l8Qjp8v/c6vNWLS4gl5zHB9uFTp06FVatWVTmBtV27djB27Fho1qwZdOnSBTZs2ACurq6Un1IZc+bMAXt7e9WCnhZGfLfqV7uU3pKJnfzAzdZCFaYT7mBu3ssVdYwMw8iT+9n5MHNTJPRdcIiMEjNjI5jUpSHsf/speK5NfZ0bJQJ1HSzhiyFNaH3h/hjKp2MkZphERERAamoqtGjRAkxMTGg5ePAgfP/997ReXPxkV76pqSk0b94cYmJiKn3PjBkzyLsiLGgQMeKy+uQtuHU/F1xszGFiZ78yrwmGCWqZMAzDVOeG55fDsfDUNwdg5Yl4Sqrv29gD9rzZBd7rGwy2WkhurS4Dm3rBsBb1aGxYQlyRbgojYiine/fuEBkZWea58ePHQ3BwMLz77rtgbGz8xG2g8YLb6NevX6XvMTc3p4WRBpl5hfD9PqUhiSEczFpXx7c0KewmlwwzDFPFPJI9V1Lh822XIe6+0tPayNMOPhrYCNpKUNTs00GhcDruAcQ/yIWZm6Lg++eacXWpVAwTW1tbaNy4cZnnrK2twdnZWfU8hm3q1q1L4Rhk1qxZ0LZtW/D394f09HT4+uuv4datW/DSSy9p8nswWmTxwRtUfePnak1Jr+URFF/ZY8IwTFXbWcwpTaRHL+w7vYNgWMt6ooVsqlRC/FwzGP7zcdh6IQm6BrnC0BZcQqwtNN6lKD4+HpKTk1WP09LSYOLEiRASEkJeEkxkPXbsGDRq1EjTH81ogeSMh/DL4Zu0juXBFTW24lAOU13Qc/rhhx+Cr68vWFpaQsOGDWH27NllxKxw/aOPPgJPT096D1YBXr9+XdRxM7XnbHwafLVLqWs1oaMvHJj+FIxorfvk1urSor4jTO2uTPr/aPMliC/19DASlKQ/cODAYx/PmzePFkaezNt9DfKLSqjjJmoIVITgMUGlxLzCYrAwfXJIjzFsvvzyS1i0aBH89ttvEBoaCmfOnKGwMCa7v/766/Ser776ivLX8D1owKAh07t3b7h8+TKrR8s4LDx17TkSShsQ5gkz+4fIKiQyuas/NQw8HZcGU/88B+v/1467qmsB3qNMpVxNyaSeEciMfpVPINgMy85CaeNigizDPAn0mqKmEeohNWjQAJ555hno1asXnDp1SuUtmT9/PsycOZPeh3IDv//+OyQlJcGmTZvEHj5TA/A3nbkxChIePIR6jpbw+ZAmsjJKVCXEzzYDW3MTOBefrsq9YzQLGyZMpXy546oqS76lj2Ol78PJRfCasAIsUxVQy2jv3r1w7do1enzhwgU4cuQI9O3blx7fvHkTUlJSyog4ojclPDwcjh8/XuE2UfsIQ8XqCyMd/j57G7ZcSKKL+4LnmlNHXzmC/Xg+G6LMqfxx33VKimU0CxsmTIUci7kH+6PvUvvw6b2fLCqkyjPhyhymCrz33nvw3HPPUUWfICGAzUCx1QWCRgni7l42fIiPhdfKw/pH0iX2bjZ8tDmK1t/sGfjYGx05MKhZXRjavC7duL2x9jyFqBjNwYYJ8wglJQpVxvyo8Prg52rzxP9pIJQMl7YiZ5jHsW7dOhJqXL16NSlJYx4JqkLj35rC+kfSBFtVTFlzDnILiqGdnzMJp+kDWELs7WQJt9MfwoeblEYXoxnYMGEeYevFJIi8nUFS86+XZqE/CVUohz0mTBWYPn26ymvSpEkTeP7552HatGkqmQGh6eedO3fK/B8+rqwhKGofYSdz9YURn693RsOlpEzKRcP8DKlX31QVFH+b/2xz+j6bzyfBpnO3xR6S3sCGCfPI3c3XpaV8eGeDGgNVgUuGmeqQm5sLRkZlpx8UaCwpUTZKwyocNEAwD0UAc0ZOnjxJbS4YeXAgOhV+OaKUG/jqmabgYa9f1VQYknq9m/LmDYXXsF8YU3vYMGHK8MfxW5CY9hDcbM1hQiffKv+foP6ampUPOfnKFuUMUxkDBw6Ezz//HLZt2wZxcXGwceNG+O6772DIkCGqhGrMOfnss89gy5YtpBaN4o1eXl4wePBgsYfPVIHUrDx4e/0FWh/Xzgd6ViI3IHcmd21IcgrZ+UVUCl3EXYhrDRsmjIqM3EL4obT8DRPUrMyqLnNjb2VKrlqEE2ArLpVMSn9YRkDMkPnhhx+oRPjVV18l8cW3334b/ve//5HImsA777wDU6ZMgZdffhlat24N2dnZsHPnTtYwkUme2lvrLsC97AII9rAluQF9BXVMhBLis/Hp8ON+LiGuLWyYMCp+OhhDDaoC3GzgmZbVl1v+L5zD7szyYJlk+7n7YPnROLGHIgmwvQXqlGB7iocPH8KNGzfIO2JmZqZ6D3pNsKUFVuHk5eXBnj17IDAwUNRxM1XjlyOx1CXYwtQIfhjZXO9FF72d/ish/n7vdYi4xSXEtYENE4bAzHLhooldPWuiZiiEc9hj8ih7r6TS338uJok9FIbRKhcT0+Grnco8tY8GhEKAuy0YAlhCPKS0hHjq2vOQxSXENYYNE4b49t9oakEe7usE3YLdarQNFlmrnMvJSrGvi4kZkFvAOTiMfoJ5Fq+vOQdFJQoSZhzZxrC0ZLCEGFVtMU8P++kwNYMNEwYuJWXAxtJSt8dJzz8JrsypGOwfhAJTCE7YKGXNMPoIiqjF3c8FL3sLmDs0THaS87XFzsIUFjynLInGOXVH5H8NbZmqw4YJA3N3XAXMycSmWs28HWq8HcFjwqGcskSnZJF7V+Bk7H0xh8MwWmHjuUTYcPY2oEzJgpHNKSHeEGnp4wSTuvjR+vw91ykRmKkebJgYOIeu3aUkNVPjqknPV8Vjgpn4HF99NIwj3DyevMmJcYx+cet+DjXoQ1CUsXUDJzBkXu7ckKp0ou9kwZ4rZUUCmSfDhokBoy49P6atD/iUJq/WFBtzE5UgG1fm/MflJKVh0iNEqeNwLiGdwjsMow9gbhrmleQUFEObBk7wWld/MHSwQeHz7XxofeGBGywTUE3YMDFgNp2/DVeSM8myn1KqXlhbfF2s6G/sPWVOBfOfx6R/E08y3HAixyRYhtEHvtt9DS4kZtDFeN5zzWpU0aePvNjRF8xNjOBCQjocu8Hh2+rAR5CBgnfs35RKz7/StSE4Wf+nH1EbhGZ+7DH5zyt1tdQwCfWyg3A/pYub80wYfeDw9bvw88EbtP7lsCZQ18FS7CFJBrwJGdmmPq3/WCpcyVQNNkwMlN+OxUFSRh542lvAix2qLj1f5cocToAl4h/kkovbzMSIkoOxHBs5Fcd5Joy8uZedD2+uU0rOjw6vD30ae4o9JMnxcmc/MDGqA8dj70PErTSxh2MYhsncuXNVPS0ex/r16yE4OJikpLGT6Pbt22vzsUwtScspUMkmo/S8JlUZWcuk4jAOynKji7tNqWGCk1Qh99RgZArmTExffwHuZuWTUvTM/o3EHpIk8XKwhKEt6tL6TyxVr33D5PTp07B48WIICwt77PuOHTsGI0eOhAkTJsC5c+eoARcuUVHKDG5GHLnorLwiulgObVF96fkqhXLYY1Im8bWRpx39DXSzBQcrU8gtKIao25xnwsgTVIneH32XPIE/jGoOlmb6LTlfG155yp9KqPdeTVXNB4wWDBNspjV69GhYunQpODo6Pva9CxYsgD59+sD06dOpWRc26WrRogX8+OOPNfloRgMIiVjoZkQhIE3SoDT5NT23ENJzC8DQweRipJGX0jAxMqqjKqU8xWXDjAxBgxq1j5AP+4dAsIfy2GYq9yL3a6IMc/10gL0mWjNMJk+eDP3794cePXo88b3Hjx9/5H29e/em5xlxkjGvpWTRepO69hrfPnYkdrdTlgxzOOe/UE5IqccEEfJMWM+EkRs5pZLzBcUl0LORO8kMME9mcmkJ9bbIZJUKNKNBw2Tt2rVw9uxZmDNnTpXej51B3d2V+g0C+Bifr4z8/HzIzMwsszCaAXs4UDKmsTIZUxtwOEfJg5wCSM7Io3UMmwmE+zrT39NxD6CYVSEZGfHp1ksQey8HPOws4Kthhic5X1PwxqR7sBspbAtVTIyGDJOEhASYOnUqrFq1ihJZtQUaPfb29qrF29uwGkFpk6spSiMvwN1Ga3oD/yXAGnbJsBDG8XG2AluL/+S5MayDYnSY5yO8h2GkDoYe151JJAXjec82A0cNSQwYCq+Wek1Qth+7uTOVU60rU0REBKSmplKOiImJCS0HDx6E77//ntaLix9Vs/Tw8IA7d8pK8uJjfL4yZsyYARkZGaoFDSJGM1wtDeMEqd3BaxpVzxwDD+WUT3wVwLyeVg2UuVmcZ8LIpQpn7o4rtD6qTX1o11Dp9WOqTksfR2jn50yNPJceihV7OPpjmHTv3h0iIyPh/PnzqqVVq1aUCIvrxsaPZma3a9cO9u7dW+a53bt30/OVYW5uDnZ2dmUWRrMekxAtJqyxlkm5xNdyhol6OOfkTRZaY6TPniupcDY+HSxMjWBqd82oRBtyrsna0/GkA8NUjAlUA1tbW2jcuHGZ56ytrcHZ2Vn1/NixY6Fu3bqqHBQM/XTp0gW+/fZbSpjFHJUzZ87AkiVLqvPRjAw9Jpj8indahhqHrijxVUDQM0GPiSHvI0b6YB7U17uUVTgoxuhmp70wvr7Twd8Zmno7kEz9r0duwjt9gsUekiTReJJBfHw8JCcnqx63b98eVq9eTYZI06ZN4a+//oJNmzY9YuAw2udhQbEqvBLsqT3DpL6TFcWhMYcCE0ANVfI/JjW7TKmwOlgRZWlqDGm5hXC99H0MI0U2nrsN1+5kUy+c/3VpKPZwZA3egEx+SrkP/zh+CzIechf2WntMKuLAgQOPfYwMHz6cFkZcrqdmARaBOFubgWtpF2BtgEqyXvaWlOCFXhNnLX6WVEGjBGPJKKaGsv/lQWGqFj4OcDTmPpUNB7prz1BkmJqSX1QM83Zfo/VXn2pIxglTO7DLeJC7LUTfyYI/jsfBaxpqoKpPcK8cAw3jaDt0IAitGaqWyWW1/JLK9rWQZ8IJsIxUWXkinm4wUJtoXPsGYg9HL0CRxVe7Kr0my47chNyCIrGHJDnYMDEgriYrDRNdKDUaupaJUJFTUX5J+TwT7DSMeSYMIyWy8gphYWl/lzd6aLanlqHTv4knyQhgKHfNKa46LQ8bJgZE9J1MreeXPFoybJhaJuoek8po5u1AQnepWflw675h7idGuvxy+CbliPm5WMPwlprtqWXooIbUpNJ8nSWHblDIjPkPNkwMBLwjv6LymNjqzGNiiKEc5b4u2yOnIvAOFI0ThMuGGSmBpay/HFZqbbzdO0hrYoyGDHYdRgXdO5n5JLrG/AcfbQbC3ex8uvvBnn0BbjowTNS0TAwtTIGy/1iRhN6Qhq42j32vKpzDeSaMhPhxXwy1rgirZw99G1cuhsnUHHMTY5jY2Y/WFx24AUXFJWIPSTKwYWIgRJcmvqInQxctyrFkGI2g3IJiuJuVb5BhHH83G6q+eRzhfkKeCRsmjDRIeJALq07eovV3+wSzxo4WGdnGG5yszSD+QS41+GOUsGFiaImvOsgvQfCCXNfR0iDDOSop+seEcQRa1HckiXqsfEhM4zwTRnywPLiwWAEd/V2gg7+L2MPRa7Ab+4sdlNVOP+2/Qd3fGTZMDK5UWBcVOYZemVOVxFcBa3MTEltDuGyYkULLio3nlfkO7/QJEns4BsHz7RqArbkJ6ZrsuVK2r5yhwoaJgfXI0aYUfXkwm98QuwxXx2OChKvJ0zOMmHy9MxowJQzLWcPqKROzGe2ConXPt/Oh9YUHbhhcTl5FsGFiAGBSlSB7rs3mfZUmwBpQKAclpoWW5o/TMKkwz4QNE0ZETsc9gL1XUym0+FavQLGHY1C82NEXzE2MqIfO0Riu0GPDxADAUEpBUQlYmxlDvdK8D11giF2GhTLhug6WVZbvbunjRL2FMBcnNTNPyyNkmEfBu/Qvdygb9Y1o5Q1+T6gmYzSLi405jGxTn9YXloraGTJsmBgAgn5JoIctySHrCl81LRNDSeqqbhgHQQNGyEdhrwkjBvuupsKZW2l01z61O/duEYOXO/uBiVEdOB57HyJupYEhw4aJAeWX6DLxFUHvDJ5o+UUlkGIgnoDqJL5WpGfCeSaMrikuUcBXO6NpfXwHX/CooOkko328HCxJdA35ycC9JmyYGJCGiS4UX9VBtUhvJyuDyjOpiuJrRRhaQ78GDRqQPkb5ZfLkyfR6Xl4erTs7O4ONjQ0MGzYM7tzhigVtsPn8baoIsbMwgVdKZdIZcXjlKX/Sf8JcH8H7aoiwYWIA6FKKvjwNnEu7DBtAngnm8Vy/k10jj0nrBo70Fy8QqNCr75w+fRqSk5NVy+7du+n54cOH099p06bB1q1bYf369XDw4EFISkqCoUOHijxq/QN7tHy3+xqtT3qqIdhbVS0vitFej7F+TTxp/acDhus1YcNEz8nM+69KRNehHEOrzLlxNxsKiktIk6C6ScbONuYQ4Gajqo7Qd1xdXcHDw0O1/PPPP9CwYUPo0qULZGRkwLJly+C7776Dbt26QcuWLWH58uVw7NgxOHHihNhD1yvWnIynFgputuYwvr2v2MNhAGByV3/6i0qwsXeVNzqGBhsmes610jCOp72FKHdDvgakZSK4XkO87Gok422o8vQFBQWwcuVKePHFF2m/RUREQGFhIfTo0UP1nuDgYKhfvz4cP35c1LHqE9n5RfDDPuVd+dQeATppVcE8mRBPO+ge7EZ6Mj8fvAGGCBsmes4VkfJLDFH9VZVfUs0wjkAbIc8kzrB0DDZt2gTp6enwwgsv0OOUlBQwMzMDB4eyAl/u7u70WmXk5+dDZmZmmYWpnGWHb8L9nAK6ecASYUY6TO6m9Jpg12HB421IsGGi50SrFF91H8ZR95jE38+l7H+DqMipZuJreQVY9LxgCM5QwLBN3759wcvLq1bbmTNnDtjb26sWb2++2FbG/ex8WHo4ltZRTM3UmC8FUqJFfUdo5+cMRSUKWHpI+TsZEtU6GhctWgRhYWFgZ2dHS7t27WDHjh2Vvn/FihWPZN1bWHApmhjN+0J01LyvohI4M2Mjyr1I0mPLHwWqaloqLOBuZ0HJwmi/RcQZho7BrVu3YM+ePfDSSy+pnsOcEwzvoBdFHazKwdcqY8aMGZSfIiwJCQlaHbucWbj/BoVyGte1g36NlcmWjDRzTdaciod72YbVob1ahkm9evVg7ty5FAM+c+YMJaYNGjQILl26VOn/oAGjnn2PExGju4vlf6XC4nhMUN7a28lS78M5yRl5kJ5bSLot/qVJrDVBKBs+cdMwwjmY1Orm5gb9+/dXPYfJrqamprB3717Vc9HR0RAfH083Q5Vhbm6uumkSFuZRsIv1yhPKefjdPsE6FV1kqk4Hf2do6u1AOlDLjtwEQ6JahsnAgQOhX79+EBAQAIGBgfD555+TxsDjMuXRS6KefY9xYkY3YGwyK78ITI3rgJ+rMqQiBr4uNnpfmSMkvqJRYmFa8yRCQxJaKykpIcNk3LhxYGJionoewzATJkyAN998E/bv3083QuPHjyejpG3btqKOWR+Yt/s6eTDbN3SGjv4uYg+HqYQ6qOvzlFJX5o/jtyDLgMK7NQ4sFhcXw9q1ayEnJ+exdzHZ2dng4+ND8d4neVcEOIlNs2Gchq42osaQfV2s9L4yp7aJr+UrcyITMyC3oAj0GQzhoBcEq3HKM2/ePBgwYAAJq3Xu3JluajZs2CDKOPUJ9KBuOJdI6+/0Ca5R9RijO3qEuENDV2sKu20+nwSGQrWvVpGRkeQlQbfppEmTYOPGjdCoUaMK3xsUFAS//vorbN68mcoB8Q6pffv2kJioPDEqg5PYNAOKdVWny622MIRmfkJ+SW33dT1HK2oAiElvZ2+VzbHQN3r16kXhRvS+lgdz0RYuXAgPHjygmx80Sh6XX8JUjW/+jaYy1L6NPaCZd9mqJ0Z6GBnVgVHhPqpcE0Oh2oYJGhvnz5+HkydPwiuvvEJu2MuXL1f4XvSkjB07Fpo1a0bCSTi5oLDS4sWLH/sZnMSm2bv4IJFKhStq5qev1LYip6LqnJMGkmfC6IaIWw9g9+U7JHn+Vq8gsYfDVJGhzetSAcGlpEzypBoC1TZMUF/A39+fEtTQs9G0aVNYsGBBlf4XE9qaN28OMTGPl9rlJDbNcFVkDZPyHpOEB7lQVFwC+gbGfm/dz9WYd0rIM+FOw4ymQM/UlzuUjfpQs6Q2CdqMbnG0NoO+TZTewtUG4jWpdeIBhmcwJ6SqeSkYCvL05PI0bZNXWKzyUIhVkSPgYWdB7dQxPIHy1/pGtJq6rpO1Wa23F+6nrMw5n5BOvyPD1JYD1+7CqbgHYGZiRCqvjLwY2aY+/d1y/jbk5Ot37lm1DRMMsRw6dAji4uLIwMDHBw4cgNGjR9PrGLbB5wRmzZoF//77L8TGxsLZs2dhzJgxVC6srlnAaIeY1GwSNHOwMgV3O3PR46SCAqw+NvPTVH6JAGqZuNqaU1PACwn6nWfCaJ+SEgV8tVPpLXmhfQPwtK9eHydGfMJ9ncDPxRpyCoph6wX9T4KtlmGSmppKxgfmmXTv3p06hO7atQt69uxJr2OGPWqVCKSlpcHEiRMhJCSEyoyxugYbcVWWLMtoJ4wjhcz7BqWVOfpYMiyUCte2IkcAfy9DKhtmtMvWi0mUb2ZrYQKvlpafMvKiTp068Fwbb4NJgv1PPKCK0tGPA70n5Uv+cGHEk6IXO4xjCF2GNZn4KtDW1wm2XUymPJMpGtsqY2gUFpfAd7uv0fqkLg3Bwar2oUZGHIa1qAdf74qGC4kZcCkpA0K97EFf4QYJeopUEl8fqcwpTRLVFzCZV8gx0ZTHRL2hX8StNLq4MExNWH8mkRKzXWzMYHyHBmIPh6kFzjbm0CtUmQS79pR+V6qyYaLnhonYpcL67jHBBGOUjLY2M4b6TspwlSYIcLMBRytTeFhYDJG3DaNEkNEsmDj9w77rqr4rVmbVcpAzEmRUaRLspnO39VqAkQ0TPQQbPt3NygdMLQl0l4ZhInQZxj4dmNSpb2GcYE87jfYcwW21bsB5JkzNWXUynno4edlbwKhw5QWNkTft/JzpBghbjfxz8b98Tn2DDRM9RAgt+DhZgbW5NO6S3GzNwcrMmDrnJqTpTzhH04mvFZUNn4xloTWmemBJ6U/7lXpRr3cPAHOTmvdvYqSDkdF/SbBr9TgJlg0TPURqYRwhq1woGdancI42El/LK8CeiUuj0m+GqSorjsXB/ZwCKj0f1rKe2MNhNMgzLetRF/Oz8elwtbTIQd9gw0QPuZosrYqc8uEcfZGmRzVNbXpMUBfF1tyE3LZCewGGeRIZuYWw+OANWp/WM1DUBp6M5nGztaDmfvqcBMtHrF4375OOx0Rdy0RfDBPM48G7Ukwt0YZ3ytioDrRq4EjrLE/PVJUlh29AZl4RBLnbwsAwL7GHw2iBkaU5QxvOJuqlOjQbJnoGuvyFHJMgiXlMVKEcPVF/vVTqxfBztQELU+3E8DnPhKlu4vvyo3G0/mavQI0mZDPSoZO/C3UhRwN0e6T+JcGyYaJn4EUfy1ctTTVbvqrJUE7cPf1IftVmGEdAUIA9HfeApMUZ5nH8tP8G5BYUQ9N69tCrkdLdz+hpEmxr/VWCZcNEzxC8JYHuNhQKkBKClklSxkO9cD9e0WLiq0CTuvZkZKblFkLM3WytfQ4jf5IzHsLKk7do/a1eQZJoRcFoj+GtvGmOPx2XBjGpynlfX2DDRM+QauIr4mxtRsmcCgVA/AP5e0003byvIjBxsaVPaZ4Jh3OYx/D93hjSCEIvW6cAF7GHw2gZD3sL6BbsRutr9CwJlg0TPeOKIEUvscRXVcmwnlTmoOqi8B20GcpRD+dwAixTGbfu58D6M8qL0/Te7C0xFEaWapr8rWdJsGyY6Bn/Jb5KzzDRJ2l61IpBz4+rrTkt2iRczTDBEmWGKc/8PdehqEQBXQJdVYrBjP7TJdANPO0tID23EHZdSgF9gQ0TPSI7v0gVIpFiKAfxdbbSi8ocVX6Jlr0lSFNvBzAzMaLy5Dg9a4LI1J5rd7Jg0/nbtP52ryCxh8PoEGOjOvCsHibBsmGiZxMU4m5nDk7W0mxvri+hHFVFjhYTXwWwFLmZtwOtc54JU57v/r1G3rs+oR7QpJ692MNhdMyIVt6kpXQi9gHE6kmCPBsmesTVZGnql1QcypH3nb8uEl8rCudwQz9GncjEDNh5KYUadqJuCWN4eDlYwlNByiTYP0/rRxIsGyZ6hNA3IUSi+SWIb6nIWkpmHjwsKJatiJ1gBOoilIOE+5YKrbFhwqjxzb/R9Hdws7qS6STO6J6RbZRKsH9FJOpF93Y2TPQIKTbvK4+jtRnYW5rKOs8Ex/2wsBgsTI1UonHapoWPAzXuup3+EBL1qDszU3NQdO/gtbt0XLzRI0Ds4TAi0jXIlUL42CJj9+U7YFCGyaJFiyAsLAzs7OxoadeuHezYseOx/7N+/XoIDg4GCwsLaNKkCWzfvr22Y2YqAKs1pKxhUrECbI6sE19xP+tKxM7KzESVP3Aylr0mhg6e71/vilYJbfmUeiIZw8TE2IhyTfQlCbZahkm9evVg7ty5EBERAWfOnIFu3brBoEGD4NKlSxW+/9ixYzBy5EiYMGECnDt3DgYPHkxLVFSUpsbPlJKckUd9E/DuqaGbtSwMk1iZGiZC4quu8kvK65lwnglz+Po9Og6wWuv17v5iD4eRACNaeVOu0ZGYe6RrYzCGycCBA6Ffv34QEBAAgYGB8Pnnn4ONjQ2cOHGiwvcvWLAA+vTpA9OnT4eQkBCYPXs2tGjRAn788UdNjZ8pp1/i52oN5ibaaSin8WZ+cjVMdCBFXxFtS/NMTsWxYWLo3hIht2RMuA942luKPSRGAng7WUGnAFe9SIKtcY5JcXExrF27FnJyciikUxHHjx+HHj16lHmud+/e9DyjWa6kyCOMgzRwkbeWiS6a91VEywaOVBaIpdapmXk6/WxGOvx7+Q5cTMwAKzNjeLVrQ7GHw0iIUaVKsOvOJEJhcYnhGCaRkZHkJTE3N4dJkybBxo0boVGjRhW+NyUlBdzdy3a4xMf4/OPIz8+HzMzMMgsjb8XXikI5N2VYMoxt5VOz8sllGqzjfW1nYary0nB1jmGCFWGoW4KM79AAXGy0qzrMyIvuIe50TOA8tffKHcMxTIKCguD8+fNw8uRJeOWVV2DcuHFw+fJljQ5qzpw5YG9vr1q8vZVWIFM5QvlqiAR75FSmZYInT1ZeIcgx8RXDUdbmJjr//DYNhLJhFlozRP65mATRd7LA1sIEXu7E3hLm0aafw1vVk31jv2obJmZmZuDv7w8tW7YkA6Jp06aUS1IRHh4ecOdOWasNH+Pzj2PGjBmQkZGhWhIS5LuDdQHWrd8oVfyTQygH7/yx0zByS2YS62KFcQQ4AdZwQdf8vN1Kb8n/OvuBvZWy7J5h1HmuVKL+0PW7kCDTLu611jEpKSmh0EtFYO7J3r17yzy3e/fuSnNSBDBMJJQkCwtTOWiUYAMvvIvChk5yQK7S9GIlvpY3TK7dyYb72RWfd4x+8ndEIvVKQqN+fAdfsYfDSBQfZ2vo6O9CbQrWlXac1mvDBD0Zhw4dgri4OMo1wccHDhyA0aNH0+tjx46l5wSmTp0KO3fuhG+//RauXr0Kn3zyCZUZv/baa5r/JgbMf4qvdrJpdy7XyhxdNu+rCOyBFFpqFG08p2zcxug/+UXF8P3e67T+ylMNRQkjMvLhOVUSbAIUyTAJtlqGSWpqKhkfmGfSvXt3OH36NOzatQt69uxJr8fHx0NycrLq/e3bt4fVq1fDkiVLKOTz119/waZNm6Bx48aa/yYGjKD4GiyD/BIB39LKnJsyqszJKyyGG3dzRPWYIKPDfejvb8fjKBlSrty+fRvGjBkDzs7OYGlpSQKMeOOiXhb70UcfgaenJ72OFX7XrysvzobG6pPxkJSRBx52FjCmrfL3Z5jK6NXIgzxrdzLzYX/0XZAb1TK7ly1b9tjX0XtSnuHDh9PC6KJ5n3wMk/+a+eXIqnszGgLotXCzFa8aYkjzuvDVrquQ8OAh7LlyB3qHPj5nS4qkpaVBhw4doGvXrqQe7erqSkaHo6Oj6j1fffUVfP/99/Dbb7+Br68vfPjhhyQ3gMn2qCRtKOQWFMHC/TG0PqW7P3WbZpjHgcJ7z7SsB4sPxZISbM9GZatjpQ73ytGjUI4cEl8fCeXIKPlVPfFVzJCZpZmxqmnX8qM3QY58+eWXVG23fPlyaNOmDRkevXr1goYNG6q8JfPnz4eZM2eSujS2wvj9998hKSmJvK6GxIpjcXAvuwDqO1mpZMcZ5kk8W5oEeyA6FZLSH4KcYMNE5qTlFJC7Tq4ekwc5BZCRK4+SYbETX9V5vq0P9ek5EftAlfciJ7Zs2QKtWrUib6qbmxs0b94cli5dqnr95s2bpHekLtCI0gHh4eEGJdCY8bAQFh+MpXVs1IfloAxTFfxcbaCtnxOUyDAJlo9yPckv8XayBBsZJcThWIVwiFzyTMROfFXHy8ES+jT2kK3XJDY2lpqCYnsLzFNDTaTXX3+dwjaIIMJYHYFGfRRmXHY4loyTADcbGNSsrtjDYWTGyFLP6rrTCbLKR2PDRObIMYwjxzyTkhIFXFGJ2EljX7/YoQH93XQ+SXalwygzgH2zvvjiC/KWvPzyyzBx4kT4+eefa7xNfRNmxN902RGl0flWr0CddbJm9IfeoR7gYGVKidOHrsknCZYNEz2Rote1PLom8HWWj5ZJQlouZOcXUVIZNkqUAi3qO0JYPXsS2MOqDTmBlTblW1lgo0+s7EMEEcbqCDTqmzDjzwdvQE5BMTSpay/LBGdGfCxMjWFYC6US7OpT8pkj2DDRMlG3M2B/dKrWtn9FZZhI4y6+Rh4TGYRyhMTXIHdbycT5MQH3xVKhrT9O3CIDRS5gRU50tLJDrsC1a9fAx0dZCovJsGiAqAs0YmgGW2FUJtCoT8KMKRl58PvxWypviVz0iRjpMbJU02Tf1VS4I5Pmn9KYYfUUDFEM//k4jF9+GvZfTdVKeOGajJr3VaZlIodQjpTyS9Tp18STcnWwseCOqP80hKTOtGnT4MSJExTKiYmJUekdTZ48mV7HC/Ebb7wBn332GSXKoqAjaih5eXnB4MGDQd/5audVyC8qgdYNHKFLoLKVPcPUBH83WzqOMMdkvUySYNkw0RJoNEz/6wI8LCymxx9ujoKHBcp1TRH/IJe2b25iBA2clRd5OaEuS4/loXKoyJFak0QMLQmCW78euSn5/SjQunVr6ky+Zs0aElycPXs2lQcLKtLIO++8A1OmTKH8E3x/dnY2KUnru4bJmbgHsOHcbepgPbN/I/aWMBpLgl17OoGuTVKHDRMt8evRm3A6Lg2szYxJrTEx7SF8v++6VhJfA91twUQi4YXq4OOkNEwy84ogTeIlwyoNEy97kBqjwuuDmbERXEjMgLPx6SAXBgwYQJ6QvLw8uHLlCiW/qoMX5FmzZlEVDr5nz549EBgYCPoM3tV+tPkSrT/byhuaejuIPSRGD+jXxBPsLEzoOnQk5h5IHfldzWTSVO/rXcr4+Qf9G8GsQaG0vvRQrCpZVZOlwnIM4whCYULTQSknwKbnFlBWu1Rl/11szGFQMy/Zlg4z/4EJiuidw4vI9N5BYg+H0aMk2KGlSbBC7pKUYcNEw2DDpLfWXaD4cKcAF0o86hXqAb0auVMH4Pc3RmrMlSZI0cuxIkdOzfyEMA4qb9pZSLPVvNBtdkdUCiRnyEvlkQGV2OA3pTc0b/cOAmcb8doeMPrHmLY+FB7ENhYXEqTtWWXDRMMsPXwTziekg625CXw5LEwVH/7k6VAK60TcSoM/NZSApOoqLLGETH2rzFGXopcqqEYb7utEoYA/ZHBHxDwKellRTA3P51GlOQEMoyn83Wyozxbyzb9lK+KkBhsmGgTDNPN2X6P1jwY2InVOAVyf1lMZH5+74yrcq6UgFjb2uvUgV9ahnDJdhmXgMZG6ASh4TTAcoOlEa0a7RCZmwNrTSp2JT58OlWXOGCN9pvUIBFPjOnD4+j04dkO6uSZ89GuIQgzhrD8PBcUl0D3YjTo7lueF9g3orhvvij7fdqVWn3ftTjZgAQbmF+AiV/5r5pcjg8RXaRsm2EG0nqMlpOcWwqbzt8UeDlNFMLT70ZYoOp8HN/OCNr5OYg+J0VO8naxUFTpf7YyWbBUfGyYa4qf9NyDqdibYW5rCnKFNKizxw7ugL+g1gI3nbsOR6zW3WKNVUvTy9ZYgvipZ+lxJniT5RcUQk5otC8MEJcvR+BWSYKW4P5lH+ftsIpyLT6dQ74x+IWIPh9FzXuvmDxamRpRysOeK9sQ/awMbJhrgUlIG/FBaCowVOG52lessNPN2gLGluhOobZJXqnNSXYS+LXI3TOo7W5GhhnLvdyXY7wWNEkxaRoPTq7SCSMoMb+UNVmbG5FE7duO+2MNhngB6T7/ceZXWp/YIAPfHzB0MowncbC1UYV9MtpZicz82TGoJyoBjFQ5evPqEesDTTZVlm4/jrd5BpNaJeRU/HbhRu+Z9Es97eBLmJsZQtzQXB70mUg3joLCaHISu0IASwogouMZIm/l7rsG97AJo6GoNL7RXXiwYRttM6tyQStKj72TBlgvSC/uyYVJLvt97nfREnKzN4LMhjat08cKS048HKrVNfj5wQxUqqCroopdz877Kwzk5kk18beQpPWG1yhhXGs7ZF50qyX3KKMFzWNCUwKo9VPFlGF1gb2UK/+vSkNa/231Ncn22+EyoBVgLvuig0uPx+eDG1UpC7dfEA54KcqVk2Q82RlYrHwD7oqBSKnZBxxIwuSMkwN6UYAKsXBJf1WnoagNdg1wpmXLFsTixh8NUAJ7vH2+JIjc6elo7BXA/HEa3jO/QgK5ZCQ8eakzCQhTDZM6cOdSzwtbWFtzc3KiZVvkOoeVZsWIFeRHUF33odYG5IW+tv0ATC4Zv+jbxrNb/436YPagxJSGdvPkA/j57u9qKr+hpQEU/uaPSMpHY3T1ePKTavO9JCDHkvyISIStP2nL/hsg/F5PhROwD6nM1cwAnvDK6x8rMBKZ086f1H/Zel5TEQLUMk4MHD1L3T+wKunv3bigsLIRevXpBTs7jLyjYfjw5OVm13LolfwEo1CvBEIyrrTnpDtS0dGtqd6W2yRfbr0BaTkGV/u9qsn7kl0hdywTF8LCPD9b9y80zharDOGZMKl53JlHs4TBq5OQXqeQCJnf1h3qO8mvAyegHI9vUJ4kB9MJLybtaLcMEO3u+8MILEBoaCk2bNiVvSHx8PERERDzRO+Dh4aFa3N3dQc5E3HoASw7H0vqcIU3A0dqsxtt6qZMvBLnbkhz1nB1XquUxCdGD/BL1UM6t+9IpGUZdmpmbomh9cLO6sov/4zknlA7/dixOkpn3hsqP+2MgJTMPvJ0s4eXOfmIPhzFgzEyMSHQN+fngDaoSkwK1mm0zMjLor5PT4wWBsF25j48PeHt7w6BBg+DSJWX3zMrIz8+HzMzMMotUQHfX2+svUvx+WIt60KNR7YwsU9I2aUzreGd7MvZ+NZr36YfHBD1HqMHxsLAY7mRKo2QYdUBwPztamcpWW2Joi7pUpRP/IBf2XZWmXoGhEXs3G34pvan5aECoXoRiGXkzuHldCHCzIaMEG83K2jApKSmBN954Azp06ACNGysvrBURFBQEv/76K2zevBlWrlxJ/9e+fXtITEx8bC6Lvb29akGDRiqg5gCGHDzsLEh2XhO09HFSqfF9sCnqsRnSeCcfk6o/FTmCcYbuRKmEcxLTcmHebqUuDRolWHEl1xjyc22U5w53HRYf9AZ+uvUyFBYrKPG9R4ib2ENiGMCbwrd6KTtZ/3r0JtzNypevYYK5JlFRUbB27drHvq9du3YwduxYaNasGXTp0gU2bNgArq6usHjx4kr/Z8aMGeSNEZaEBGlkDJ+Iva+Kw80d1oTuRjXFe32CwcXGjPJWlhyqXNsk9m4OTWw25iaqi7k+IBVpeqqW2HyJvDcoDT68gtYCcmJsuwY08aDYmpDIy4gDqmwevHYXzIyNSC5ADro4jGHQO9Qdmno7QG5BMSzcHyNPw+S1116Df/75B/bv3w/16lVv4jY1NYXmzZtDTEzlX97c3JwSZtUXKSSsTf/rAq2PbOMNTwW5abyufGZ/pQfmh30xcKuSC7QgrIaN+/RpYpOKlsmuSymw92oqJbx+UUVdGimD4nU46SArjkonuc3QwCq+Wf8oQ9gTOvmqjneGkQJ16tSBd3orvSarT8aT11g2hgneTaJRsnHjRti3bx/4+lZfqbC4uBgiIyPB07N65bVig1UzWO+NE/0HpQaEphnUzAs6+rtAfpEy8bKiRFAhv0RfwjgCqHyJ7IhKgUyRyluxguWTLZdpfVKXhuDvph/7+MXS0mFs7IdJ1ozuWXwwluYPDAG/1lVZoskwUqKDvwu0b+hM2lrz9yhD2bIwTDB8g3kiq1evJi2TlJQUWh4+fKh6D4ZtMBQjMGvWLPj3338hNjYWzp49C2PGjKFy4ZdeegnkwuHrd2HVSWVL8q+Hh1EYRRuQtsngxpQpjW2pt1xIeuQ9+qT4qs7TTeuS0YeJmm+vuyBKdc63/0ZTtYSPsxWVceoLLX0coUldezJ415xSHseM7kh4kAs/HVB6iD/oHwLWWpo/GKa2TC/1mmw4mwjX7yivNZI3TBYtWkQ5H0899RR5PITlzz//VL0Hy4dRq0QgLS0NJk6cCCEhIdCvXz+qsDl27Bg0aqQdr4Omwbv3d/+6SOvj2vlA+4YuWv08dPEKd1Sz/7nySPmWvmmYqIeyfhrdguLv/16+A4t1nB0emZhBZbXIZ4Mb61W1BBq8qPKI/H48jhKoGd2BmiVoFLb1c4IBYfLyFDOGRfP6jtCrkTugugBK1csmlFPRgtomAgcOHCB9E4F58+aRhwRLgNG7sm3bNsoxkQuf/XMZkjKUd9Hv9g3WyWf+r4sf+Llaw73sfPiqtPMokpFbSGMRckz0DUy++vhppcGK3/u4jrrjosbH+xsj6WREFV99lAfvH+ZJ8tNYjr098r8bB0a7HLp2F3ZeSqEE5E+fln/OEqP/vNUriDq+Y1j9YmK6KGOQl2qUjtl39Q5pi+CP9M3wplR+qauOu58PbkLrq0/FkwIpgp0gEQx5YCNAfWRUm/qkv4FGwpQ1Z+FOptIQ0yboRYi8nQG2FiZ6Kw+Ox9TzbX1ofTknweoELPv/ZKsy4XVsOx+9vJlg9I8gD1sY0qwurX+96/EtZ7QFGyaVkJ5bAO/9HUnrEzr4QusGjxeR0zTtGjqTgBumWmCTP3S/CxU5+pZfog7eUaJRht8R28FPXnVWq6GHlIw8+PZfpcvyvb7B4GYr/z5OlTEqvD6Fys4npMPZeKWxy2iPFcduUnk/ygC8UaquyTByYFrPQKpMxFzHYzfu6fzz2TCpBBRCwv4BGFJ5uzQhSNdgohwqj2Ilzq9HbsKV5NLEV0/9NUwQSzNjWDSmJdiam8CZW2kwd8d/4SxN8+nWS1SN06K+A4xsrRS501ewr9PApl60zl4T7YKevgWllQ3v9gnWqOYRw+hCjVsQ/USvia6LEdgwUQN3PvbBwXyDjedug1EdgG+HNxUtERIVRwU5dCzfOl5queqLFP2TkoC/GdGU1pcduQnbLmo+L2LvlTsUR8X4/+dDmoAR/uB6jpAEuyMymbxFjHaYs/0K5BQUQ/P6DuT5ZBi58VpXf7AwNYJz8ekkDqhLDN4wQWPkUlIG3ZV3/HI/DFt0nARmECwZxSxlMUHlUVQgRSXSuPu5etW870n0DvWgRGDknb8ukCqupsgtKIKPNivj/y919IUQPatyqozGde2hTQMnKCpRwB8n2GuiDbDf1abzSZSbhp3HDcHgZfQPNzsLGF+qgfTNrmgo0WEjUIM1TLAnC7pae3x3EPp/f4Q6K95OfwjWZsYwpHldWD6+NbzZM1ASOReoQIrxPgRzBBoYkGrk9F5BEO7rRHefr6yMIAVeTYC/Pf7emEg8tUcAGBIvdlR6TdAAR0VSRnMUFZfAx1uUBu9zretDWD0HsYfEMDVmUueGVBSAhRcV6WppC4MyTJLSH1IfmgE/HIau3xyAeXuuwY27OSRo1ifUg3Q0zszsCfOebQZdg9wkU9qHCqSoRCrkl2DTO0PBxNgIfhjVHNxszeF6ajbM2BBZ63gn9oz55Yiyqd3swaE6q7aSCj0beZBBlpZbCJvO3RZ7OHoFVtFhThjmlAhiVQwjZ32pSaXXHtQ1eVyDWU2i9zPy/WylbsPWC8lwKu6B6nnMK0D5d0wG7BXqLvny2yndAmiyC/d1BkMDK2XQaHxuyQmy2lHJdFx75V1/dUF3JOYQoXZJ38Ye0C1Y2UfGkMBjf1x7H/hi+1VKgn22tbdkjHC5gsbyHyduUesKBBPm5dqVmmHK56XhPIGq3OvOJMCYUtkBbaKXhgmqtf576Q5dxI7G3KOLkADma6Ax0q+xBzjbmINcQK/OS52U+RaGSKsGTpQIPPufy/DZtsuUK4EGSk3uaDGZC9sKYIdXQ+XZVvVh3u7r5KJFIbv2/tpVNNZnkjMewjt/XaTSSqRbsBvp8TCMPmBlZgJTuvlTiPL7vdcpmRsrJ7WJ3hgmGCvfeyUVtly4Dfuj75ZxOWGfEFT0HNDUEzztLUUdJ1NzXuzQAM7eSoNtkcmkb7Lt9Y7VMi5Ts/Lgy1Il3bd7BYKHvf5qllTFRftMy3p0l//r0Tg2TGroJcGbnw83RUFmXhGYmxjBjL7BMLZdA054ZfSKkW3qw9LDsZCY9hB+Ox6nCu9oC70xTA5euwuTV59VPfZ3s1EaI2Ge4OdqI+rYGM2A4YYvnwmDKymZJFz1+tpz8PuL4RSaqAqf/XMFsvKKIKyePTzfrmahIH3ihQ4NyDDBnBusUjK0XJvakJZTADM3R6nK2JvWs4dvRzSjeYdh9A0zEyMSCXx7/QVYdOAGGSra1ObRm5moS6ArlXziXzRIQjxtOW6uh2AIZvGYljBo4VE4GnMf5u2+ViUBPOxZgne3aMN8MaRJlY0Zfaahqw2sfbkttPJxpCRjpmrsj06l0M3drHw6jl7vFgCTuzbkfcjoNUOa14XFB29QEcIvh2Opp4620JszCUXQdkztRLLijbzs2CjRYwLcbWHOUGUvoR/3x5BQ2pPCfDM3RdE6Js1ifgqjpK2fM19QqwiWqmPi9Pjlp8koaehqDRtfbU/l5rwPGX3H2KiOyhhB0Us8B7QFn02MLBnUrC68UFqZM+3P8xBfKj5XET/ui6GMcg87C61a+UzV+eSTT+jmQX0JDv6ve3deXh5MnjwZnJ2dwcbGBoYNGwZ37jzeANUmqAjd7/vDKvHFFzv4wrbXO7FOCWNQ9A51p7BlbkExLNwfo7XPYcOEkS3v9wshyW9MPHxlVUSFYmExqVmw+NANWv/k6VAKBTHSIDQ0FJKTk1XLkSNHVK9NmzYNtm7dCuvXr4eDBw9CUlISDB06VOdjzC8qpoTp4T8fh1v3c8HL3gJWvxQOHw1sJFqrCoYRC7yBmN5beQOBRnpiWuU3hLWBDRNG1glZqG+CehGXkjLh41KJefWqifc3RkFhsQJ6hLiRtc9IBxMTE/Dw8FAtLi7KyqCMjAxYtmwZfPfdd9CtWzdo2bIlLF++HI4dOwYnTpzQ2fiwm/egH49Ssh8qDgxtURd2TuvMFUyMQdMxwAXaN3SGguISWKGlZqBsmDCyBsu/fxjZnJJa/zyTAH+eVrrakfURiXDq5gOwNDUmbwnnHUmL69evg5eXF/j5+cHo0aMhPl7520VEREBhYSH06NFD9V4M89SvXx+OHz9e6fby8/MhMzOzzFITUPcIW1Q8/cNRUnFFw/fnMS3guxHNJC/EyDC6AHM5PxnYCKb30U5onA0TRvZ08HdR5Y58uPkSRN3OIMVfQYVzWs8AqOdoJfIoGXXCw8NhxYoVsHPnTli0aBHcvHkTOnXqBFlZWZCSkgJmZmbg4FA2f8Pd3Z1eq4w5c+aAvb29avH29q72uDBX6bklx6mpJ94Roqdt1xudoU9jzxp9T4bRR8LqOcALHXzB3MRYfMMET/zWrVuDra0tuLm5weDBgyE6OvqJ/4dxYrzjsbCwgCZNmsD27dtrM2aGeYRXujSE7sFuJKyH+SYfbo6C9NxCKiEXOmQy0qFv374wfPhwCAsLg969e9OckJ6eDuvWravxNmfMmEFhIGFJSEio8v9i2G/tqXjou+AQnI5Lo2aeXw0Lg6VjW4GrrXwUohlGH6iWYYJJaJgpj3He3bt3k7u1V69ekJOTU+n/YFx45MiRMGHCBDh37hwZM7hERSnLNxlGE6DSJrravZ0sIeHBQ9gemUJt55WdmdkxKHXQOxIYGAgxMTGUb1JQUECGijpYlYOvVYa5uTnY2dmVWaqqCDzhtzPw3oZI6mKNbSt2vtEZRnAPIYYRhWrN2Oh2feGFFyibvmnTpuSKxbgwxoQrY8GCBdCnTx+YPn06hISEwOzZs6FFixbw448/amL8DFNGZn3R6JYkDY6MDq8PzetXv58Oo3uys7Phxo0b4OnpScmupqamsHfvXtXr6JnFuaZdu3Ya/Vz0lIxddgr2XU0FM2Mj+KBfCKyZ2Ba8nTj0xzBiUavaSXSXIk5OTpW+B5PV3nzzzTLPoet206ZNj01iw0WgpklsjOGB4mk/P98SDlxNrZIiLCMOb7/9NgwcOBB8fHyoFPjjjz8GY2Nj8q5ifgh6WHHewLkFPR9Tpkwho6Rt27YaHQd6RN7tGwxf74yGec82gyAPW41un2EYHRomJSUl8MYbb0CHDh2gcePGlb4Pk9Uwaa26SWyffvppTYfGGDhdg9xoYaRLYmIiGSH3798HV1dX6NixI4WIcR2ZN28eGBkZkbAa3qTgzcxPP/2klbHgsdI5wJXbFDCM3A0TzDXBPBF1USRNgUls6l4W9JjUJMOeYRhpsnbt2se+jonyCxcupEUXsFHCMDI3TF577TX4559/4NChQ1CvXr3HvheT1cpLSVcliQ0XhmEYhmEMC6PqJoqhUbJx40bYt28f+Po+uQwT48LqSWwIVvRoOomNYRiGYRgD85hg+Gb16tWwefNm0jIR8kQwWc3S0pLWx44dC3Xr1qU8EWTq1KnQpUsX+Pbbb6F///7kwj1z5gwsWbJEG9+HYRiGYRhDMUxQoRF56qmnyjyPfSywjBjBkj5MWhNo3749GTMzZ86E999/HwICAqgi53EJsxV5ahCuzmEYcRDOPeFclAM8bzCMPOeOOgoZzDSYwc/JrwwjPqim+qS8MqnA8wbDyHPukIVhgqXJqHWA4aPHKTEK1Tu4A6qq+qjN7Uh1W1Ickya3JcUxaXJbYowJpwnsY4NN99Q9olJG1/OGVLclxTFpcls8Jml/v5rMHbUSWNMV+GWqc5dWHTlqXWxHqtuS4pg0uS0pjkmT29L1mDCXTE6INW9IdVtSHJMmt8Vjku73q+7cIY9bH4ZhGIZhDAI2TBiGYRiGkQx6ZZigKBv23KitOJumtiPVbUlxTJrclhTHpMltSXFMckaq+1Pfjxd9/n5SHJNUv59sk18ZhmEYhjEM9MpjwjAMwzCMvGHDhGEYhmEYycCGCcMwDMMwkoENk2qAIk0op8/oFt7vjJzh41cceL/LF9kYJtiLZ/DgwRrZDh6w5ZeYmJhqb2PSpEkVNjrE14TeQdXh+PHjYGxsTM0Oq4O2xqPJ/a6pbdZ0H5Xn7t278Morr0D9+vUps9zDwwN69+4NR48erdH2UAHxxRdfJHVDMzMz8PHxoQaW9+/fr9L/9+nTh34nzHRXByfWx6mWPukYNzU1BXd3d+jZsyf8+uuvpIZqaGjiGNbEvKGtc7U254S25g6eN+Q3d7wgoXlDNoaJJsEfMjk5uczi6+tbrW2gHC92Sn748KHquby8PGpYiAdtTVi2bBlMmTIFDh06RFLatRlPcXEx5Obm1mo8UqQ2+0idYcOGwblz5+C3336Da9euwZYtW6g5ZVUnA3ViY2OhVatWcP36dVizZg1drH7++WfYu3cvtGvXDh48eFDlbS1YsADS0tJAU8d4XFwc7NixA7p27UqT3YABA6CoqKjW2zdENDFvaGPuUD8nbt26Vavx4LyBF6HazmVSQ4rzhhTnjj4SmTdkaZjs3LkTOnbsCA4ODuDs7Ew77caNG6rXcaei1bdhwwbasVZWVtC0aVOymhHB0lVf0JrevHkztGjRAiwsLMDPzw8+/fTTR34M/NF2794Nt2/fpgv/e++9p3oNPw9P5ObNm1d7rHigr1ixAn766Sdo1KgRrQscOHCA3rNt2zYICwuj8bVt2xaioqJU73FxcaF+BB988AH9P37HpUuXVns83bp1g9dee63Md87PzydLHvfT/Pnzy7zWrFkz+OSTT1SPcZy//PILDBkyhPY7dpPGk7cyGjRo8MRtCmRnZ8Off/5Jdyx456O+j3Adv9OT7hg+++wz2leHDx+m779r1y4YNGgQtGnTBmbMmAFPP/00vS89PR1eeuklcHV1Jcll3C8XLlxQbQfHh+NcvHgx7W+8k3Jzc6PncJ/37dsX9uzZQ8cJ/ibCfnz33XfpQoC/j7+/P02YeAzgOJCMjAxwcnKq9C7177//htDQUPp/3Hfffvut6jXs3h0eHl7mGK9bty6MHz+ejmM8vnGyEfbbk74jsnXrVmjdujUdc7jf8HeVMzWdO/D3re28gcfEH3/8QRcx3N/4GZqYO1atWkV37DgfvfXWW9WaN/BCiGPDz8DjEb8jdoivyXgqmjtwv+EYXn311TLP87yxmOYB/J44b69fvx66dOki6tyxbdu2MvMGHtO439AY0/W8IUvDJCcnB9588004c+YMWZbYEwO/eHl3E/6ob7/9Npw/fx4CAwNh5MiRlbqk8IAbO3YsWYeXL1+mAwd/iM8//7zM+z788ENyteGkhZby999/D1euXKHX0OWFF4GajBUnFDxYoqOjyYWK2yovMTN9+nQ6mE6fPk0HxcCBA6GwsLDMe/D/8AS/dOkSnWDVHQ8ecHinhCeCepdWPFDxIKsKODGPGDECLl68CP369YPRo0dXy/KvjHXr1kFwcDAEBQXBmDFjKtxHjwMncPw9586dS5MfjgkNwYoYPnw4pKam0gkZERFBJ2n37t3LfA+c1HGbBQUFtN/w+6pPwHiC43fHkxvHiccX3hUJxwweYzY2NjTZ4LGE/Pjjj7Sf33nnnUfGhOPA/frcc89BZGQkTXJ4PAoTBn7WqVOnaKITwOMAxzVq1CiaQPAiK1wQn/QdcaLCYwN/Q7xLxOMFJ2I5U9O54+DBgxUea9WZN3CCx4sZ9u/Bcwp/a4HazB34GC+O+Nn4O1Z33kAvCV6IMZSAxwsa2DUZT0Vzx8qVK8l4wwvwkzCkeQPHhPsGx2FpaVnGoBRr7rh37x79xuXnjpkzZ+p+3lDIhHHjxikGDRpU4Wt3797Fo0wRGRlJj2/evEmPf/nlF9V7Ll26RM8NHjxYYWxsrLC2tlYtzzzzjKJ79+6KL774osx2//jjD4Wnp6fqMf7/pEmTVGNJTU1V1KlTRzFmzBhFXFycwsLCgsaCr+F7qjNWX19fxfz58+m5wsJChYuLi2L//v30GP/ie9auXavazv379xWWlpaKP//8kz6refPm9B4zMzMaS03H8/DhQ4WjoyNtV9jvdnZ2ik8++UTh4+OjmDdvXpn/b9q0qeLjjz8us49mzpypepydnU3P7dixo8Lfsqrb3Lhxo6J9+/aV7qPly5cr7O3ty2wH/0f9EA8PD1dMnjyZ1v/66y/6nkZGRgorKyvFjBkzFBcuXKDXDh8+TN85Ly+vzPYaNmyoWLx4Ma3j+PA42rJli2p8+B1xe8nJyar/+e677+j1kydP0t/du3dX+Dv07t2bXk9LS1O0bdtW8eKLLz7yHUaNGqXo2bNnmf+bPn26olGjRmX2XbNmzVT7F78Xfm+BZ599VhESElKl79iuXTvF6NGjFXJHU3NHbecN9bG0aNGCtlebc1UY65AhQ2o0byAdOnSg9+zbt09hbm6usblD+J5hYWF0XvK8UXbeSExMVJw4cYI+58MPP3xk3hBj7sDvFRwcrHqsPnfoet6QpccE43Ho/UC3KbqS0NOAoAtSHXRfCnh6etJfjJ2itwPvhIQFrVB0Rc2aNYusUGGZOHEiuTnRRSqAcT8BvPto2LAhHDlyBJYvX05uQnRb1WSs+Bjfh5iYmMCzzz5Lrjp11D8bXXZ4ByB4axAMt6B7Fa3gmo4HLe7nn3+e7ioQdDtji+vqJMCp73dra2v6HLSwawO6NdEb8KR99DjQGyVY7nj3irFmTKbD8aHbGy1/3Hd4LKD7F1226sfDzZs3y7iu0e2Kd5cIzoP4++DdI35OedDlineO6K59El9++SWF9tR/WwQfd+jQocxz+Bh/U7zrFe58MG4tjAnvsvA5AXwO746r8h3x3MA7IX2iNnMHuuA1MW8gnTt3BkdHx1qdq8LvhImTtZk38HjAu24hzKGpuQNd/hg2wn1SFQxp3kAPtAB65CqbN3Q5d+Dvip68iuYOXc8bJiBD0BWJ4RTMoUD3I/6ojRs3Jpe6OphZLCDEDHEH40GPMTp1cGejK3Ho0KGPfN7jQhgYs8MYHx4MCxcurPFY8eDA1wVwnBjvU3f3Pgl0CeIkJcR5azoedMniJIwHKbod0QDD/0HXbXkXaPlQUvn9Luz7ykJoVd0mxlwxbl/ZPqrqdsr/rvi98IQ6duwYfW/MbMdwDF6McNIpT/l4NB5H+P3wxMdQSXnwebwA4W9TVfCihZn+6J6vbkUETsDoysWLAn4nzPjHiVh9PJiwicf7k75jdcZsCHMHHi+amjcQ3P+CK70m5yqGAxD1SpWazBt40cPvqMm5A/cHGix4TuD5xfNG2XlDfe7AJNqKuKLjuQPnBQzNnD17lhKh1ecOXc8bsjNM8A4eLUs8OTp16kTPoceitqDVi9stP/GU58SJE2Uep6Sk0ImNBzMeENUdq5Akh7Hb8jFdnHDQasX4qPDZQpY8Zl/jAR0SEkLWqnpWNU4UeMDXZDxIkyZNKFMc34d33/gYQQMF7wQF0JOi/tk1oarbxBMB4+S9evWqcB/hRIG5FRgjRcNTsNzVwTtFjLNjvFYAHwtgEivm5eCxgL8r3l0Jd4UVgRMvxtOxpA5jzjhJ40SHn4PgNjA+jZ+H+xAnWcxV6NGjxyPbwv9DhLsXjGfjBC9sC8HfunxZIj7GOy48BhHMX8AyPzQq8bNxbIJXZ9++fRRfnjZtGr3vSd8R72AxPlz+uJQr2pg7qjNvqB93+Lh9+/aUJFiTcxXnDSHmjxU1whxRnXmjPJqcO/BOHI9BzM3AJFWeN8rOG+h1QWMJz89FixbRPlc/11NEmDvw+6MnBD8XDRNh7hBl3lDIBCG+WFxcrHB2dqa8juvXryv27t2raN26tSqeqB57PXfunOr/Mf6Gz2E8rqJ4886dOxUmJiaUSxEVFaW4fPmyYs2aNYoPPvhA9R78f4xPYswSY8sfffQRxQYxBpiRkaF6nxCXrcpYMS6Hjw8dOvTImN555x1Fq1atVLHi0NBQxZ49eyim+/TTTyvq16+vyM/PV+WYCLFSHEtNxyOwZMkSylfBZcCAAfTce++9p/Dw8KCxXrx4kfJ1bGxsKozrqoPjwlhu+d+yOtvE3yY9Pb3SfYSxc4z7v/7664qYmBjFqlWrFF5eXmVixStXrqT4+o8//kix2GHDhtH/YOx03bp1Cnd3d4rPlpSUKDp27Egx6127dtHxdPToUcX777+vOH36NG0Lx4f/26NHD8XmzZvpO+K2u3XrpoiPj6fYeOPGjRUBAQE0NuSFF15QeHt70/6JjY2l31WI9Q8fPpzGumLFCspdysrKUjz//PMU6xe+Q0REBB1vs2bNUkRHR9N78TPV960Q48V8AScnJ8WCBQvo/z7//HPar/hbFhUVVek74vjw8/A4x/MBf5+5c+cq5Iam5g7Mx6jNvLFs2TLKBwkKCqL9irkrNT1XccFzs/xYqzNvIPidcPwCmpo78PuZmppS3gnPGxXPG+fPn6fPw5wTV1dXxcGDB0WdO8aNG0efi98H801mz54t2rwhG8MEdzQeEAgmAeFBgZMvJlcdOHCg1oaJMMmg0YE/GCb4tGnThk4yAfz/hQsXUmIb7vgGDRqoDg511BPGnjRWvJBVNLkgQtITXlzw79atW2mSwQkJxyYkXZU3TGozHgE8uDG5KzAwULXfccLCJCjcN3iS4MFdWcLZ4yYY9d+yqtts2bJlhd9N2Ee4L/Bz/f396ffDEwl/u/K2N56YOMHipIl/cV/ib4kXC0y+y83NpfdlZmYqpkyZQpMUvhfHhgldOHEgOD4c508//UTvwf2JCXlubm6q9+P/37t3T/XZOElPmzaNjh/8XBzrr7/+qvoNMfEMJ1tMqMbHeBwLFx8BTL7DhDX8DLzAfP3114/sk5EjR9L/CBMzTno4EeJn4QVG4EnfEfn7778pmRbHgRfXoUOHKuSGpuaOigyT6swbmHyIx5p68mlNz1U8vrt27Vrh3FHVeaMiw6Sm4yk/d+DF1s/Pjx7zvFH5vIHGQ9++femcRYNAzLlj3LhxqnlDMKbFmjdkY5igQSFkRhsawp0PTpC6Ag9sPPHw7lvT+11KvyWeeHgXWF2ECYaRPlI63vR93lA37kaMGKG3vyPPG9pF8jkmGBPFWBjGCiuSTWY0C+bKYDwZtQ8w/oiJUBXVxcvxt8QqCVRVxPg5xlUxxozJcSiYx+gfYh9vhjh3YEIo7mvMmRAqYeT+O/K8oXskb5hgpjgmGqEADYoTMdoFJwAsp8ZEKFw0ud/F/i1xsty+fTsl5GHZOCaHoRpiRQlljPwR+3gz1LkDEyMnTJjA8wZTY+qg26Tm/84wDMMwDKM5ZCmwxjAMwzCMfsKGCcMwDMMwkoENE4ZhGIZhJAMbJgzDMAzDSAY2TBiGYRiGkQxsmDAMwzAMIxnYMGEYhmEYRjKwYcIwDMMwjGRgw4RhGIZhGJAK/weKhEc4DwfkpAAAAABJRU5ErkJggg==" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 12 + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "## Small multiples with shared y axis\n", + "When creating small multiples, it is often preferable to make sure that the different plots are displayed with the same scale used on the y-axis. This can be configured by setting the sharey key-word to True.\n", + "\n", + "In this exercise, you will create a Figure with two Axes objects that share their y-axis. As before, the data is provided in seattle_weather and austin_weather DataFrames.\n", + "### Instructions\n", + "- Create a Figure with an array of two Axes objects that share their y-axis range.\n", + "- Plot Seattle's \"MLY-PRCP-NORMAL\" in a solid blue line in the top Axes.\n", + "- Add Seattle's \"MLY-PRCP-25PCTL\" and \"MLY-PRCP-75PCTL\" in dashed blue lines to the top Axes.\n", + "- Plot Austin's \"MLY-PRCP-NORMAL\" in a solid red line in the bottom Axes and the \"MLY-PRCP-25PCTL\" and \"MLY-PRCP-75PCTL\" in dashed red lines." + ], + "id": "8131259608cb707a" + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2025-08-18T16:17:49.091344Z", + "start_time": "2025-08-18T16:17:48.980156Z" + } + }, + "cell_type": "code", + "source": [ + "# Create a figure and an array of axes: 2 rows, 1 column with shared y axis\n", + "fig, ax = plt.subplots(2, 1, sharey=True)\n", + "\n", + "# Plot Seattle precipitation data in the top axes\n", + "ax[0].plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-NORMAL\"], color='b')\n", + "ax[0].plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-25PCTL\"], color='b', linestyle='--')\n", + "ax[0].plot(seattle_weather[\"MONTH\"], seattle_weather[\"MLY-PRCP-75PCTL\"], color='b', linestyle='--')\n", + "\n", + "# Plot Austin precipitation data in the bottom axes\n", + "ax[1].plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-NORMAL\"], color='r')\n", + "ax[1].plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-25PCTL\"], color='r', linestyle='--')\n", + "ax[1].plot(austin_weather[\"MONTH\"], austin_weather[\"MLY-PRCP-75PCTL\"], color='r', linestyle='--')\n", + "\n", + "plt.show()" + ], + "id": "9d276f020466a93d", + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ], + "image/png": "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AKiGTOPH0047bcdzeN9KlSp55Z05977//vsdr8ExZTzPPvusd27zvZ999tmyZs0aCRK8epzfH3/8sTdvcM0w533yySdeY8pbb73Ve96WLVvkpptu8sbCtXvggQd6xh3zDp8RKlSoELiHsE2bNt6cTTfuvBgzZowceuih3rg4Rx9++OEdv7vlllukefPmO/1Nw4YN5a677gp0jdlvv/28uYj3ZH3ByHDnZn7fN7z33nvSrFkzb/6k/xfXe9CkpWFBCXFKi3/zzTfeREz/EQ5Ozp0pJ+v1118v3333nRx00EFy3nnnJdWy46K/8MILPavyp59+8i5eToB777036nm33367t/PgBDj//PPl3HPPlTlz5gQ+HtyQw4YN23EfN1rOUuyxHlsmSD4X48T1GhSvvfaaHHzwwVK3bl3p2rWrN8acpVZuuOEG76L++uuvvQvo1FNPjfKabNy40ZtsWSRnz57tTexhOoZc+Hg5mEQdr7zyijdhMBGkEgxfFpYffvhB2rdv752Pqd5NpopYzsVdgcHNtc65OGPGDG8xffrppwMbHw0duWHQ+M8lP2eddZYsXbrUW3wYAwtS69ato75TvAd8VhYcjGI8ID179gxsnLzXRx995L0mmyc/LJScYxhwHFvmSzwajz32mDe3MGfyGTE0WNjhl19+8TZjgwcPDmyMbAIHDBggjz/+uCxcuHCn33PsuC6Ym2fNmuUZZMzbbkHnM0yfPj1qAzF79mzvOurSpYskCuYLjBe32cnv+2ZTxlzEtc33zPyEMRo4Jk3o1q2b6dixY66/W7ZsGVe7mTVrlnf/jz/+8O4PHTp0x3Nmz57tPTZnzpyEjK1YsWKmTJkyO26dO3c2rVu3NgMGDIh67vDhw82+++674z5juvLKK6Oe07x5c9OjR4/Aj93SpUtNiRIlzJ9//undSpYs6R07fsdz4jm2jz76qEkELVq02PHa//77r9l7773NhAkTvPv8z3uPGjVqx/NXrFhhSpUqZUaPHu3dHzZsmPec7777LtBxBXkMN23aZCpUqLBjzNCgQQPTv3//hIwZatasaQYNGhT1+4YNG5p+/frtuM8Yb7vtth33169f7z02bty4QMcV1FjfeuuthI5pV+ci51n58uWjns94/FMq13GvXr2intOyZUvvswTFG2+84Z1LnIeMt2/fvub777/3fjdp0iSzxx57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" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "execution_count": 13 + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.6" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/pandas/Lecture.ipynb b/pandas/Lecture.ipynb new file mode 100644 index 0000000..9c4f728 --- /dev/null +++ b/pandas/Lecture.ipynb @@ -0,0 +1,1085 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# What is Pandas?\n", + "\n", + "`pandas` is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.\n", + "\n", + "**The pandas package is probably the most important tool for Data Scientists and Analysts working with Python today**. The powerful machine learning and glamorous visualization tools may get all the attention, but pandas is the backbone of most data-related projects.\n", + "\n", + "> **Fun fact 🎁**: `pandas` is derived from the term \"panel data\", an econometrics term for data sets that include observations over multiple time periods for the same individuals. — Wikipedia\n", + "\n", + "pandas popularity has **grown exponentially** in the last years. Here's an image of The Atlas showing popularity of data science tools on Stack Overflow where we see pandas has become the dominating tools used by Python data scientists.\n", + "\n", + "
\n", + " \n", + "
" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## What is pandas used for?\n", + "\n", + "If you're thinking about data science as a career, then it is imperative that one of the first things you do is learn pandas.\n", + "\n", + "> **This tool will help you get, clean, transform and analyze your data**.\n", + "\n", + "For example, say you want to explore a dataset stored in a CSV on your computer. The first step is to use pandas to extract the data from that CSV into a DataFrame (a table-like data structure, we'll see more about it later). The we proceed with the routine data analysis tasks:\n", + "\n", + "- Quick Exploratory Data Analysis (EDA);\n", + "- Calculate statistics such as average, median, max, or min of each column;\n", + "- Creating visualizations. Plot bars, lines, histograms, bubbles, and more;\n", + "- Cleaning the data by doing things like removing missing values and filtering rows or columns by some criteria;\n", + "- Building machine learning models to create predictions or classifications\n", + "- Store the cleaned, transformed data back into a CSV, other file or a database;" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Why no just using Excel?\n", + "\n", + "Excel is one of the most popular and widely-used data tools; it's hard to find an organization that doesn't work with it in some way. From analysts, to sales VPs, to CEOs, professionals use Excel for both quick stats and accounting and serious data crunching.\n", + "\n", + "> Using pandas with Microsoft Excel can give you the best of both worlds and optimize your workflow.\n", + "\n", + "Pandas works with data stored in Python to manipulate and analyze data. As opposed to Excel, Python is completely **free to download and use**.\n", + "\n", + "Pandas operates right on the back of Python. As a result, is **extremely fast and efficient** by using useful methods that **allow automating data processing tasks better than what Excel does**, including processing Excel files.\n", + "\n", + "In Excel, once you exceed 50K rows, it starts to slow down considerably. Pandas, on the other hand, **has no real limit and handles millions of data points seamlessly**. In terms of pure space, Excel caps a single spreadsheet at 1.048.576 rows exactly. At that point, your calculations would take forever to compute. More likely, Excel would just crash. A million rows may seem like a lot of data, but for data scientists, this is but a drop in the bucket.\n", + "\n", + "Pandas, however, has no limitation to the number of data points you can have in a `DataFrame` (their version of a data set). It’s limited only by the amount of memory (RAM) of the computer it is running on.\n", + "\n", + "It is also **easier to create and use complex equations and calculations on your data**. You can apply hundreds of computations to millions of data points instantly with pandas. Since Python is open source, there are already hundreds of libraries created that could streamline the length of time it takes to calculate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Hands on!\n", + "\n", + "We'll just import pandas and other useful libraries such as numpy, matplotlib and seaborn to work with.\n", + "\n", + "Note that to import pandas and numpy we use the aliases `pd` and `np`. This is just a convention, which means it's not strictly necessary, but it is recommended." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdAAAABICAYAAABGH6SaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAACWUlEQVR4nO3bvWoUYRiG4XdUgiSNhRGRgCDYBAUhgofhWSyCpZWFlWfhCQjaeQb2WgREEPypBFGJaCoFGQtthJBlH/Lx7QzX1S07xfMWyw0TMozjWADAak71HgAAUySgABAQUAAICCgABAQUAAICCgCBM8seGIZhUVWLqqphY3Pv7PaV5qN62T382HtCW5d6D2jr9emN3hOa2T342XtCUy/PXew9oam9b796T2jqYGtpSibry+dPdfjj+3DUd8Mq/we6uXN9vHr32YkNWzf7z+/3ntDU+LD3grZubO30ntDM/pN3vSc0Ndye92/v99MPvSc09fjWhd4Tmnlw7069f/vmyIB6hQsAAQEFgICAAkBAQAEgIKAAEBBQAAgIKAAEBBQAAgIKAAEBBYCAgAJAQEABICCgABAQUAAICCgABAQUAAICCgABAQWAgIACQEBAASAgoAAQEFAACAgoAAQEFAACAgoAAQEFgICAAkBAQAEgIKAAEBBQAAgIKAAEBBQAAgIKAAEBBYCAgAJAQEABICCgABAQUAAICCgABAQUAAICCgABAQWAgIACQEBAASAgoAAQEFAACAgoAAQEFAACAgoAAQEFgICAAkBAQAEgMIzjePwDw7CoqsW/j9eq6lXrUR2dr6qvvUc0Mufbqtw3de6brjnfVlV1eRzH7aO+WBrQ/x4ehhfjON48sVlrZs73zfm2KvdNnfuma863LeMVLgAEBBQAAqsG9FGTFetjzvfN+bYq902d+6Zrzrcda6W/gQIAf3mFCwABAQWAgIACQEBAASAgoAAQ+AOXfmFPuMDVZwAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "from utils import apply_theme\n", + "\n", + "%matplotlib inline\n", + "apply_theme()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## NumPy and pandas\n", + "\n", + "**Pandas is built on top of the NumPy package**, which means that all the efficient structures and functions we saw about numpy in previous lessons, will also apply to pandas.\n", + "\n", + "While pandas adopts many coding idioms from NumPy, the biggest difference is that pandas is designed to work with tabular or heterogeneous data. NumPy, by contrast, is best suited for working with homogeneous numerical (possibly multidimensional) arrays." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Overview Data Structures - Series and Dataframe\n", + "\n", + "To get started with pandas, you will need to get comfortable with its two main data structures: `Series` and `DataFrame`s.\n", + "\n", + "A `Series` is essentially used for column-data, and a `DataFrame` is a multi-dimensional table made up of a collection of `Series`. Pandas relies on NumPy arrays to store this data, which means it also uses its data types.\n", + "\n", + "\n", + "\n", + "`DataFrame`s and `Series` are quite similar in that many operations that you can do with one you can do with the other, such as filling in null values and calculating the mean.\n", + "\n", + "Let's define some data within Python lists:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "names = ['Avery Bradley', 'John Holland', 'Jonas Jerebko',\n", + " 'Jordan Mickey', 'Terry Rozier', 'Jared Sullinger', 'Evan Turner']\n", + "\n", + "teams = ['Boston Celtics', 'Boston Celtics', 'Boston Celtics',\n", + " 'Boston Celtics', 'Boston Celtics', 'Boston Celtics', 'Boston Celtics']\n", + "\n", + "numbers = [0, 30, 8, np.nan, 12, 7, 11]" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['Avery Bradley',\n", + " 'John Holland',\n", + " 'Jonas Jerebko',\n", + " 'Jordan Mickey',\n", + " 'Terry Rozier',\n", + " 'Jared Sullinger',\n", + " 'Evan Turner']" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "names" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['Boston Celtics',\n", + " 'Boston Celtics',\n", + " 'Boston Celtics',\n", + " 'Boston Celtics',\n", + " 'Boston Celtics',\n", + " 'Boston Celtics',\n", + " 'Boston Celtics']" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "teams" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[0, 30, 8, nan, 12, 7, 11]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "numbers" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Series creation" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Name
0Avery Bradley
1John Holland
2Jonas Jerebko
3Jordan Mickey
4Terry Rozier
5Jared Sullinger
6Evan Turner
\n", + "
" + ], + "text/plain": [ + " Name\n", + "0 Avery Bradley\n", + "1 John Holland\n", + "2 Jonas Jerebko\n", + "3 Jordan Mickey\n", + "4 Terry Rozier\n", + "5 Jared Sullinger\n", + "6 Evan Turner" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series = pd.Series(names, name='Name')\n", + "\n", + "my_series.to_frame()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Each value can be accessed using just its key/index position on Series:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Jordan Mickey'" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series[3]" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Jordan Mickey'" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series.loc[3]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### DataFrame creation\n", + "\n", + "There are many ways to create a `DataFrame` from scratch, but a great option is to just use a simple `dict`." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "data = {\n", + " 'Name': names,\n", + " 'Team': teams,\n", + " 'Number': numbers\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
NameTeamNumber
0Avery BradleyBoston Celtics0.000
1John HollandBoston Celtics30.000
2Jonas JerebkoBoston Celtics8.000
3Jordan MickeyBoston Celticsnan
4Terry RozierBoston Celtics12.000
5Jared SullingerBoston Celtics7.000
6Evan TurnerBoston Celtics11.000
\n", + "
" + ], + "text/plain": [ + " Name Team Number\n", + "0 Avery Bradley Boston Celtics 0.000\n", + "1 John Holland Boston Celtics 30.000\n", + "2 Jonas Jerebko Boston Celtics 8.000\n", + "3 Jordan Mickey Boston Celtics nan\n", + "4 Terry Rozier Boston Celtics 12.000\n", + "5 Jared Sullinger Boston Celtics 7.000\n", + "6 Evan Turner Boston Celtics 11.000" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_df = pd.DataFrame(data)\n", + "\n", + "my_df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Each value can be accessed using its key/index position and value position on DataFrames:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Avery Bradley\n", + "1 John Holland\n", + "2 Jonas Jerebko\n", + "3 Jordan Mickey\n", + "4 Terry Rozier\n", + "5 Jared Sullinger\n", + "6 Evan Turner\n", + "Name: Name, dtype: object" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_df['Name']" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Jordan Mickey'" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_df['Name'][3]" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Jordan Mickey'" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_df.loc[3, 'Name']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> In future lectures we'll see more on locating and extracting data from the DataFrame, don't worry if you don't get it right not.\n", + "\n", + "Let's move on to some quick methods for creating DataFrames from various other sources." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Reading external data\n", + "\n", + "pandas allow us to read different types of external data files such as CSV, TXT and XLS.\n", + "\n", + "With CSV files all you need is a single line to load in the data:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TimestampOpenHighLowCloseVolume (BTC)Volume (Currency)Weighted Price
01/1/17 0:00966.3401,005.000960.530997.7506,850.5906,764,742.060987.470
11/2/17 0:00997.7501,032.000990.0101,012.5408,167.3808,273,576.9901,013.000
21/3/17 0:001,011.4401,039.000999.9901,035.2409,089.6609,276,500.3101,020.560
31/4/17 0:001,035.5101,139.8901,028.5601,114.92021,562.46023,469,644.9601,088.450
41/5/17 0:001,114.3801,136.720885.4101,004.74036,018.86036,211,399.5301,005.350
\n", + "
" + ], + "text/plain": [ + " Timestamp Open High Low Close Volume (BTC) Volume (Currency) Weighted Price\n", + "0 1/1/17 0:00 966.340 1,005.000 960.530 997.750 6,850.590 6,764,742.060 987.470\n", + "1 1/2/17 0:00 997.750 1,032.000 990.010 1,012.540 8,167.380 8,273,576.990 1,013.000\n", + "2 1/3/17 0:00 1,011.440 1,039.000 999.990 1,035.240 9,089.660 9,276,500.310 1,020.560\n", + "3 1/4/17 0:00 1,035.510 1,139.890 1,028.560 1,114.920 21,562.460 23,469,644.960 1,088.450\n", + "4 1/5/17 0:00 1,114.380 1,136.720 885.410 1,004.740 36,018.860 36,211,399.530 1,005.350" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv('../data/bitcoin_data.csv')\n", + "\n", + "df.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Also, there are many options when loading data, for example CSVs don't have indexes like our DataFrames, so we'll designate the `index_col` when reading:" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
OpenHighLowClose
Timestamp
2017-01-01966.3401,005.000960.530997.750
2017-01-02997.7501,032.000990.0101,012.540
2017-01-031,011.4401,039.000999.9901,035.240
2017-01-041,035.5101,139.8901,028.5601,114.920
2017-01-051,114.3801,136.720885.4101,004.740
\n", + "
" + ], + "text/plain": [ + " Open High Low Close\n", + "Timestamp \n", + "2017-01-01 966.340 1,005.000 960.530 997.750\n", + "2017-01-02 997.750 1,032.000 990.010 1,012.540\n", + "2017-01-03 1,011.440 1,039.000 999.990 1,035.240\n", + "2017-01-04 1,035.510 1,139.890 1,028.560 1,114.920\n", + "2017-01-05 1,114.380 1,136.720 885.410 1,004.740" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv(\n", + " '../data/bitcoin_data.csv',\n", + " index_col=0,\n", + " parse_dates=True\n", + ").loc[:, 'Open':'Close']\n", + "\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Bitcoin price (USD)')" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "dark" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(figsize=(16, 6))\n", + "\n", + "df.plot(ax=ax)\n", + "\n", + "plt.title(\"Bitcoin price (USD)\", fontsize=16, fontweight='bold', color='white')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Plotting example: Bollinger bands\n", + "\n", + "As a sneak peek of what we'll see in upcoming lectures, lets make some basic plots using _pandas_.\n", + "\n", + "Bollinger Bands are a technical trading tool created by John Bollinger in the early 1980s. They arose from the need for adaptive trading bands and the observation that volatility was dynamic, not static as was widely believed at the time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Bollinger bands\n", + "\n", + "To demostrate the strategy we will use a 30 periods rolling mean window, and 1.5 standard deviations for each of the bands. This might not be the optimal configuration for this dataset, but we will talk more about optimizing these two arguments later." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "# set number of days and standard deviations to use for rolling \n", + "# lookback period for Bollinger band calculation\n", + "window = 30\n", + "no_of_std = 1.5\n", + "\n", + "# calculate rolling mean and standard deviation\n", + "rolling_mean = df['Close'].rolling(window).mean()\n", + "rolling_std = df['Close'].rolling(window).std()\n", + "\n", + "# create two new DataFrame columns to hold values of upper and lower Bollinger bands\n", + "df['Rolling Mean'] = rolling_mean\n", + "df['Bollinger High'] = rolling_mean + (rolling_std * no_of_std)\n", + "df['Bollinger Low'] = rolling_mean - (rolling_std * no_of_std)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
OpenHighLowCloseRolling MeanBollinger HighBollinger Low
Timestamp
2018-03-248,917.9909,020.0008,505.0008,547.0009,533.03011,150.4067,915.654
2018-03-258,541.9608,680.0008,368.6308,453.9009,475.95711,109.2297,842.684
2018-03-268,451.1208,500.0007,831.1508,149.6609,424.61211,096.2487,752.976
2018-03-278,152.2608,211.6207,742.1107,791.7009,364.66811,094.0487,635.287
2018-03-287,791.6908,104.9807,723.0308,039.8609,288.50611,032.6167,544.396
\n", + "
" + ], + "text/plain": [ + " Open High Low Close Rolling Mean Bollinger High Bollinger Low\n", + "Timestamp \n", + "2018-03-24 8,917.990 9,020.000 8,505.000 8,547.000 9,533.030 11,150.406 7,915.654\n", + "2018-03-25 8,541.960 8,680.000 8,368.630 8,453.900 9,475.957 11,109.229 7,842.684\n", + "2018-03-26 8,451.120 8,500.000 7,831.150 8,149.660 9,424.612 11,096.248 7,752.976\n", + "2018-03-27 8,152.260 8,211.620 7,742.110 7,791.700 9,364.668 11,094.048 7,635.287\n", + "2018-03-28 7,791.690 8,104.980 7,723.030 8,039.860 9,288.506 11,032.616 7,544.396" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.tail()" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Bitcoin - Bollinger bands (USD)')" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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OXPmKGDNsWQyybPPPsucOXOG/R4FrSIiIiIi8oFgWZYC1kkgmUyOqDx7WLMHi4iIiIiIyPiYPXs2n/zkJ/H7/QSDQd544w02b97MEUccwa233prr7k06ClpFRERERET2kLy8PM4991x+97vf0dDQgGVZnHfeebS1teW6a5OWglYREREREZE95IADDmDz5s00NJgVP13X5bbbbmPvvfdm0aJFACxfvpxjjz2WRCJBfX09d911F+Xl5Zxzzjkkk0k8Hg+33norLS0tnHrqqSxcuBCPx8MTTzzBhg0bcnl5E0JBq4iIiIiIfOBYe38Ma5E9rsd0tzi47z4+aJvi4mIaGxt7bYvFYiQSCQDy8/M5+eSTufrqq4lGo5x++umsWLEC13XZvn079913HwsXLiQvL4/99tuPsrIyrr/+enw+H5deeilvvfUWXV1d43pduaaJmERERERERPaQ5uZmZsyY0WtbWVlZd5a1vLyc2tpaotEoAFu2bGH27Nm88MILRCIRLrjgAo4++mhSqRRz585l/vz5rFq1igsuuACv10tZWdkev6aJpkyriIiIiMgEsvY/A7dpC+x6JdddkSzuu48PmRWdCK+99honnngizzzzDI2NjXg8Hk477TTefvttAJqampg9ezaBQIBYLMaiRYuor69n6dKlbNmyhYcffpiDDz6Y448/nldffZXNmzdz1113YVkWJ5100m5Z3OlAQauIiIiIyASyDvwcVrSN1H0XQCqR6+5IjkWjUW6//XbOPvtsLMsiGAzy2muvsWvXLhYuXEhHRwcPPfQQF110Ea7r0tDQwP33309JSQmf+9znupeLuffee9mxYwf77LMPF198MYFAgFdffbU7QzudKGgVEREREZkoHj+WLw98eViLV+K+9ddc90gmgR07dnDDDTfstn3z5s0ArFu3jnXr1vXa19jYyPXXX7/be+69996J6eQkoqBVRERERGSiBAoBcFNJrA+fhbvFgcTuk+TkWx4uKJ5JieUl7CbZkYjzTiLK+mgnCdw93WuRSUVBq4iIiIjIRAkWAeC+dT+e/U/Dc+ovIVxD6tU7oP51APbyBbi2fAF7+4I0pRIUe7wELTNfak0ixm/DDdzT0Uxcwat8QCloFRERERGZKJmgdedaUuEdWJXLYN5hWNXH4ta/ToXHx20zF5ICzm/YyovRDgAqvT6W+kOcV1TB90vncl5RBb9s28WuZIJyj5emVJLtiRi1yXjurk1kD1HQKiIiIiIyUQImaCUaxq3dgLvpITynXIcVKsMFvjtjDiGPh7N2beGdRM8EOruSCXYlwzzaFeaIYAHfLJnNf5XN3+3wa7rCXN1Sy+bE9Jt8RyRDQauIiIiIyASx0mNaiYV7NkaaIVTK0XmFnJxfwvWtu3oFrH09F+3gn+q28NFgAUmgKZmg1OvjoEA+5xVVcE/lPlzbtotbwg0TezEiOaKgVURERERkogQzmdb27k1upAlfcRXfmzGXLfEufjuMYNPFBK/dElHWRju4q6OJ78+YwzdLZrPIF+SK5p0a+yrTjifXHRARERERmbaCRbjJOCQiPdsiTRwebWK+L8D1bXVjmh24NZXk2007+GXrLk4rKOXn5fPxY41Dx2UiLFq0iB/+8IesWrWKVatWcckll1BVVTVg+9LSUi655BIALrvsMnw+HyeccAILFiyY0H4eeuihfOITn+i17dxzz2XRokXst99+HHHEEQO+9+Mf/zgrVqwY1/4o0yoiIiIiMlECRRBr770t0sQn6zbQmkryZCTc//tG6NfheppTSS4rncs15fP5VuN7xJRxnZQ2bdrErbfeCsC+++7LypUrufnmm4f9/kcffXSiujYsb7755h4/p4JWEREREZEJYgWLeo9nBfI7mzi+ayf3JlPjWsq7uqMJgMtK57K6chHfbdrBW/Hd14SVySMUCtHebn7UqKqq4tOf/jSpVIpEIsHq1av7fc8555zD+vXrKSoq4kMf+hB+v5+KigoeffRR1q5dy4IFCzjzzDOJRqOEw2ESiQR33HEHRx99NMuXL8d1XdavX8+aNWs455xzKCgoID8/n5tuuolIJNLvObMdeuihVFZWcv/992PbNgceeCDt7e0EAgH+9re/AbB06VKWLVtGQUEBDz74IK+99tqYPicFrSIiIiIiEyVQCNHeQasdbyHk93KfJzTup1vd0cR7iRg/KavijlkL+UlLDfd0NI/7eaaDT+XP4IyC0nE95p87mrmvs2XQNosXL2bVqlX4fD7mzp3LLbfcAsDZZ5/NnXfeyc6dO1m6dCmnn346995776DHysvL4ze/+Q0VFRV85StfYe3atZx11lncdttt1NbWcsopp1BSUkJlZSUHHXQQ1113HQAXXnhhd8Z006ZNPPnkk7sde/ny5ey1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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "dark" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(figsize=(16, 6))\n", + "\n", + "df[['Close','Bollinger High','Bollinger Low']].plot(ax=ax)\n", + "\n", + "plt.title(\"Bitcoin - Bollinger bands (USD)\", fontsize=16, fontweight='bold', color='white')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> Check out the blog post we wrote about Bollinger bands here!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/pandas/conditional-selection-and-operations.ipynb b/pandas/conditional-selection-and-operations.ipynb new file mode 100644 index 0000000..e1c5245 --- /dev/null +++ b/pandas/conditional-selection-and-operations.ipynb @@ -0,0 +1,1548 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# Vectorized Operations and Methods on Pandas Series\n", + "\n", + "Series also support vectorized operations and aggregation functions as Numpy, on this lecture we'll see most common ones." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Hands on! " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "pd.options.display.float_format = '{:,.2f}'.format" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "The first thing we'll do is create again the `Series` from our previous lecture: " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "g7_pop = pd.Series({\n", + " 'Canada': 35.467,\n", + " 'France': 63.951,\n", + " 'Germany': 80.94,\n", + " 'Italy': 60.665,\n", + " 'Japan': 127.061,\n", + " 'United Kingdom': 64.511,\n", + " 'United States': 318.523\n", + "}, dtype=np.float, name='G7 Population in millions')" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Italy 60.66\n", + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "gdp = pd.Series(\n", + " [1785387, 2833687, 3874437, 2167744, 4602367, 2950039, 17348075],\n", + " index=['Canada', 'France', 'Germany', 'Italy',\n", + " 'Japan', 'United Kingdom', 'United States'],\n", + " dtype=np.float,\n", + " name='G7 GDP in millions')" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 1,785,387.00\n", + "France 2,833,687.00\n", + "Germany 3,874,437.00\n", + "Italy 2,167,744.00\n", + "Japan 4,602,367.00\n", + "United Kingdom 2,950,039.00\n", + "United States 17,348,075.00\n", + "Name: G7 GDP in millions, dtype: float64" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "gdp" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.head(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.tail(3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## `Series` vectorized operations" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35,467,000.00\n", + "France 63,951,000.00\n", + "Germany 80,940,000.00\n", + "Italy 60,665,000.00\n", + "Japan 127,061,000.00\n", + "United Kingdom 64,511,000.00\n", + "United States 318,523,000.00\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop * 1_000_000" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 1,000,035.47\n", + "France 1,000,063.95\n", + "Germany 1,000,080.94\n", + "Italy 1,000,060.67\n", + "Japan 1,000,127.06\n", + "United Kingdom 1,000,064.51\n", + "United States 1,000,318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop + 1_000_000" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 1,785,387,000,000.00\n", + "France 2,833,687,000,000.00\n", + "Germany 3,874,437,000,000.00\n", + "Italy 2,167,744,000,000.00\n", + "Japan 4,602,367,000,000.00\n", + "United Kingdom 2,950,039,000,000.00\n", + "United States 17,348,075,000,000.00\n", + "Name: G7 GDP in millions, dtype: float64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "gdp * 1_000_000" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Operation between Series:**" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 50,339.39\n", + "France 44,310.28\n", + "Germany 47,868.01\n", + "Italy 35,733.03\n", + "Japan 36,221.71\n", + "United Kingdom 45,729.24\n", + "United States 54,464.12\n", + "dtype: float64" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "gdp / g7_pop" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 50,339.39\n", + "France 44,310.28\n", + "Germany 47,868.01\n", + "Italy 35,733.03\n", + "Japan 36,221.71\n", + "United Kingdom 45,729.24\n", + "United States 54,464.12\n", + "dtype: float64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(gdp * 1_000_000) / (g7_pop * 1_000_000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Using _Universal Functions (Ufuncs)_ to obtain statistical info\n", + "\n", + "We can apply any _Universal Function_ to a Series.\n", + "\n", + "Another useful method is `describe`, which gives you a good \"summary\" of the `Series`. Let's explore other methods in more detail:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "count 7.00\n", + "mean 107.30\n", + "std 97.25\n", + "min 35.47\n", + "25% 62.31\n", + "50% 64.51\n", + "75% 104.00\n", + "max 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.describe()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "318.523" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.max()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "35.467" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.min()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "107.30257142857144" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.mean()" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "97.24996987121581" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.std()" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "61.3222" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.quantile(.2)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "117.83680000000004" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.quantile(.8)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 3.57\n", + "France 4.16\n", + "Germany 4.39\n", + "Italy 4.11\n", + "Japan 4.84\n", + "United Kingdom 4.17\n", + "United States 5.76\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.log(g7_pop)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# Conditional Selection & Filtering on Pandas Series\n", + "\n", + "In conditional selection (also known as **boolean selection**), we will select subsets of data based on the actual values of the data in the Series by using a boolean vector to filter the data." + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Hands on!" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 1, + "source": [ + "import pandas as pd\n", + "import numpy as np" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "The first thing we'll do is create again the `Series` from our previous lecture:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 2, + "source": [ + "data_dic = {\n", + " 'Canada': 35.467,\n", + " 'France': 63.951,\n", + " 'Germany': 80.94,\n", + " 'Italy': 60.665,\n", + " 'Japan': 127.061,\n", + " 'United Kingdom': 64.511,\n", + " 'United States': 318.523\n", + "}\n", + "\n", + "g7_pop = pd.Series(data_dic,\n", + " name='G7 Population in millions')" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 3, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Summary of selection (from previous lesson):" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "63.951" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 4, + "source": "g7_pop['France']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "63.951" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 5, + "source": "g7_pop.loc['France']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "35.467" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 6, + "source": "g7_pop.iloc[0]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Conditional selection ( boolean arrays)\n", + "\n", + "The same boolean array techniques we saw applied to numpy arrays can be used for Pandas `Series`.\n", + "\n", + "On previous lecture we saw that we can index our `Series` using a list of boolean values:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 7, + "source": "g7_pop[[False, True, True, True, False, False, False]]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "More documented:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 8, + "source": [ + "g7_pop[[\n", + " False, # CA\n", + " True, # Fr\n", + " True, # GE\n", + " True, # IT\n", + " False, # JA\n", + " False, # UK\n", + " False #US\n", + "]]" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Now we'll go a step further and use a real condition to generate these list of boolean values:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada False\n", + "France False\n", + "Germany True\n", + "Italy False\n", + "Japan True\n", + "United Kingdom False\n", + "United States True\n", + "Name: G7 Population in millions, dtype: bool" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 9, + "source": [ + "condition = g7_pop > 70\n", + "\n", + "condition" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 10, + "source": "g7_pop[condition]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 11, + "source": "g7_pop.loc[g7_pop > 70]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "107.30257142857144" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 12, + "source": "g7_pop.mean()" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 13, + "source": "g7_pop[g7_pop > g7_pop.mean()]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 14, + "source": "g7_pop.loc[g7_pop > g7_pop.mean()]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 15, + "source": "g7_pop.loc[g7_pop > g7_pop.mean()].size" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "### Operators" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "#### `or`" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "Germany 80.940\n", + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 16, + "source": "g7_pop[(g7_pop > 70) | (g7_pop < 40)]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "#### `and`" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 17, + "source": "g7_pop[(g7_pop > 80) & (g7_pop < 200)]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "#### `not`" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Italy 60.665\n", + "United Kingdom 64.511\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 18, + "source": "g7_pop.loc[~(g7_pop > 80)]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 19, + "source": "g7_pop.loc[g7_pop > 80]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Japan 127.061\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 20, + "source": "g7_pop[g7_pop > g7_pop.mean()]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "97.24996987121581" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 21, + "source": "g7_pop.std()" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 22, + "source": "g7_pop[(g7_pop > g7_pop.mean() - g7_pop.std() / 2) | (g7_pop > g7_pop.mean() + g7_pop.std() / 2)]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "### Indexing with isin\n", + "\n", + "Consider the `isin()` method of `Series`, which returns a boolean vector that is true wherever the Series elements exist in the passed list. This allows you to select rows where one or more columns have values you want:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 23, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "Germany 80.940\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 24, + "source": "g7_pop[g7_pop.isin([80, 80.940, 60.451, 35.467])]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "Italy 60.665\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 25, + "source": "g7_pop[g7_pop.index.isin(['Canada', 'Italy'])]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Modifying series using conditional selection" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 99.990\n", + "France 99.990\n", + "Germany 80.940\n", + "Italy 99.990\n", + "Japan 127.061\n", + "United Kingdom 99.990\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 26, + "source": [ + "g7_pop[g7_pop < 70] = 99.99\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "Also we can combine `+=`, `-=`, `*=` operations while modifying values.\n", + "\n", + "Lets remove 5 million from countries with population >100M:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 99.990\n", + "France 99.990\n", + "Germany 80.940\n", + "Italy 99.990\n", + "Japan 132.061\n", + "United Kingdom 99.990\n", + "United States 323.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 27, + "source": [ + "g7_pop[g7_pop > 100] += 5\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# Pandas Series - Sorting\n", + "\n", + "In many use cases `Series` values need to be sorted.\n", + "\n", + "Sorting in Pandas is extremely easy. There are two important methods to be used for Series and DataFrames that will take care of the job: `sort_values` and `sort_index`." + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Hands on!" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 1, + "source": [ + "import pandas as pd\n", + "import numpy as np" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 2, + "source": "pd.options.display.float_format = '{:,.2f}'.format" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "The first thing we'll do is create again the `Series` from our previous lecture:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 3, + "source": [ + "g7_pop = pd.Series({\n", + " 'Canada': 35.467,\n", + " 'France': 63.951,\n", + " 'Germany': 80.94,\n", + " 'Italy': 60.665,\n", + " 'Japan': 127.061,\n", + " 'United Kingdom': 64.511,\n", + " 'United States': 318.523\n", + "}, dtype=np.float, name='G7 Population in millions')" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Italy 60.66\n", + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 4, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 5, + "source": [ + "gdp = pd.Series(\n", + " [1785387, 2833687, 3874437, 2167744, 4602367, 2950039, 17348075],\n", + " index=['Canada', 'France', 'Germany', 'Italy',\n", + " 'Japan', 'United Kingdom', 'United States'],\n", + " dtype=np.float,\n", + " name='G7 GDP in millions')" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Sorting values" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Italy 60.66\n", + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 6, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "Italy 60.66\n", + "France 63.95\n", + "United Kingdom 64.51\n", + "Germany 80.94\n", + "Japan 127.06\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 7, + "source": "g7_pop.sort_values()" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "As you can see, sorting is as simple as invoking the `sort_values` method. By default, values are sorted in ascending order, which you can customize with the `ascending` parameter." + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "United States 318.52\n", + "Japan 127.06\n", + "Germany 80.94\n", + "United Kingdom 64.51\n", + "France 63.95\n", + "Italy 60.66\n", + "Canada 35.47\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 8, + "source": "g7_pop.sort_values(ascending=False)" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Italy 60.66\n", + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 9, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 10, + "source": "g7_pop.sort_values(ascending=False, inplace=True)" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "United States 318.52\n", + "Japan 127.06\n", + "Germany 80.94\n", + "United Kingdom 64.51\n", + "France 63.95\n", + "Italy 60.66\n", + "Canada 35.47\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 11, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "### Sorting index\n", + "\n", + "`sort_index` works exactly in the same way:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.47\n", + "France 63.95\n", + "Germany 80.94\n", + "Italy 60.66\n", + "Japan 127.06\n", + "United Kingdom 64.51\n", + "United States 318.52\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 12, + "source": "g7_pop.sort_index()" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/pandas/series.ipynb b/pandas/series.ipynb new file mode 100644 index 0000000..d3c399a --- /dev/null +++ b/pandas/series.ipynb @@ -0,0 +1,2235 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# Intro to Pandas Series\n", + "\n", + "A Series is a one-dimensional array-like object containing a _typed_ sequence of values and an associated array of data labels, called its _index_." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Hands on!\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import pandas as pd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Series creation\n", + "\n", + "`pd.Series`' constructor accepts the following parameters:\n", + "\n", + "- **data**: (required) has all the data we want to store on the Series and could be an scalar value, a Python sequence or an unidimensional NumPy ndarray.\n", + "- **index**: (optional), has all the labels that we want to assign to our data values and could be a Python sequence or an unidimensional NumPy ndarray. Default value: `np.arange(0, len(data))`.\n", + "- **dtype**: (optional) any NumPy data type." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 1\n", + "1 2\n", + "2 3\n", + "3 4\n", + "4 5\n", + "dtype: int64" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series = pd.Series([1, 2, 3, 4, 5])\n", + "series" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Series have an associated type:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 1\n", + "1 2\n", + "2 3\n", + "3 4\n", + "4 5\n", + "dtype: int64" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Show first values of our Series\n", + "series.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dtype('int64')" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series.dtype" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 1.0\n", + "1 2.0\n", + "2 3.0\n", + "3 4.0\n", + "4 5.0\n", + "dtype: float64" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series = pd.Series([1, 2, 3, 4, 5], dtype=np.float)\n", + "series" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dtype('float64')" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series.dtype" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 a\n", + "1 b\n", + "2 c\n", + "3 d\n", + "4 e\n", + "dtype: object" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series = pd.Series(['a', 'b', 'c', 'd', 'e'])\n", + "series" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 2\n", + "1 4\n", + "2 6\n", + "3 8\n", + "4 10\n", + "dtype: int64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Using a ndarraynp.array([2, 4, 6, 8, 10\n", + "array = np.array([2, 4, 6, 8, 10])\n", + "series = pd.Series(array)\n", + "series" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 1\n", + "b 2\n", + "c 3\n", + "d 4\n", + "e 5\n", + "dtype: int64" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# With predefined index\n", + "series = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])\n", + "series" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 1.0\n", + "b 2.0\n", + "c 3.0\n", + "d 4.0\n", + "e 5.0\n", + "dtype: float64" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Using a dictionary (index will be defined using keys)\n", + "series = pd.Series({'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}, dtype=np.float64)\n", + "series" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Series attributes\n", + "\n", + "These are the most common attributes to get information about a `Series`:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 1.0\n", + "b 2.0\n", + "c 3.0\n", + "d 4.0\n", + "e 5.0\n", + "dtype: float64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "series = pd.Series(data=[1, 2, 3, 4, 5],\n", + " index=['a', 'b', 'c', 'd', 'e'],\n", + " dtype=np.float64)\n", + "series" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dtype('float64')" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Type of our Series\n", + "series.dtype" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1., 2., 3., 4., 5.])" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Values of a series\n", + "series.values" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.ndarray" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(series.values)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['a', 'b', 'c', 'd', 'e'], dtype='object')" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Index of a series\n", + "series.index" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Dimension of the Series\n", + "series.ndim" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(5,)" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Shape of the Series\n", + "series.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "5" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of Series elements\n", + "series.size" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## The Group of Seven\n", + "\n", + "We'll start analyzing \"[The Group of Seven](https://en.wikipedia.org/wiki/Group_of_Seven)\". Which is a political formed by Canada, France, Germany, Italy, Japan, the United Kingdom and the United States. We'll start by analyzing population, and for that, we'll use a `pandas.Series` object." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 35.467\n", + "1 63.951\n", + "2 80.940\n", + "3 60.665\n", + "4 127.061\n", + "5 64.511\n", + "6 318.523\n", + "dtype: float64" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# In millions\n", + "g7_pop = pd.Series([35.467, 63.951, 80.940, 60.665, 127.061, 64.511, 318.523])\n", + "\n", + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Someone might not know we're representing population in millions of inhabitants. Series can have a `name`, to better document the purpose of the Series:" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 35.467\n", + "1 63.951\n", + "2 80.940\n", + "3 60.665\n", + "4 127.061\n", + "5 64.511\n", + "6 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.name = 'G7 Population in millions'\n", + "\n", + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Series are pretty similar to numpy arrays:" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dtype('float64')" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.dtype" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.ndarray" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(series.values)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.ndim" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(7,)" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "7" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.size" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And they _look_ like simple Python lists or Numpy Arrays. But they're actually more similar to Python `dict`s." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 35.467\n", + "1 63.951\n", + "2 80.940\n", + "3 60.665\n", + "4 127.061\n", + "5 64.511\n", + "6 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "RangeIndex(start=0, stop=7, step=1)" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.index" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Assigning `Series` indexes\n", + "\n", + "In contrast to lists, we can explicitly define the index:" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "g7_pop.index = [\n", + " 'Canada',\n", + " 'France',\n", + " 'Germany',\n", + " 'Italy',\n", + " 'Japan',\n", + " 'United Kingdom',\n", + " 'United States',\n", + "]" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Compare it with the [following table](https://docs.google.com/spreadsheets/d/1IlorV2-Oh9Da1JAZ7weVw86PQrQydSMp-ydVMH135iI/edit?usp=sharing): \n", + "\n", + "![image](https://user-images.githubusercontent.com/872296/38149656-b5ce9816-3431-11e8-88e4-195756e25355.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Removing indexes\n", + "\n", + "We can also remove current indexes from our `Series`, going back to the original indexes. To do that we use the `reset_index()` method with `drop=True` parameter:" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 35.467\n", + "1 63.951\n", + "2 80.940\n", + "3 60.665\n", + "4 127.061\n", + "5 64.511\n", + "6 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop.reset_index(drop=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that `reset_index()` will return a new `Series`, so if we want to keep it we need to assign it to a variable, or use `inplace=True` parameter to modify the original `Series`." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [], + "source": [ + "g7_pop.reset_index(drop=True, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 35.467\n", + "1 63.951\n", + "2 80.940\n", + "3 60.665\n", + "4 127.061\n", + "5 64.511\n", + "6 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Creating a `Series` with indexes already\n", + "\n", + "We can create a new `Series` with its indexes labels in a single step:" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "values = [35.467, 63.951, 80.94, 60.665, 127.061, 64.511, 318.523]\n", + "indexes = ['Canada', 'France', 'Germany', 'Italy',\n", + " 'Japan', 'United Kingdom', 'United States']\n", + "\n", + "pd.Series(values,\n", + " index=indexes,\n", + " name='G7 Population in millions')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Creating a `Series` from a data dictionary\n", + "We can say that Series look like \"ordered dictionaries\". We can actually create Series out of dictionaries:" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "data_dic = {\n", + " 'Canada': 35.467,\n", + " 'France': 63.951,\n", + " 'Germany': 80.94,\n", + " 'Italy': 60.665,\n", + " 'Japan': 127.061,\n", + " 'United Kingdom': 64.511,\n", + " 'United States': 318.523\n", + "}\n", + "\n", + "g7_pop = pd.Series(data_dic,\n", + " name='G7 Population in millions')" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "g7_pop" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Creating a `Series` out of other `Series`\n", + "\n", + "You can also create Series out of other series, specifying indexes:" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Spain NaN\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pd.Series(g7_pop,\n", + " index=['France', 'Germany', 'Italy', 'Spain'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![rmotr](https://user-images.githubusercontent.com/7065401/52071918-bda15380-2562-11e9-828c-7f95297e4a82.png)\n", + "
\n", + "\n", + "\n", + "\n", + "# Pandas Series - Selection and Indexing\n", + "\n", + "Pandas Series object acts in many ways like a one-dimensional NumPy array, and in many ways like a standard Python dictionary. If we keep these two overlapping analogies in mind, it will help us to understand the patterns of data indexing and selection in these data structures." + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)\n", + "\n", + "## Hands on!" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 1, + "source": [ + "import pandas as pd\n", + "import numpy as np" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "The first thing we'll do is create again the `Series` from our previous lecture:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 2, + "source": [ + "data_dic = {\n", + " 'Canada': 35.467,\n", + " 'France': 63.951,\n", + " 'Germany': 80.94,\n", + " 'Italy': 60.665,\n", + " 'Japan': 127.061,\n", + " 'United Kingdom': 64.511,\n", + " 'United States': 318.523\n", + "}\n", + "\n", + "g7_pop = pd.Series(data_dic,\n", + " name='G7 Population in millions')" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 3, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Indexing\n", + "\n", + "Indexing works similarly to lists and dictionaries.\n", + "\n", + "### Indexing by index\n", + "\n", + "you use the **index** of the element you're looking for:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "35.467" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 4, + "source": "g7_pop['Canada']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "127.061" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 5, + "source": "g7_pop['Japan']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "64.511" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 6, + "source": "g7_pop['United Kingdom']" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "The following also works, but it's **NOT** recommended:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "127.061" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 7, + "source": "g7_pop.Japan" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "### Slicing and multi-selection\n", + "\n", + "Slicing also works, but **important**, in Pandas, the upper limit is also included:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 8, + "source": "g7_pop['Germany': 'Japan']" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Multi indexing also works (similarly to numpy):" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Italy 60.665\n", + "France 63.951\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 9, + "source": "g7_pop[['Italy', 'France', 'United States']]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "### Indexing by sequential position\n", + "\n", + "Indexing elements by their sequential position also works. In this case pandas evaluates the object received; if it doesn't exist as an index, it'll try by sequential position.\n", + "\n", + "With sequential position the upper limit is not included." + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 10, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "35.467" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 11, + "source": "g7_pop.iloc[0] # First element" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "318.523" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 12, + "source": "g7_pop.iloc[-1] # Last element" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Other examples:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "80.94" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 13, + "source": "g7_pop.iloc[2]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "127.061" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 14, + "source": "g7_pop.iloc[4]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Italy 60.665\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 15, + "source": "g7_pop.iloc[2:4]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Italy 60.665\n", + "France 63.951\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 16, + "source": "g7_pop.iloc[[3, 1, 6]]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Adding new elements to a `Series`\n", + "\n", + "In many cases we'll want to add new values to our `Series`, to do that we can just simply index our `Series` using the new index and then assigning a value to that index. Let's add two new records:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": 17, + "source": [ + "g7_pop['Brazil'] = 20.124\n", + "g7_pop['India'] = 32.235" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 35.467\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Brazil 20.124\n", + "India 32.235\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 18, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Modifying `Series` elements" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France 63.951\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Brazil 20.124\n", + "India 32.235\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 19, + "source": [ + "g7_pop['Canada'] = 40.5\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Brazil 20.124\n", + "India 32.235\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 20, + "source": [ + "g7_pop['France'] = np.nan\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Removing elements from a `Series`" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "India 32.235\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 21, + "source": [ + "del g7_pop['Brazil']\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 22, + "source": [ + "del g7_pop['India']\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "### Checking existance of a key (membership)" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 23, + "source": "'France' in g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 24, + "source": "'Brazil' in g7_pop" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Introducing **`loc`** & **`iloc`**\n", + "\n", + "What's the problem with the indexing we've seen? It's not explicit. Pandas receives an element to index and it tries figuring out if we meant to select an element by its key, or its sequential position. Check out the following example:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "1 a\n", + "2 b\n", + "3 c\n", + "dtype: object" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 25, + "source": [ + "s = pd.Series(\n", + " ['a', 'b', 'c'],\n", + " index=[1, 2, 3])\n", + "s" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "1 a\n", + "2 b\n", + "3 c\n", + "dtype: object" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 26, + "source": "s" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "What happens if we try indexing `s[1]`, what should it return? `a` or `b`?" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "'a'" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 27, + "source": "s[1]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "In this case, the returned object is worked out by the index, not by the sequential position. But again, it's not intuitive or explicit.\n", + "\n", + "Enter `loc` and `iloc`:\n", + "* `loc` is the preferred way to select elements in Series (and Dataframes) by their index\n", + "* `iloc` is the preferred way to select by sequential position" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "'a'" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 28, + "source": "s.loc[1]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "'b'" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 29, + "source": "s.iloc[1]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 30, + "source": "g7_pop" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "318.523" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 31, + "source": "g7_pop.iloc[-1]" + }, + { + "metadata": { + "scrolled": true + }, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.5\n", + "France NaN\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 32, + "source": "g7_pop.iloc[[0, 1]]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Using our previous series:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 33, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "127.061" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 34, + "source": "g7_pop.loc['Japan']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "318.523" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 35, + "source": "g7_pop.iloc[-1]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 36, + "source": "g7_pop" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "40.5" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 37, + "source": "g7_pop.loc['Canada']" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "40.5" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 38, + "source": "g7_pop.iloc[0]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "318.523" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 39, + "source": "g7_pop.iloc[-1]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Japan 127.061\n", + "Canada 40.500\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 40, + "source": "g7_pop.loc[['Japan', 'Canada']]" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "United States 318.523\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 41, + "source": "g7_pop.iloc[[0, -1]]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "#### **`loc`** & **`iloc`** to modify `Series`" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 1000.000\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 42, + "source": [ + "g7_pop.loc['United States'] = 1000\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada 40.500\n", + "France NaN\n", + "Germany 80.940\n", + "Italy 60.665\n", + "Japan 127.061\n", + "United Kingdom 64.511\n", + "United States 500.000\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 43, + "source": [ + "g7_pop.iloc[-1] = 500\n", + "\n", + "g7_pop" + ] + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": [ + "![green-divider](https://user-images.githubusercontent.com/7065401/52071924-c003ad80-2562-11e9-8297-1c6595f8a7ff.png)\n", + "\n", + "## Introducing to Boolean arrays\n", + "\n", + "Another way to select certain values within a `Series` is using **boolean arrays**, also known as **Conditional selection**.\n", + "\n", + "We can index our `Series` using a list of boolean values:" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "United States 500.000\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 44, + "source": "g7_pop[[False, False, True, False, True, False, True]]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "Or we can index our `Series` using another `Series` with boolean values:" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Canada False\n", + "France False\n", + "Germany True\n", + "Italy False\n", + "Japan True\n", + "United Kingdom False\n", + "United States True\n", + "dtype: bool" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 45, + "source": [ + "condition = pd.Series([\n", + " False, False, True, False, True, False, True\n", + "], index=[\n", + " 'Canada', 'France', 'Germany', 'Italy', 'Japan', 'United Kingdom', 'United States'\n", + "])\n", + "\n", + "condition" + ] + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [ + { + "data": { + "text/plain": [ + "Germany 80.940\n", + "Japan 127.061\n", + "United States 500.000\n", + "Name: G7 Population in millions, dtype: float64" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "execution_count": 46, + "source": "g7_pop[condition]" + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "> On upcoming lectures we'll see how to use more complex **conditional selections**." + }, + { + "metadata": {}, + "cell_type": "markdown", + "source": "![purple-divider](https://user-images.githubusercontent.com/7065401/52071927-c1cd7100-2562-11e9-908a-dde91ba14e59.png)" + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/pandas/utils.py b/pandas/utils.py new file mode 100644 index 0000000..1e9771e --- /dev/null +++ b/pandas/utils.py @@ -0,0 +1,27 @@ +import numpy as np +import pandas as pd +import matplotlib.pyplot as plt +import seaborn as sns + +def apply_theme(): + pd.set_option('display.max_columns', 500) + pd.set_option('display.width', 1000) + pd.set_option('display.max_colwidth', 1000) + pd.set_option('display.float_format', '{:,.3f}'.format) + + flatui = ["#2e86de", "#ff4757", "#feca57", "#2ed573", "#ff7f50", "#00cec9", "#fd79a8", "#a4b0be"] + flatui_palette = sns.color_palette(flatui) + sns.palplot(flatui_palette) + sns.set_palette(flatui_palette) + + sns.set_style("darkgrid", { + 'axes.edgecolor': '#2b2b2b', + 'axes.facecolor': '#2b2b2b', + 'axes.labelcolor': '#919191', + 'figure.facecolor': '#2b2b2b', + 'grid.color': '#545454', + 'patch.edgecolor': '#2b2b2b', + 'text.color': '#bababa', + 'xtick.color': '#bababa', + 'ytick.color': '#bababa' + }) \ No newline at end of file