Add VT2-examples: all 6 chapters of 'Visualize This' (110 files) — data scraping, ETL, trends, categorical, multivariate, spatial, distribution analysis

This commit is contained in:
neo committed 2026-06-24 14:49:15 +05:00
1 parent 088771a9cf
commit b42b866a8c
110 files changed
+400895

No files matched your search

@@ -0,0 +1,35 @@
import csv
fields = None
with open('income-scraped.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=",")
for row in reader:
# Save header variables
if fields == None:
fields = row
else:
# Start JSON string
if row[0] == "1":
famunit = '['
else:
famunit = ''
# Add family unit
famunit += '{'
famunit += '"' + fields[0] + '":' + row[0] + ',' # famindex
famunit += '"' + fields[1] + '":' + row[1] + ',' # AGE
famunit += '"' + fields[2] + '":' + row[2] # FTOTINC
famunit += '}'
# Close set if at end
if (row[0] == "200"):
famunit += ']'
else:
famunit += ','
# Print family unit
print(famunit)
@@ -0,0 +1,26 @@
import csv
fields = None
with open('income-scraped.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=",")
for row in reader:
# Save header variables
if fields == None:
fields = row
print('<?xml version="1.0" encoding="UTF-8"?>')
print("<rows>")
else:
# Add family unit
famunit = '<row>'
famunit += '<' + fields[0] + '>' + row[0] + '</' + fields[0] + '>' # famindex
famunit += '<' + fields[1] + '>' + row[1] + '</' + fields[1] + '>' # AGE
famunit += '<' + fields[2] + '>' + row[2] + '</' + fields[2] + '>' # FTOTINC
famunit += '</row>'
# Print family unit
print(famunit)
print("</rows>")
@@ -0,0 +1,20 @@
from bs4 import BeautifulSoup
fields = None
with open('income-scraped-to-xml.xml') as xmlfile:
xmlread = xmlfile.read()
soup = BeautifulSoup(xmlread, features='xml')
# Start file
f = open('xml-back-to-csv.csv', 'w')
# Write rows to file
f.write(",".join(['famindex', 'AGE', 'FTOTINC'])+'\n')
rows = soup.findAll('row')
for row in rows:
f.write(','.join([row.famindex.string, row.AGE.string, row.FTOTINC.string])+'\n')
# Close file
f.close()
@@ -0,0 +1,200 @@
[{"famindex":1,"AGE":45,"FTOTINC":114000},
{"famindex":2,"AGE":37,"FTOTINC":280000},
{"famindex":3,"AGE":60,"FTOTINC":184000},
{"famindex":4,"AGE":70,"FTOTINC":250100},
{"famindex":5,"AGE":79,"FTOTINC":33040},
{"famindex":6,"AGE":60,"FTOTINC":168000},
{"famindex":7,"AGE":56,"FTOTINC":557000},
{"famindex":8,"AGE":69,"FTOTINC":84500},
{"famindex":9,"AGE":54,"FTOTINC":128800},
{"famindex":10,"AGE":72,"FTOTINC":28500},
{"famindex":11,"AGE":26,"FTOTINC":85000},
{"famindex":12,"AGE":60,"FTOTINC":52000},
{"famindex":13,"AGE":54,"FTOTINC":24000},
{"famindex":14,"AGE":51,"FTOTINC":316600},
{"famindex":15,"AGE":35,"FTOTINC":261590},
{"famindex":16,"AGE":62,"FTOTINC":41200},
{"famindex":17,"AGE":28,"FTOTINC":11000},
{"famindex":18,"AGE":66,"FTOTINC":15500},
{"famindex":19,"AGE":75,"FTOTINC":37100},
{"famindex":20,"AGE":57,"FTOTINC":137000},
{"famindex":21,"AGE":69,"FTOTINC":80000},
{"famindex":22,"AGE":78,"FTOTINC":376100},
{"famindex":23,"AGE":47,"FTOTINC":10000},
{"famindex":24,"AGE":84,"FTOTINC":31400},
{"famindex":25,"AGE":75,"FTOTINC":40000},
{"famindex":26,"AGE":23,"FTOTINC":600},
{"famindex":27,"AGE":43,"FTOTINC":59000},
{"famindex":28,"AGE":87,"FTOTINC":26000},
{"famindex":29,"AGE":66,"FTOTINC":22000},
{"famindex":30,"AGE":62,"FTOTINC":103600},
{"famindex":31,"AGE":25,"FTOTINC":18100},
{"famindex":32,"AGE":45,"FTOTINC":25000},
{"famindex":33,"AGE":65,"FTOTINC":106000},
{"famindex":34,"AGE":63,"FTOTINC":111000},
{"famindex":35,"AGE":68,"FTOTINC":13700},
{"famindex":36,"AGE":28,"FTOTINC":160400},
{"famindex":37,"AGE":49,"FTOTINC":206600},
{"famindex":38,"AGE":58,"FTOTINC":67500},
{"famindex":39,"AGE":74,"FTOTINC":115000},
{"famindex":40,"AGE":70,"FTOTINC":107800},
{"famindex":41,"AGE":79,"FTOTINC":28100},
{"famindex":42,"AGE":22,"FTOTINC":36000},
{"famindex":43,"AGE":69,"FTOTINC":92920},
{"famindex":44,"AGE":27,"FTOTINC":91000},
{"famindex":45,"AGE":60,"FTOTINC":89000},
{"famindex":46,"AGE":69,"FTOTINC":309400},
{"famindex":47,"AGE":34,"FTOTINC":151500},
{"famindex":48,"AGE":35,"FTOTINC":71000},
{"famindex":49,"AGE":42,"FTOTINC":94000},
{"famindex":50,"AGE":64,"FTOTINC":94300},
{"famindex":51,"AGE":40,"FTOTINC":148000},
{"famindex":52,"AGE":95,"FTOTINC":1400},
{"famindex":53,"AGE":39,"FTOTINC":75000},
{"famindex":54,"AGE":63,"FTOTINC":89000},
{"famindex":55,"AGE":54,"FTOTINC":317000},
{"famindex":56,"AGE":53,"FTOTINC":57200},
{"famindex":57,"AGE":57,"FTOTINC":49000},
{"famindex":58,"AGE":44,"FTOTINC":7500},
{"famindex":59,"AGE":87,"FTOTINC":50100},
{"famindex":60,"AGE":60,"FTOTINC":8000},
{"famindex":61,"AGE":55,"FTOTINC":48000},
{"famindex":62,"AGE":32,"FTOTINC":24500},
{"famindex":63,"AGE":87,"FTOTINC":25000},
{"famindex":64,"AGE":67,"FTOTINC":68200},
{"famindex":65,"AGE":90,"FTOTINC":32400},
{"famindex":66,"AGE":23,"FTOTINC":41100},
{"famindex":67,"AGE":64,"FTOTINC":77000},
{"famindex":68,"AGE":32,"FTOTINC":86700},
{"famindex":69,"AGE":49,"FTOTINC":15200},
{"famindex":70,"AGE":54,"FTOTINC":573000},
{"famindex":71,"AGE":69,"FTOTINC":69000},
{"famindex":72,"AGE":64,"FTOTINC":147000},
{"famindex":73,"AGE":57,"FTOTINC":111600},
{"famindex":74,"AGE":53,"FTOTINC":31200},
{"famindex":75,"AGE":40,"FTOTINC":151500},
{"famindex":76,"AGE":58,"FTOTINC":52300},
{"famindex":77,"AGE":42,"FTOTINC":13500},
{"famindex":78,"AGE":75,"FTOTINC":20900},
{"famindex":79,"AGE":33,"FTOTINC":133800},
{"famindex":80,"AGE":39,"FTOTINC":83000},
{"famindex":81,"AGE":24,"FTOTINC":80000},
{"famindex":82,"AGE":59,"FTOTINC":16000},
{"famindex":83,"AGE":48,"FTOTINC":60000},
{"famindex":84,"AGE":45,"FTOTINC":162200},
{"famindex":85,"AGE":83,"FTOTINC":3000},
{"famindex":86,"AGE":76,"FTOTINC":147900},
{"famindex":87,"AGE":40,"FTOTINC":78300},
{"famindex":88,"AGE":61,"FTOTINC":240000},
{"famindex":89,"AGE":35,"FTOTINC":85000},
{"famindex":90,"AGE":46,"FTOTINC":80000},
{"famindex":91,"AGE":46,"FTOTINC":112200},
{"famindex":92,"AGE":30,"FTOTINC":130000},
{"famindex":93,"AGE":25,"FTOTINC":19550},
{"famindex":94,"AGE":65,"FTOTINC":148000},
{"famindex":95,"AGE":57,"FTOTINC":129400},
{"famindex":96,"AGE":39,"FTOTINC":94000},
{"famindex":97,"AGE":21,"FTOTINC":31100},
{"famindex":98,"AGE":56,"FTOTINC":100000},
{"famindex":99,"AGE":38,"FTOTINC":40000},
{"famindex":100,"AGE":76,"FTOTINC":63310},
{"famindex":101,"AGE":59,"FTOTINC":128000},
{"famindex":102,"AGE":25,"FTOTINC":45000},
{"famindex":103,"AGE":43,"FTOTINC":136800},
{"famindex":104,"AGE":62,"FTOTINC":125000},
{"famindex":105,"AGE":59,"FTOTINC":94400},
{"famindex":106,"AGE":81,"FTOTINC":86300},
{"famindex":107,"AGE":39,"FTOTINC":150100},
{"famindex":108,"AGE":28,"FTOTINC":34000},
{"famindex":109,"AGE":34,"FTOTINC":79640},
{"famindex":110,"AGE":60,"FTOTINC":35000},
{"famindex":111,"AGE":45,"FTOTINC":337000},
{"famindex":112,"AGE":31,"FTOTINC":100000},
{"famindex":113,"AGE":67,"FTOTINC":63400},
{"famindex":114,"AGE":64,"FTOTINC":141600},
{"famindex":115,"AGE":86,"FTOTINC":30100},
{"famindex":116,"AGE":83,"FTOTINC":44300},
{"famindex":117,"AGE":61,"FTOTINC":122000},
{"famindex":118,"AGE":58,"FTOTINC":43000},
{"famindex":119,"AGE":79,"FTOTINC":104000},
{"famindex":120,"AGE":61,"FTOTINC":9600},
{"famindex":121,"AGE":44,"FTOTINC":66100},
{"famindex":122,"AGE":26,"FTOTINC":38100},
{"famindex":123,"AGE":32,"FTOTINC":103000},
{"famindex":124,"AGE":22,"FTOTINC":59000},
{"famindex":125,"AGE":36,"FTOTINC":56000},
{"famindex":126,"AGE":84,"FTOTINC":114300},
{"famindex":127,"AGE":24,"FTOTINC":68300},
{"famindex":128,"AGE":76,"FTOTINC":84600},
{"famindex":129,"AGE":57,"FTOTINC":161400},
{"famindex":130,"AGE":46,"FTOTINC":18800},
{"famindex":131,"AGE":53,"FTOTINC":45300},
{"famindex":132,"AGE":26,"FTOTINC":85000},
{"famindex":133,"AGE":67,"FTOTINC":40600},
{"famindex":134,"AGE":36,"FTOTINC":88000},
{"famindex":135,"AGE":57,"FTOTINC":134300},
{"famindex":136,"AGE":30,"FTOTINC":54000},
{"famindex":137,"AGE":41,"FTOTINC":45600},
{"famindex":138,"AGE":74,"FTOTINC":43210},
{"famindex":139,"AGE":22,"FTOTINC":10000},
{"famindex":140,"AGE":51,"FTOTINC":160000},
{"famindex":141,"AGE":51,"FTOTINC":130400},
{"famindex":142,"AGE":47,"FTOTINC":45000},
{"famindex":143,"AGE":25,"FTOTINC":34000},
{"famindex":144,"AGE":37,"FTOTINC":78000},
{"famindex":145,"AGE":62,"FTOTINC":18500},
{"famindex":146,"AGE":44,"FTOTINC":169000},
{"famindex":147,"AGE":41,"FTOTINC":86000},
{"famindex":148,"AGE":66,"FTOTINC":446000},
{"famindex":149,"AGE":40,"FTOTINC":55000},
{"famindex":150,"AGE":63,"FTOTINC":41400},
{"famindex":151,"AGE":41,"FTOTINC":29000},
{"famindex":152,"AGE":22,"FTOTINC":38000},
{"famindex":153,"AGE":50,"FTOTINC":83460},
{"famindex":154,"AGE":69,"FTOTINC":16400},
{"famindex":155,"AGE":29,"FTOTINC":181600},
{"famindex":156,"AGE":70,"FTOTINC":23800},
{"famindex":157,"AGE":65,"FTOTINC":132200},
{"famindex":158,"AGE":32,"FTOTINC":217000},
{"famindex":159,"AGE":48,"FTOTINC":32800},
{"famindex":160,"AGE":47,"FTOTINC":55000},
{"famindex":161,"AGE":60,"FTOTINC":88000},
{"famindex":162,"AGE":75,"FTOTINC":46300},
{"famindex":163,"AGE":55,"FTOTINC":31500},
{"famindex":164,"AGE":73,"FTOTINC":8100},
{"famindex":165,"AGE":40,"FTOTINC":45000},
{"famindex":166,"AGE":65,"FTOTINC":47000},
{"famindex":167,"AGE":84,"FTOTINC":11700},
{"famindex":168,"AGE":71,"FTOTINC":9800},
{"famindex":169,"AGE":83,"FTOTINC":55400},
{"famindex":170,"AGE":51,"FTOTINC":77000},
{"famindex":171,"AGE":40,"FTOTINC":34100},
{"famindex":172,"AGE":39,"FTOTINC":130000},
{"famindex":173,"AGE":27,"FTOTINC":82000},
{"famindex":174,"AGE":36,"FTOTINC":54000},
{"famindex":175,"AGE":81,"FTOTINC":29630},
{"famindex":176,"AGE":35,"FTOTINC":93800},
{"famindex":177,"AGE":59,"FTOTINC":122900},
{"famindex":178,"AGE":26,"FTOTINC":65000},
{"famindex":179,"AGE":66,"FTOTINC":108000},
{"famindex":180,"AGE":46,"FTOTINC":2500},
{"famindex":181,"AGE":28,"FTOTINC":42000},
{"famindex":182,"AGE":25,"FTOTINC":77000},
{"famindex":183,"AGE":66,"FTOTINC":9000},
{"famindex":184,"AGE":58,"FTOTINC":80500},
{"famindex":185,"AGE":56,"FTOTINC":84000},
{"famindex":186,"AGE":61,"FTOTINC":85000},
{"famindex":187,"AGE":32,"FTOTINC":156000},
{"famindex":188,"AGE":86,"FTOTINC":359400},
{"famindex":189,"AGE":60,"FTOTINC":99000},
{"famindex":190,"AGE":26,"FTOTINC":42000},
{"famindex":191,"AGE":62,"FTOTINC":56000},
{"famindex":192,"AGE":32,"FTOTINC":78000},
{"famindex":193,"AGE":26,"FTOTINC":35000},
{"famindex":194,"AGE":50,"FTOTINC":27000},
{"famindex":195,"AGE":28,"FTOTINC":70000},
{"famindex":196,"AGE":32,"FTOTINC":38000},
{"famindex":197,"AGE":59,"FTOTINC":120000},
{"famindex":198,"AGE":64,"FTOTINC":9600},
{"famindex":199,"AGE":33,"FTOTINC":107200},
{"famindex":200,"AGE":60,"FTOTINC":70800}]
@@ -0,0 +1,203 @@
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row><famindex>1</famindex><AGE>45</AGE><FTOTINC>114000</FTOTINC></row>
<row><famindex>2</famindex><AGE>37</AGE><FTOTINC>280000</FTOTINC></row>
<row><famindex>3</famindex><AGE>60</AGE><FTOTINC>184000</FTOTINC></row>
<row><famindex>4</famindex><AGE>70</AGE><FTOTINC>250100</FTOTINC></row>
<row><famindex>5</famindex><AGE>79</AGE><FTOTINC>33040</FTOTINC></row>
<row><famindex>6</famindex><AGE>60</AGE><FTOTINC>168000</FTOTINC></row>
<row><famindex>7</famindex><AGE>56</AGE><FTOTINC>557000</FTOTINC></row>
<row><famindex>8</famindex><AGE>69</AGE><FTOTINC>84500</FTOTINC></row>
<row><famindex>9</famindex><AGE>54</AGE><FTOTINC>128800</FTOTINC></row>
<row><famindex>10</famindex><AGE>72</AGE><FTOTINC>28500</FTOTINC></row>
<row><famindex>11</famindex><AGE>26</AGE><FTOTINC>85000</FTOTINC></row>
<row><famindex>12</famindex><AGE>60</AGE><FTOTINC>52000</FTOTINC></row>
<row><famindex>13</famindex><AGE>54</AGE><FTOTINC>24000</FTOTINC></row>
<row><famindex>14</famindex><AGE>51</AGE><FTOTINC>316600</FTOTINC></row>
<row><famindex>15</famindex><AGE>35</AGE><FTOTINC>261590</FTOTINC></row>
<row><famindex>16</famindex><AGE>62</AGE><FTOTINC>41200</FTOTINC></row>
<row><famindex>17</famindex><AGE>28</AGE><FTOTINC>11000</FTOTINC></row>
<row><famindex>18</famindex><AGE>66</AGE><FTOTINC>15500</FTOTINC></row>
<row><famindex>19</famindex><AGE>75</AGE><FTOTINC>37100</FTOTINC></row>
<row><famindex>20</famindex><AGE>57</AGE><FTOTINC>137000</FTOTINC></row>
<row><famindex>21</famindex><AGE>69</AGE><FTOTINC>80000</FTOTINC></row>
<row><famindex>22</famindex><AGE>78</AGE><FTOTINC>376100</FTOTINC></row>
<row><famindex>23</famindex><AGE>47</AGE><FTOTINC>10000</FTOTINC></row>
<row><famindex>24</famindex><AGE>84</AGE><FTOTINC>31400</FTOTINC></row>
<row><famindex>25</famindex><AGE>75</AGE><FTOTINC>40000</FTOTINC></row>
<row><famindex>26</famindex><AGE>23</AGE><FTOTINC>600</FTOTINC></row>
<row><famindex>27</famindex><AGE>43</AGE><FTOTINC>59000</FTOTINC></row>
<row><famindex>28</famindex><AGE>87</AGE><FTOTINC>26000</FTOTINC></row>
<row><famindex>29</famindex><AGE>66</AGE><FTOTINC>22000</FTOTINC></row>
<row><famindex>30</famindex><AGE>62</AGE><FTOTINC>103600</FTOTINC></row>
<row><famindex>31</famindex><AGE>25</AGE><FTOTINC>18100</FTOTINC></row>
<row><famindex>32</famindex><AGE>45</AGE><FTOTINC>25000</FTOTINC></row>
<row><famindex>33</famindex><AGE>65</AGE><FTOTINC>106000</FTOTINC></row>
<row><famindex>34</famindex><AGE>63</AGE><FTOTINC>111000</FTOTINC></row>
<row><famindex>35</famindex><AGE>68</AGE><FTOTINC>13700</FTOTINC></row>
<row><famindex>36</famindex><AGE>28</AGE><FTOTINC>160400</FTOTINC></row>
<row><famindex>37</famindex><AGE>49</AGE><FTOTINC>206600</FTOTINC></row>
<row><famindex>38</famindex><AGE>58</AGE><FTOTINC>67500</FTOTINC></row>
<row><famindex>39</famindex><AGE>74</AGE><FTOTINC>115000</FTOTINC></row>
<row><famindex>40</famindex><AGE>70</AGE><FTOTINC>107800</FTOTINC></row>
<row><famindex>41</famindex><AGE>79</AGE><FTOTINC>28100</FTOTINC></row>
<row><famindex>42</famindex><AGE>22</AGE><FTOTINC>36000</FTOTINC></row>
<row><famindex>43</famindex><AGE>69</AGE><FTOTINC>92920</FTOTINC></row>
<row><famindex>44</famindex><AGE>27</AGE><FTOTINC>91000</FTOTINC></row>
<row><famindex>45</famindex><AGE>60</AGE><FTOTINC>89000</FTOTINC></row>
<row><famindex>46</famindex><AGE>69</AGE><FTOTINC>309400</FTOTINC></row>
<row><famindex>47</famindex><AGE>34</AGE><FTOTINC>151500</FTOTINC></row>
<row><famindex>48</famindex><AGE>35</AGE><FTOTINC>71000</FTOTINC></row>
<row><famindex>49</famindex><AGE>42</AGE><FTOTINC>94000</FTOTINC></row>
<row><famindex>50</famindex><AGE>64</AGE><FTOTINC>94300</FTOTINC></row>
<row><famindex>51</famindex><AGE>40</AGE><FTOTINC>148000</FTOTINC></row>
<row><famindex>52</famindex><AGE>95</AGE><FTOTINC>1400</FTOTINC></row>
<row><famindex>53</famindex><AGE>39</AGE><FTOTINC>75000</FTOTINC></row>
<row><famindex>54</famindex><AGE>63</AGE><FTOTINC>89000</FTOTINC></row>
<row><famindex>55</famindex><AGE>54</AGE><FTOTINC>317000</FTOTINC></row>
<row><famindex>56</famindex><AGE>53</AGE><FTOTINC>57200</FTOTINC></row>
<row><famindex>57</famindex><AGE>57</AGE><FTOTINC>49000</FTOTINC></row>
<row><famindex>58</famindex><AGE>44</AGE><FTOTINC>7500</FTOTINC></row>
<row><famindex>59</famindex><AGE>87</AGE><FTOTINC>50100</FTOTINC></row>
<row><famindex>60</famindex><AGE>60</AGE><FTOTINC>8000</FTOTINC></row>
<row><famindex>61</famindex><AGE>55</AGE><FTOTINC>48000</FTOTINC></row>
<row><famindex>62</famindex><AGE>32</AGE><FTOTINC>24500</FTOTINC></row>
<row><famindex>63</famindex><AGE>87</AGE><FTOTINC>25000</FTOTINC></row>
<row><famindex>64</famindex><AGE>67</AGE><FTOTINC>68200</FTOTINC></row>
<row><famindex>65</famindex><AGE>90</AGE><FTOTINC>32400</FTOTINC></row>
<row><famindex>66</famindex><AGE>23</AGE><FTOTINC>41100</FTOTINC></row>
<row><famindex>67</famindex><AGE>64</AGE><FTOTINC>77000</FTOTINC></row>
<row><famindex>68</famindex><AGE>32</AGE><FTOTINC>86700</FTOTINC></row>
<row><famindex>69</famindex><AGE>49</AGE><FTOTINC>15200</FTOTINC></row>
<row><famindex>70</famindex><AGE>54</AGE><FTOTINC>573000</FTOTINC></row>
<row><famindex>71</famindex><AGE>69</AGE><FTOTINC>69000</FTOTINC></row>
<row><famindex>72</famindex><AGE>64</AGE><FTOTINC>147000</FTOTINC></row>
<row><famindex>73</famindex><AGE>57</AGE><FTOTINC>111600</FTOTINC></row>
<row><famindex>74</famindex><AGE>53</AGE><FTOTINC>31200</FTOTINC></row>
<row><famindex>75</famindex><AGE>40</AGE><FTOTINC>151500</FTOTINC></row>
<row><famindex>76</famindex><AGE>58</AGE><FTOTINC>52300</FTOTINC></row>
<row><famindex>77</famindex><AGE>42</AGE><FTOTINC>13500</FTOTINC></row>
<row><famindex>78</famindex><AGE>75</AGE><FTOTINC>20900</FTOTINC></row>
<row><famindex>79</famindex><AGE>33</AGE><FTOTINC>133800</FTOTINC></row>
<row><famindex>80</famindex><AGE>39</AGE><FTOTINC>83000</FTOTINC></row>
<row><famindex>81</famindex><AGE>24</AGE><FTOTINC>80000</FTOTINC></row>
<row><famindex>82</famindex><AGE>59</AGE><FTOTINC>16000</FTOTINC></row>
<row><famindex>83</famindex><AGE>48</AGE><FTOTINC>60000</FTOTINC></row>
<row><famindex>84</famindex><AGE>45</AGE><FTOTINC>162200</FTOTINC></row>
<row><famindex>85</famindex><AGE>83</AGE><FTOTINC>3000</FTOTINC></row>
<row><famindex>86</famindex><AGE>76</AGE><FTOTINC>147900</FTOTINC></row>
<row><famindex>87</famindex><AGE>40</AGE><FTOTINC>78300</FTOTINC></row>
<row><famindex>88</famindex><AGE>61</AGE><FTOTINC>240000</FTOTINC></row>
<row><famindex>89</famindex><AGE>35</AGE><FTOTINC>85000</FTOTINC></row>
<row><famindex>90</famindex><AGE>46</AGE><FTOTINC>80000</FTOTINC></row>
<row><famindex>91</famindex><AGE>46</AGE><FTOTINC>112200</FTOTINC></row>
<row><famindex>92</famindex><AGE>30</AGE><FTOTINC>130000</FTOTINC></row>
<row><famindex>93</famindex><AGE>25</AGE><FTOTINC>19550</FTOTINC></row>
<row><famindex>94</famindex><AGE>65</AGE><FTOTINC>148000</FTOTINC></row>
<row><famindex>95</famindex><AGE>57</AGE><FTOTINC>129400</FTOTINC></row>
<row><famindex>96</famindex><AGE>39</AGE><FTOTINC>94000</FTOTINC></row>
<row><famindex>97</famindex><AGE>21</AGE><FTOTINC>31100</FTOTINC></row>
<row><famindex>98</famindex><AGE>56</AGE><FTOTINC>100000</FTOTINC></row>
<row><famindex>99</famindex><AGE>38</AGE><FTOTINC>40000</FTOTINC></row>
<row><famindex>100</famindex><AGE>76</AGE><FTOTINC>63310</FTOTINC></row>
<row><famindex>101</famindex><AGE>59</AGE><FTOTINC>128000</FTOTINC></row>
<row><famindex>102</famindex><AGE>25</AGE><FTOTINC>45000</FTOTINC></row>
<row><famindex>103</famindex><AGE>43</AGE><FTOTINC>136800</FTOTINC></row>
<row><famindex>104</famindex><AGE>62</AGE><FTOTINC>125000</FTOTINC></row>
<row><famindex>105</famindex><AGE>59</AGE><FTOTINC>94400</FTOTINC></row>
<row><famindex>106</famindex><AGE>81</AGE><FTOTINC>86300</FTOTINC></row>
<row><famindex>107</famindex><AGE>39</AGE><FTOTINC>150100</FTOTINC></row>
<row><famindex>108</famindex><AGE>28</AGE><FTOTINC>34000</FTOTINC></row>
<row><famindex>109</famindex><AGE>34</AGE><FTOTINC>79640</FTOTINC></row>
<row><famindex>110</famindex><AGE>60</AGE><FTOTINC>35000</FTOTINC></row>
<row><famindex>111</famindex><AGE>45</AGE><FTOTINC>337000</FTOTINC></row>
<row><famindex>112</famindex><AGE>31</AGE><FTOTINC>100000</FTOTINC></row>
<row><famindex>113</famindex><AGE>67</AGE><FTOTINC>63400</FTOTINC></row>
<row><famindex>114</famindex><AGE>64</AGE><FTOTINC>141600</FTOTINC></row>
<row><famindex>115</famindex><AGE>86</AGE><FTOTINC>30100</FTOTINC></row>
<row><famindex>116</famindex><AGE>83</AGE><FTOTINC>44300</FTOTINC></row>
<row><famindex>117</famindex><AGE>61</AGE><FTOTINC>122000</FTOTINC></row>
<row><famindex>118</famindex><AGE>58</AGE><FTOTINC>43000</FTOTINC></row>
<row><famindex>119</famindex><AGE>79</AGE><FTOTINC>104000</FTOTINC></row>
<row><famindex>120</famindex><AGE>61</AGE><FTOTINC>9600</FTOTINC></row>
<row><famindex>121</famindex><AGE>44</AGE><FTOTINC>66100</FTOTINC></row>
<row><famindex>122</famindex><AGE>26</AGE><FTOTINC>38100</FTOTINC></row>
<row><famindex>123</famindex><AGE>32</AGE><FTOTINC>103000</FTOTINC></row>
<row><famindex>124</famindex><AGE>22</AGE><FTOTINC>59000</FTOTINC></row>
<row><famindex>125</famindex><AGE>36</AGE><FTOTINC>56000</FTOTINC></row>
<row><famindex>126</famindex><AGE>84</AGE><FTOTINC>114300</FTOTINC></row>
<row><famindex>127</famindex><AGE>24</AGE><FTOTINC>68300</FTOTINC></row>
<row><famindex>128</famindex><AGE>76</AGE><FTOTINC>84600</FTOTINC></row>
<row><famindex>129</famindex><AGE>57</AGE><FTOTINC>161400</FTOTINC></row>
<row><famindex>130</famindex><AGE>46</AGE><FTOTINC>18800</FTOTINC></row>
<row><famindex>131</famindex><AGE>53</AGE><FTOTINC>45300</FTOTINC></row>
<row><famindex>132</famindex><AGE>26</AGE><FTOTINC>85000</FTOTINC></row>
<row><famindex>133</famindex><AGE>67</AGE><FTOTINC>40600</FTOTINC></row>
<row><famindex>134</famindex><AGE>36</AGE><FTOTINC>88000</FTOTINC></row>
<row><famindex>135</famindex><AGE>57</AGE><FTOTINC>134300</FTOTINC></row>
<row><famindex>136</famindex><AGE>30</AGE><FTOTINC>54000</FTOTINC></row>
<row><famindex>137</famindex><AGE>41</AGE><FTOTINC>45600</FTOTINC></row>
<row><famindex>138</famindex><AGE>74</AGE><FTOTINC>43210</FTOTINC></row>
<row><famindex>139</famindex><AGE>22</AGE><FTOTINC>10000</FTOTINC></row>
<row><famindex>140</famindex><AGE>51</AGE><FTOTINC>160000</FTOTINC></row>
<row><famindex>141</famindex><AGE>51</AGE><FTOTINC>130400</FTOTINC></row>
<row><famindex>142</famindex><AGE>47</AGE><FTOTINC>45000</FTOTINC></row>
<row><famindex>143</famindex><AGE>25</AGE><FTOTINC>34000</FTOTINC></row>
<row><famindex>144</famindex><AGE>37</AGE><FTOTINC>78000</FTOTINC></row>
<row><famindex>145</famindex><AGE>62</AGE><FTOTINC>18500</FTOTINC></row>
<row><famindex>146</famindex><AGE>44</AGE><FTOTINC>169000</FTOTINC></row>
<row><famindex>147</famindex><AGE>41</AGE><FTOTINC>86000</FTOTINC></row>
<row><famindex>148</famindex><AGE>66</AGE><FTOTINC>446000</FTOTINC></row>
<row><famindex>149</famindex><AGE>40</AGE><FTOTINC>55000</FTOTINC></row>
<row><famindex>150</famindex><AGE>63</AGE><FTOTINC>41400</FTOTINC></row>
<row><famindex>151</famindex><AGE>41</AGE><FTOTINC>29000</FTOTINC></row>
<row><famindex>152</famindex><AGE>22</AGE><FTOTINC>38000</FTOTINC></row>
<row><famindex>153</famindex><AGE>50</AGE><FTOTINC>83460</FTOTINC></row>
<row><famindex>154</famindex><AGE>69</AGE><FTOTINC>16400</FTOTINC></row>
<row><famindex>155</famindex><AGE>29</AGE><FTOTINC>181600</FTOTINC></row>
<row><famindex>156</famindex><AGE>70</AGE><FTOTINC>23800</FTOTINC></row>
<row><famindex>157</famindex><AGE>65</AGE><FTOTINC>132200</FTOTINC></row>
<row><famindex>158</famindex><AGE>32</AGE><FTOTINC>217000</FTOTINC></row>
<row><famindex>159</famindex><AGE>48</AGE><FTOTINC>32800</FTOTINC></row>
<row><famindex>160</famindex><AGE>47</AGE><FTOTINC>55000</FTOTINC></row>
<row><famindex>161</famindex><AGE>60</AGE><FTOTINC>88000</FTOTINC></row>
<row><famindex>162</famindex><AGE>75</AGE><FTOTINC>46300</FTOTINC></row>
<row><famindex>163</famindex><AGE>55</AGE><FTOTINC>31500</FTOTINC></row>
<row><famindex>164</famindex><AGE>73</AGE><FTOTINC>8100</FTOTINC></row>
<row><famindex>165</famindex><AGE>40</AGE><FTOTINC>45000</FTOTINC></row>
<row><famindex>166</famindex><AGE>65</AGE><FTOTINC>47000</FTOTINC></row>
<row><famindex>167</famindex><AGE>84</AGE><FTOTINC>11700</FTOTINC></row>
<row><famindex>168</famindex><AGE>71</AGE><FTOTINC>9800</FTOTINC></row>
<row><famindex>169</famindex><AGE>83</AGE><FTOTINC>55400</FTOTINC></row>
<row><famindex>170</famindex><AGE>51</AGE><FTOTINC>77000</FTOTINC></row>
<row><famindex>171</famindex><AGE>40</AGE><FTOTINC>34100</FTOTINC></row>
<row><famindex>172</famindex><AGE>39</AGE><FTOTINC>130000</FTOTINC></row>
<row><famindex>173</famindex><AGE>27</AGE><FTOTINC>82000</FTOTINC></row>
<row><famindex>174</famindex><AGE>36</AGE><FTOTINC>54000</FTOTINC></row>
<row><famindex>175</famindex><AGE>81</AGE><FTOTINC>29630</FTOTINC></row>
<row><famindex>176</famindex><AGE>35</AGE><FTOTINC>93800</FTOTINC></row>
<row><famindex>177</famindex><AGE>59</AGE><FTOTINC>122900</FTOTINC></row>
<row><famindex>178</famindex><AGE>26</AGE><FTOTINC>65000</FTOTINC></row>
<row><famindex>179</famindex><AGE>66</AGE><FTOTINC>108000</FTOTINC></row>
<row><famindex>180</famindex><AGE>46</AGE><FTOTINC>2500</FTOTINC></row>
<row><famindex>181</famindex><AGE>28</AGE><FTOTINC>42000</FTOTINC></row>
<row><famindex>182</famindex><AGE>25</AGE><FTOTINC>77000</FTOTINC></row>
<row><famindex>183</famindex><AGE>66</AGE><FTOTINC>9000</FTOTINC></row>
<row><famindex>184</famindex><AGE>58</AGE><FTOTINC>80500</FTOTINC></row>
<row><famindex>185</famindex><AGE>56</AGE><FTOTINC>84000</FTOTINC></row>
<row><famindex>186</famindex><AGE>61</AGE><FTOTINC>85000</FTOTINC></row>
<row><famindex>187</famindex><AGE>32</AGE><FTOTINC>156000</FTOTINC></row>
<row><famindex>188</famindex><AGE>86</AGE><FTOTINC>359400</FTOTINC></row>
<row><famindex>189</famindex><AGE>60</AGE><FTOTINC>99000</FTOTINC></row>
<row><famindex>190</famindex><AGE>26</AGE><FTOTINC>42000</FTOTINC></row>
<row><famindex>191</famindex><AGE>62</AGE><FTOTINC>56000</FTOTINC></row>
<row><famindex>192</famindex><AGE>32</AGE><FTOTINC>78000</FTOTINC></row>
<row><famindex>193</famindex><AGE>26</AGE><FTOTINC>35000</FTOTINC></row>
<row><famindex>194</famindex><AGE>50</AGE><FTOTINC>27000</FTOTINC></row>
<row><famindex>195</famindex><AGE>28</AGE><FTOTINC>70000</FTOTINC></row>
<row><famindex>196</famindex><AGE>32</AGE><FTOTINC>38000</FTOTINC></row>
<row><famindex>197</famindex><AGE>59</AGE><FTOTINC>120000</FTOTINC></row>
<row><famindex>198</famindex><AGE>64</AGE><FTOTINC>9600</FTOTINC></row>
<row><famindex>199</famindex><AGE>33</AGE><FTOTINC>107200</FTOTINC></row>
<row><famindex>200</famindex><AGE>60</AGE><FTOTINC>70800</FTOTINC></row>
</rows>
@@ -0,0 +1,201 @@
famindex,AGE,FTOTINC
1,45,114000
2,37,280000
3,60,184000
4,70,250100
5,79,33040
6,60,168000
7,56,557000
8,69,84500
9,54,128800
10,72,28500
11,26,85000
12,60,52000
13,54,24000
14,51,316600
15,35,261590
16,62,41200
17,28,11000
18,66,15500
19,75,37100
20,57,137000
21,69,80000
22,78,376100
23,47,10000
24,84,31400
25,75,40000
26,23,600
27,43,59000
28,87,26000
29,66,22000
30,62,103600
31,25,18100
32,45,25000
33,65,106000
34,63,111000
35,68,13700
36,28,160400
37,49,206600
38,58,67500
39,74,115000
40,70,107800
41,79,28100
42,22,36000
43,69,92920
44,27,91000
45,60,89000
46,69,309400
47,34,151500
48,35,71000
49,42,94000
50,64,94300
51,40,148000
52,95,1400
53,39,75000
54,63,89000
55,54,317000
56,53,57200
57,57,49000
58,44,7500
59,87,50100
60,60,8000
61,55,48000
62,32,24500
63,87,25000
64,67,68200
65,90,32400
66,23,41100
67,64,77000
68,32,86700
69,49,15200
70,54,573000
71,69,69000
72,64,147000
73,57,111600
74,53,31200
75,40,151500
76,58,52300
77,42,13500
78,75,20900
79,33,133800
80,39,83000
81,24,80000
82,59,16000
83,48,60000
84,45,162200
85,83,3000
86,76,147900
87,40,78300
88,61,240000
89,35,85000
90,46,80000
91,46,112200
92,30,130000
93,25,19550
94,65,148000
95,57,129400
96,39,94000
97,21,31100
98,56,100000
99,38,40000
100,76,63310
101,59,128000
102,25,45000
103,43,136800
104,62,125000
105,59,94400
106,81,86300
107,39,150100
108,28,34000
109,34,79640
110,60,35000
111,45,337000
112,31,100000
113,67,63400
114,64,141600
115,86,30100
116,83,44300
117,61,122000
118,58,43000
119,79,104000
120,61,9600
121,44,66100
122,26,38100
123,32,103000
124,22,59000
125,36,56000
126,84,114300
127,24,68300
128,76,84600
129,57,161400
130,46,18800
131,53,45300
132,26,85000
133,67,40600
134,36,88000
135,57,134300
136,30,54000
137,41,45600
138,74,43210
139,22,10000
140,51,160000
141,51,130400
142,47,45000
143,25,34000
144,37,78000
145,62,18500
146,44,169000
147,41,86000
148,66,446000
149,40,55000
150,63,41400
151,41,29000
152,22,38000
153,50,83460
154,69,16400
155,29,181600
156,70,23800
157,65,132200
158,32,217000
159,48,32800
160,47,55000
161,60,88000
162,75,46300
163,55,31500
164,73,8100
165,40,45000
166,65,47000
167,84,11700
168,71,9800
169,83,55400
170,51,77000
171,40,34100
172,39,130000
173,27,82000
174,36,54000
175,81,29630
176,35,93800
177,59,122900
178,26,65000
179,66,108000
180,46,2500
181,28,42000
182,25,77000
183,66,9000
184,58,80500
185,56,84000
186,61,85000
187,32,156000
188,86,359400
189,60,99000
190,26,42000
191,62,56000
192,32,78000
193,26,35000
194,50,27000
195,28,70000
196,32,38000
197,59,120000
198,64,9600
199,33,107200
200,60,70800
1 famindex AGE FTOTINC
2 1 45 114000
3 2 37 280000
4 3 60 184000
5 4 70 250100
6 5 79 33040
7 6 60 168000
8 7 56 557000
9 8 69 84500
10 9 54 128800
11 10 72 28500
12 11 26 85000
13 12 60 52000
14 13 54 24000
15 14 51 316600
16 15 35 261590
17 16 62 41200
18 17 28 11000
19 18 66 15500
20 19 75 37100
21 20 57 137000
22 21 69 80000
23 22 78 376100
24 23 47 10000
25 24 84 31400
26 25 75 40000
27 26 23 600
28 27 43 59000
29 28 87 26000
30 29 66 22000
31 30 62 103600
32 31 25 18100
33 32 45 25000
34 33 65 106000
35 34 63 111000
36 35 68 13700
37 36 28 160400
38 37 49 206600
39 38 58 67500
40 39 74 115000
41 40 70 107800
42 41 79 28100
43 42 22 36000
44 43 69 92920
45 44 27 91000
46 45 60 89000
47 46 69 309400
48 47 34 151500
49 48 35 71000
50 49 42 94000
51 50 64 94300
52 51 40 148000
53 52 95 1400
54 53 39 75000
55 54 63 89000
56 55 54 317000
57 56 53 57200
58 57 57 49000
59 58 44 7500
60 59 87 50100
61 60 60 8000
62 61 55 48000
63 62 32 24500
64 63 87 25000
65 64 67 68200
66 65 90 32400
67 66 23 41100
68 67 64 77000
69 68 32 86700
70 69 49 15200
71 70 54 573000
72 71 69 69000
73 72 64 147000
74 73 57 111600
75 74 53 31200
76 75 40 151500
77 76 58 52300
78 77 42 13500
79 78 75 20900
80 79 33 133800
81 80 39 83000
82 81 24 80000
83 82 59 16000
84 83 48 60000
85 84 45 162200
86 85 83 3000
87 86 76 147900
88 87 40 78300
89 88 61 240000
90 89 35 85000
91 90 46 80000
92 91 46 112200
93 92 30 130000
94 93 25 19550
95 94 65 148000
96 95 57 129400
97 96 39 94000
98 97 21 31100
99 98 56 100000
100 99 38 40000
101 100 76 63310
102 101 59 128000
103 102 25 45000
104 103 43 136800
105 104 62 125000
106 105 59 94400
107 106 81 86300
108 107 39 150100
109 108 28 34000
110 109 34 79640
111 110 60 35000
112 111 45 337000
113 112 31 100000
114 113 67 63400
115 114 64 141600
116 115 86 30100
117 116 83 44300
118 117 61 122000
119 118 58 43000
120 119 79 104000
121 120 61 9600
122 121 44 66100
123 122 26 38100
124 123 32 103000
125 124 22 59000
126 125 36 56000
127 126 84 114300
128 127 24 68300
129 128 76 84600
130 129 57 161400
131 130 46 18800
132 131 53 45300
133 132 26 85000
134 133 67 40600
135 134 36 88000
136 135 57 134300
137 136 30 54000
138 137 41 45600
139 138 74 43210
140 139 22 10000
141 140 51 160000
142 141 51 130400
143 142 47 45000
144 143 25 34000
145 144 37 78000
146 145 62 18500
147 146 44 169000
148 147 41 86000
149 148 66 446000
150 149 40 55000
151 150 63 41400
152 151 41 29000
153 152 22 38000
154 153 50 83460
155 154 69 16400
156 155 29 181600
157 156 70 23800
158 157 65 132200
159 158 32 217000
160 159 48 32800
161 160 47 55000
162 161 60 88000
163 162 75 46300
164 163 55 31500
165 164 73 8100
166 165 40 45000
167 166 65 47000
168 167 84 11700
169 168 71 9800
170 169 83 55400
171 170 51 77000
172 171 40 34100
173 172 39 130000
174 173 27 82000
175 174 36 54000
176 175 81 29630
177 176 35 93800
178 177 59 122900
179 178 26 65000
180 179 66 108000
181 180 46 2500
182 181 28 42000
183 182 25 77000
184 183 66 9000
185 184 58 80500
186 185 56 84000
187 186 61 85000
188 187 32 156000
189 188 86 359400
190 189 60 99000
191 190 26 42000
192 191 62 56000
193 192 32 78000
194 193 26 35000
195 194 50 27000
196 195 28 70000
197 196 32 38000
198 197 59 120000
199 198 64 9600
200 199 33 107200
201 200 60 70800
@@ -0,0 +1,26 @@
import numpy as np
import pandas as pd
# Load CSV
people = pd.read_csv('income-scraped.csv')
# See first rows.
people.head()
# Subset.
over40 = people[people.AGE > 40]
over40.head()
# New column.
people['isover40'] = people['AGE'] > 40
people['agegrp'] = (people['AGE'] / 10).apply(np.floor) * 10
# Median.
people['FTOTINC'].median()
# Grouped median.
people.groupby(['isover40'])['FTOTINC'].median()
people.groupby(['agegrp'])['FTOTINC'].median()
@@ -0,0 +1,34 @@
from bs4 import BeautifulSoup
import urllib.request
base_url = 'http://book.flowingdata.com/vt2/ch3/scraping/'
# Header
print("famindex,AGE,FTOTINC")
for i in range(1, 21):
# Page URL, based on page number
page_url = base_url + 'family-income-page'+str(i)+'.html'
# Open the page
req = urllib.request.Request(page_url)
with urllib.request.urlopen(req) as response:
# Save page contents.
the_page = response.read()
# Parse.
soup = BeautifulSoup(the_page, features="html.parser")
# Get the table rows
rows = soup.find_all("tr")
# Save each row of data
for j in range(1, len(rows)):
# Get the cells in a row
cells = rows[j].findAll("td")
# Comma-delimited row
print(cells[0].string + "," + cells[1].string + "," + cells[2].string)
@@ -0,0 +1,201 @@
famindex,AGE,FTOTINC
1,45,114000
2,37,280000
3,60,184000
4,70,250100
5,79,33040
6,60,168000
7,56,557000
8,69,84500
9,54,128800
10,72,28500
11,26,85000
12,60,52000
13,54,24000
14,51,316600
15,35,261590
16,62,41200
17,28,11000
18,66,15500
19,75,37100
20,57,137000
21,69,80000
22,78,376100
23,47,10000
24,84,31400
25,75,40000
26,23,600
27,43,59000
28,87,26000
29,66,22000
30,62,103600
31,25,18100
32,45,25000
33,65,106000
34,63,111000
35,68,13700
36,28,160400
37,49,206600
38,58,67500
39,74,115000
40,70,107800
41,79,28100
42,22,36000
43,69,92920
44,27,91000
45,60,89000
46,69,309400
47,34,151500
48,35,71000
49,42,94000
50,64,94300
51,40,148000
52,95,1400
53,39,75000
54,63,89000
55,54,317000
56,53,57200
57,57,49000
58,44,7500
59,87,50100
60,60,8000
61,55,48000
62,32,24500
63,87,25000
64,67,68200
65,90,32400
66,23,41100
67,64,77000
68,32,86700
69,49,15200
70,54,573000
71,69,69000
72,64,147000
73,57,111600
74,53,31200
75,40,151500
76,58,52300
77,42,13500
78,75,20900
79,33,133800
80,39,83000
81,24,80000
82,59,16000
83,48,60000
84,45,162200
85,83,3000
86,76,147900
87,40,78300
88,61,240000
89,35,85000
90,46,80000
91,46,112200
92,30,130000
93,25,19550
94,65,148000
95,57,129400
96,39,94000
97,21,31100
98,56,100000
99,38,40000
100,76,63310
101,59,128000
102,25,45000
103,43,136800
104,62,125000
105,59,94400
106,81,86300
107,39,150100
108,28,34000
109,34,79640
110,60,35000
111,45,337000
112,31,100000
113,67,63400
114,64,141600
115,86,30100
116,83,44300
117,61,122000
118,58,43000
119,79,104000
120,61,9600
121,44,66100
122,26,38100
123,32,103000
124,22,59000
125,36,56000
126,84,114300
127,24,68300
128,76,84600
129,57,161400
130,46,18800
131,53,45300
132,26,85000
133,67,40600
134,36,88000
135,57,134300
136,30,54000
137,41,45600
138,74,43210
139,22,10000
140,51,160000
141,51,130400
142,47,45000
143,25,34000
144,37,78000
145,62,18500
146,44,169000
147,41,86000
148,66,446000
149,40,55000
150,63,41400
151,41,29000
152,22,38000
153,50,83460
154,69,16400
155,29,181600
156,70,23800
157,65,132200
158,32,217000
159,48,32800
160,47,55000
161,60,88000
162,75,46300
163,55,31500
164,73,8100
165,40,45000
166,65,47000
167,84,11700
168,71,9800
169,83,55400
170,51,77000
171,40,34100
172,39,130000
173,27,82000
174,36,54000
175,81,29630
176,35,93800
177,59,122900
178,26,65000
179,66,108000
180,46,2500
181,28,42000
182,25,77000
183,66,9000
184,58,80500
185,56,84000
186,61,85000
187,32,156000
188,86,359400
189,60,99000
190,26,42000
191,62,56000
192,32,78000
193,26,35000
194,50,27000
195,28,70000
196,32,38000
197,59,120000
198,64,9600
199,33,107200
200,60,70800
1 famindex AGE FTOTINC
2 1 45 114000
3 2 37 280000
4 3 60 184000
5 4 70 250100
6 5 79 33040
7 6 60 168000
8 7 56 557000
9 8 69 84500
10 9 54 128800
11 10 72 28500
12 11 26 85000
13 12 60 52000
14 13 54 24000
15 14 51 316600
16 15 35 261590
17 16 62 41200
18 17 28 11000
19 18 66 15500
20 19 75 37100
21 20 57 137000
22 21 69 80000
23 22 78 376100
24 23 47 10000
25 24 84 31400
26 25 75 40000
27 26 23 600
28 27 43 59000
29 28 87 26000
30 29 66 22000
31 30 62 103600
32 31 25 18100
33 32 45 25000
34 33 65 106000
35 34 63 111000
36 35 68 13700
37 36 28 160400
38 37 49 206600
39 38 58 67500
40 39 74 115000
41 40 70 107800
42 41 79 28100
43 42 22 36000
44 43 69 92920
45 44 27 91000
46 45 60 89000
47 46 69 309400
48 47 34 151500
49 48 35 71000
50 49 42 94000
51 50 64 94300
52 51 40 148000
53 52 95 1400
54 53 39 75000
55 54 63 89000
56 55 54 317000
57 56 53 57200
58 57 57 49000
59 58 44 7500
60 59 87 50100
61 60 60 8000
62 61 55 48000
63 62 32 24500
64 63 87 25000
65 64 67 68200
66 65 90 32400
67 66 23 41100
68 67 64 77000
69 68 32 86700
70 69 49 15200
71 70 54 573000
72 71 69 69000
73 72 64 147000
74 73 57 111600
75 74 53 31200
76 75 40 151500
77 76 58 52300
78 77 42 13500
79 78 75 20900
80 79 33 133800
81 80 39 83000
82 81 24 80000
83 82 59 16000
84 83 48 60000
85 84 45 162200
86 85 83 3000
87 86 76 147900
88 87 40 78300
89 88 61 240000
90 89 35 85000
91 90 46 80000
92 91 46 112200
93 92 30 130000
94 93 25 19550
95 94 65 148000
96 95 57 129400
97 96 39 94000
98 97 21 31100
99 98 56 100000
100 99 38 40000
101 100 76 63310
102 101 59 128000
103 102 25 45000
104 103 43 136800
105 104 62 125000
106 105 59 94400
107 106 81 86300
108 107 39 150100
109 108 28 34000
110 109 34 79640
111 110 60 35000
112 111 45 337000
113 112 31 100000
114 113 67 63400
115 114 64 141600
116 115 86 30100
117 116 83 44300
118 117 61 122000
119 118 58 43000
120 119 79 104000
121 120 61 9600
122 121 44 66100
123 122 26 38100
124 123 32 103000
125 124 22 59000
126 125 36 56000
127 126 84 114300
128 127 24 68300
129 128 76 84600
130 129 57 161400
131 130 46 18800
132 131 53 45300
133 132 26 85000
134 133 67 40600
135 134 36 88000
136 135 57 134300
137 136 30 54000
138 137 41 45600
139 138 74 43210
140 139 22 10000
141 140 51 160000
142 141 51 130400
143 142 47 45000
144 143 25 34000
145 144 37 78000
146 145 62 18500
147 146 44 169000
148 147 41 86000
149 148 66 446000
150 149 40 55000
151 150 63 41400
152 151 41 29000
153 152 22 38000
154 153 50 83460
155 154 69 16400
156 155 29 181600
157 156 70 23800
158 157 65 132200
159 158 32 217000
160 159 48 32800
161 160 47 55000
162 161 60 88000
163 162 75 46300
164 163 55 31500
165 164 73 8100
166 165 40 45000
167 166 65 47000
168 167 84 11700
169 168 71 9800
170 169 83 55400
171 170 51 77000
172 171 40 34100
173 172 39 130000
174 173 27 82000
175 174 36 54000
176 175 81 29630
177 176 35 93800
178 177 59 122900
179 178 26 65000
180 179 66 108000
181 180 46 2500
182 181 28 42000
183 182 25 77000
184 183 66 9000
185 184 58 80500
186 185 56 84000
187 186 61 85000
188 187 32 156000
189 188 86 359400
190 189 60 99000
191 190 26 42000
192 191 62 56000
193 192 32 78000
194 193 26 35000
195 194 50 27000
196 195 28 70000
197 196 32 38000
198 197 59 120000
199 198 64 9600
200 199 33 107200
201 200 60 70800