├── .gitattributes ├── .gitignore ├── LICENSE ├── PerceptionAndVisualization ├── Automobile price data.csv ├── PerceptionAndVisualization.ipynb ├── img │ ├── Cleveland.jpg │ ├── Tufte.jpg │ ├── Tukey.jpg │ └── logo.288981a8dfa8.png └── sunspots.csv ├── PlottingWithPytonTools ├── Automobile price data.csv ├── LearningDataVisualization.ipynb └── img │ ├── Cleveland.jpg │ ├── Tufte.jpg │ └── Tukey.jpg └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Windows Installer files 12 | *.cab 13 | *.msi 14 | *.msm 15 | *.msp 16 | 17 | # Windows shortcuts 18 | *.lnk 19 | 20 | # ========================= 21 | # Operating System Files 22 | # ========================= 23 | 24 | # OSX 25 | # ========================= 26 | 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear in the root of a volume 35 | .DocumentRevisions-V100 36 | .fseventsd 37 | .Spotlight-V100 38 | .TemporaryItems 39 | .Trashes 40 | .VolumeIcon.icns 41 | 42 | # Directories potentially created on remote AFP share 43 | .AppleDB 44 | .AppleDesktop 45 | Network Trash Folder 46 | Temporary Items 47 | .apdisk 48 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 2, June 1991 3 | 4 | Copyright (C) 1989, 1991 Free Software Foundation, Inc., 5 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 6 | Everyone is permitted to copy and distribute verbatim copies 7 | of this license document, but changing it is not allowed. 8 | 9 | Preamble 10 | 11 | The licenses for most software are designed to take away your 12 | freedom to share and change it. By contrast, the GNU General Public 13 | License is intended to guarantee your freedom to share and change free 14 | software--to make sure the software is free for all its users. This 15 | General Public License applies to most of the Free Software 16 | Foundation's software and to any other program whose authors commit to 17 | using it. (Some other Free Software Foundation software is covered by 18 | the GNU Lesser General Public License instead.) You can apply it to 19 | your programs, too. 20 | 21 | When we speak of free software, we are referring to freedom, not 22 | price. Our General Public Licenses are designed to make sure that you 23 | have the freedom to distribute copies of free software (and charge for 24 | this service if you wish), that you receive source code or can get it 25 | if you want it, that you can change the software or use pieces of it 26 | in new free programs; and that you know you can do these things. 27 | 28 | To protect your rights, we need to make restrictions that forbid 29 | anyone to deny you these rights or to ask you to surrender the rights. 30 | These restrictions translate to certain responsibilities for you if you 31 | distribute copies of the software, or if you modify it. 32 | 33 | For example, if you distribute copies of such a program, whether 34 | gratis or for a fee, you must give the recipients all the rights that 35 | you have. You must make sure that they, too, receive or can get the 36 | source code. And you must show them these terms so they know their 37 | rights. 38 | 39 | We protect your rights with two steps: (1) copyright the software, and 40 | (2) offer you this license which gives you legal permission to copy, 41 | distribute and/or modify the software. 42 | 43 | Also, for each author's protection and ours, we want to make certain 44 | that everyone understands that there is no warranty for this free 45 | software. If the software is modified by someone else and passed on, we 46 | want its recipients to know that what they have is not the original, so 47 | that any problems introduced by others will not reflect on the original 48 | authors' reputations. 49 | 50 | Finally, any free program is threatened constantly by software 51 | patents. We wish to avoid the danger that redistributors of a free 52 | program will individually obtain patent licenses, in effect making the 53 | program proprietary. To prevent this, we have made it clear that any 54 | patent must be licensed for everyone's free use or not licensed at all. 55 | 56 | The precise terms and conditions for copying, distribution and 57 | modification follow. 58 | 59 | GNU GENERAL PUBLIC LICENSE 60 | TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 61 | 62 | 0. This License applies to any program or other work which contains 63 | a notice placed by the copyright holder saying it may be distributed 64 | under the terms of this General Public License. The "Program", below, 65 | refers to any such program or work, and a "work based on the Program" 66 | means either the Program or any derivative work under copyright law: 67 | that is to say, a work containing the Program or a portion of it, 68 | either verbatim or with modifications and/or translated into another 69 | language. (Hereinafter, translation is included without limitation in 70 | the term "modification".) Each licensee is addressed as "you". 71 | 72 | Activities other than copying, distribution and modification are not 73 | covered by this License; they are outside its scope. The act of 74 | running the Program is not restricted, and the output from the Program 75 | is covered only if its contents constitute a work based on the 76 | Program (independent of having been made by running the Program). 77 | Whether that is true depends on what the Program does. 78 | 79 | 1. You may copy and distribute verbatim copies of the Program's 80 | source code as you receive it, in any medium, provided that you 81 | conspicuously and appropriately publish on each copy an appropriate 82 | copyright notice and disclaimer of warranty; keep intact all the 83 | notices that refer to this License and to the absence of any warranty; 84 | and give any other recipients of the Program a copy of this License 85 | along with the Program. 86 | 87 | You may charge a fee for the physical act of transferring a copy, and 88 | you may at your option offer warranty protection in exchange for a fee. 89 | 90 | 2. You may modify your copy or copies of the Program or any portion 91 | of it, thus forming a work based on the Program, and copy and 92 | distribute such modifications or work under the terms of Section 1 93 | above, provided that you also meet all of these conditions: 94 | 95 | a) You must cause the modified files to carry prominent notices 96 | stating that you changed the files and the date of any change. 97 | 98 | b) You must cause any work that you distribute or publish, that in 99 | whole or in part contains or is derived from the Program or any 100 | part thereof, to be licensed as a whole at no charge to all third 101 | parties under the terms of this License. 102 | 103 | c) If the modified program normally reads commands interactively 104 | when run, you must cause it, when started running for such 105 | interactive use in the most ordinary way, to print or display an 106 | announcement including an appropriate copyright notice and a 107 | notice that there is no warranty (or else, saying that you provide 108 | a warranty) and that users may redistribute the program under 109 | these conditions, and telling the user how to view a copy of this 110 | License. (Exception: if the Program itself is interactive but 111 | does not normally print such an announcement, your work based on 112 | the Program is not required to print an announcement.) 113 | 114 | These requirements apply to the modified work as a whole. If 115 | identifiable sections of that work are not derived from the Program, 116 | and can be reasonably considered independent and separate works in 117 | themselves, then this License, and its terms, do not apply to those 118 | sections when you distribute them as separate works. But when you 119 | distribute the same sections as part of a whole which is a work based 120 | on the Program, the distribution of the whole must be on the terms of 121 | this License, whose permissions for other licensees extend to the 122 | entire whole, and thus to each and every part regardless of who wrote it. 123 | 124 | Thus, it is not the intent of this section to claim rights or contest 125 | your rights to work written entirely by you; rather, the intent is to 126 | exercise the right to control the distribution of derivative or 127 | collective works based on the Program. 128 | 129 | In addition, mere aggregation of another work not based on the Program 130 | with the Program (or with a work based on the Program) on a volume of 131 | a storage or distribution medium does not bring the other work under 132 | the scope of this License. 133 | 134 | 3. You may copy and distribute the Program (or a work based on it, 135 | under Section 2) in object code or executable form under the terms of 136 | Sections 1 and 2 above provided that you also do one of the following: 137 | 138 | a) Accompany it with the complete corresponding machine-readable 139 | source code, which must be distributed under the terms of Sections 140 | 1 and 2 above on a medium customarily used for software interchange; or, 141 | 142 | b) Accompany it with a written offer, valid for at least three 143 | years, to give any third party, for a charge no more than your 144 | cost of physically performing source distribution, a complete 145 | machine-readable copy of the corresponding source code, to be 146 | distributed under the terms of Sections 1 and 2 above on a medium 147 | customarily used for software interchange; or, 148 | 149 | c) Accompany it with the information you received as to the offer 150 | to distribute corresponding source code. (This alternative is 151 | allowed only for noncommercial distribution and only if you 152 | received the program in object code or executable form with such 153 | an offer, in accord with Subsection b above.) 154 | 155 | The source code for a work means the preferred form of the work for 156 | making modifications to it. For an executable work, complete source 157 | code means all the source code for all modules it contains, plus any 158 | associated interface definition files, plus the scripts used to 159 | control compilation and installation of the executable. However, as a 160 | special exception, the source code distributed need not include 161 | anything that is normally distributed (in either source or binary 162 | form) with the major components (compiler, kernel, and so on) of the 163 | operating system on which the executable runs, unless that component 164 | itself accompanies the executable. 165 | 166 | If distribution of executable or object code is made by offering 167 | access to copy from a designated place, then offering equivalent 168 | access to copy the source code from the same place counts as 169 | distribution of the source code, even though third parties are not 170 | compelled to copy the source along with the object code. 171 | 172 | 4. You may not copy, modify, sublicense, or distribute the Program 173 | except as expressly provided under this License. Any attempt 174 | otherwise to copy, modify, sublicense or distribute the Program is 175 | void, and will automatically terminate your rights under this License. 176 | However, parties who have received copies, or rights, from you under 177 | this License will not have their licenses terminated so long as such 178 | parties remain in full compliance. 179 | 180 | 5. You are not required to accept this License, since you have not 181 | signed it. However, nothing else grants you permission to modify or 182 | distribute the Program or its derivative works. These actions are 183 | prohibited by law if you do not accept this License. Therefore, by 184 | modifying or distributing the Program (or any work based on the 185 | Program), you indicate your acceptance of this License to do so, and 186 | all its terms and conditions for copying, distributing or modifying 187 | the Program or works based on it. 188 | 189 | 6. Each time you redistribute the Program (or any work based on the 190 | Program), the recipient automatically receives a license from the 191 | original licensor to copy, distribute or modify the Program subject to 192 | these terms and conditions. You may not impose any further 193 | restrictions on the recipients' exercise of the rights granted herein. 194 | You are not responsible for enforcing compliance by third parties to 195 | this License. 196 | 197 | 7. If, as a consequence of a court judgment or allegation of patent 198 | infringement or for any other reason (not limited to patent issues), 199 | conditions are imposed on you (whether by court order, agreement or 200 | otherwise) that contradict the conditions of this License, they do not 201 | excuse you from the conditions of this License. If you cannot 202 | distribute so as to satisfy simultaneously your obligations under this 203 | License and any other pertinent obligations, then as a consequence you 204 | may not distribute the Program at all. For example, if a patent 205 | license would not permit royalty-free redistribution of the Program by 206 | all those who receive copies directly or indirectly through you, then 207 | the only way you could satisfy both it and this License would be to 208 | refrain entirely from distribution of the Program. 209 | 210 | If any portion of this section is held invalid or unenforceable under 211 | any particular circumstance, the balance of the section is intended to 212 | apply and the section as a whole is intended to apply in other 213 | circumstances. 214 | 215 | It is not the purpose of this section to induce you to infringe any 216 | patents or other property right claims or to contest validity of any 217 | such claims; this section has the sole purpose of protecting the 218 | integrity of the free software distribution system, which is 219 | implemented by public license practices. Many people have made 220 | generous contributions to the wide range of software distributed 221 | through that system in reliance on consistent application of that 222 | system; it is up to the author/donor to decide if he or she is willing 223 | to distribute software through any other system and a licensee cannot 224 | impose that choice. 225 | 226 | This section is intended to make thoroughly clear what is believed to 227 | be a consequence of the rest of this License. 228 | 229 | 8. If the distribution and/or use of the Program is restricted in 230 | certain countries either by patents or by copyrighted interfaces, the 231 | original copyright holder who places the Program under this License 232 | may add an explicit geographical distribution limitation excluding 233 | those countries, so that distribution is permitted only in or among 234 | countries not thus excluded. In such case, this License incorporates 235 | the limitation as if written in the body of this License. 236 | 237 | 9. The Free Software Foundation may publish revised and/or new versions 238 | of the General Public License from time to time. Such new versions will 239 | be similar in spirit to the present version, but may differ in detail to 240 | address new problems or concerns. 241 | 242 | Each version is given a distinguishing version number. If the Program 243 | specifies a version number of this License which applies to it and "any 244 | later version", you have the option of following the terms and conditions 245 | either of that version or of any later version published by the Free 246 | Software Foundation. If the Program does not specify a version number of 247 | this License, you may choose any version ever published by the Free Software 248 | Foundation. 249 | 250 | 10. If you wish to incorporate parts of the Program into other free 251 | programs whose distribution conditions are different, write to the author 252 | to ask for permission. For software which is copyrighted by the Free 253 | Software Foundation, write to the Free Software Foundation; we sometimes 254 | make exceptions for this. Our decision will be guided by the two goals 255 | of preserving the free status of all derivatives of our free software and 256 | of promoting the sharing and reuse of software generally. 257 | 258 | NO WARRANTY 259 | 260 | 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 261 | FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 262 | OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 263 | PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 264 | OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 265 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 266 | TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 267 | PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 268 | REPAIR OR CORRECTION. 269 | 270 | 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 271 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 272 | REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 273 | INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 274 | OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 275 | TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 276 | YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 277 | PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 278 | POSSIBILITY OF SUCH DAMAGES. 279 | 280 | END OF TERMS AND CONDITIONS 281 | 282 | How to Apply These Terms to Your New Programs 283 | 284 | If you develop a new program, and you want it to be of the greatest 285 | possible use to the public, the best way to achieve this is to make it 286 | free software which everyone can redistribute and change under these terms. 287 | 288 | To do so, attach the following notices to the program. It is safest 289 | to attach them to the start of each source file to most effectively 290 | convey the exclusion of warranty; and each file should have at least 291 | the "copyright" line and a pointer to where the full notice is found. 292 | 293 | {description} 294 | Copyright (C) {year} {fullname} 295 | 296 | This program is free software; you can redistribute it and/or modify 297 | it under the terms of the GNU General Public License as published by 298 | the Free Software Foundation; either version 2 of the License, or 299 | (at your option) any later version. 300 | 301 | This program is distributed in the hope that it will be useful, 302 | but WITHOUT ANY WARRANTY; without even the implied warranty of 303 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 304 | GNU General Public License for more details. 305 | 306 | You should have received a copy of the GNU General Public License along 307 | with this program; if not, write to the Free Software Foundation, Inc., 308 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 309 | 310 | Also add information on how to contact you by electronic and paper mail. 311 | 312 | If the program is interactive, make it output a short notice like this 313 | when it starts in an interactive mode: 314 | 315 | Gnomovision version 69, Copyright (C) year name of author 316 | Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 317 | This is free software, and you are welcome to redistribute it 318 | under certain conditions; type `show c' for details. 319 | 320 | The hypothetical commands `show w' and `show c' should show the appropriate 321 | parts of the General Public License. Of course, the commands you use may 322 | be called something other than `show w' and `show c'; they could even be 323 | mouse-clicks or menu items--whatever suits your program. 324 | 325 | You should also get your employer (if you work as a programmer) or your 326 | school, if any, to sign a "copyright disclaimer" for the program, if 327 | necessary. Here is a sample; alter the names: 328 | 329 | Yoyodyne, Inc., hereby disclaims all copyright interest in the program 330 | `Gnomovision' (which makes passes at compilers) written by James Hacker. 331 | 332 | {signature of Ty Coon}, 1 April 1989 333 | Ty Coon, President of Vice 334 | 335 | This General Public License does not permit incorporating your program into 336 | proprietary programs. If your program is a subroutine library, you may 337 | consider it more useful to permit linking proprietary applications with the 338 | library. If this is what you want to do, use the GNU Lesser General 339 | Public License instead of this License. 340 | -------------------------------------------------------------------------------- /PerceptionAndVisualization/Automobile price data.csv: -------------------------------------------------------------------------------- 1 | symboling,normalized-losses,make,fuel-type,aspiration,num-of-doors,body-style,drive-wheels,engine-location,wheel-base,length,width,height,curb-weight,engine-type,num-of-cylinders,engine-size,fuel-system,bore,stroke,compression-ratio,horsepower,peak-rpm,city-mpg,highway-mpg,price 2 | 3,?,alfa-romero,gas,std,two,convertible,rwd,front,88.60,168.80,64.10,48.80,2548,dohc,four,130,mpfi,3.47,2.68,9.00,111,5000,21,27,13495 3 | 3,?,alfa-romero,gas,std,two,convertible,rwd,front,88.60,168.80,64.10,48.80,2548,dohc,four,130,mpfi,3.47,2.68,9.00,111,5000,21,27,16500 4 | 1,?,alfa-romero,gas,std,two,hatchback,rwd,front,94.50,171.20,65.50,52.40,2823,ohcv,six,152,mpfi,2.68,3.47,9.00,154,5000,19,26,16500 5 | 2,164,audi,gas,std,four,sedan,fwd,front,99.80,176.60,66.20,54.30,2337,ohc,four,109,mpfi,3.19,3.40,10.00,102,5500,24,30,13950 6 | 2,164,audi,gas,std,four,sedan,4wd,front,99.40,176.60,66.40,54.30,2824,ohc,five,136,mpfi,3.19,3.40,8.00,115,5500,18,22,17450 7 | 2,?,audi,gas,std,two,sedan,fwd,front,99.80,177.30,66.30,53.10,2507,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,15250 8 | 1,158,audi,gas,std,four,sedan,fwd,front,105.80,192.70,71.40,55.70,2844,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,17710 9 | 1,?,audi,gas,std,four,wagon,fwd,front,105.80,192.70,71.40,55.70,2954,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,18920 10 | 1,158,audi,gas,turbo,four,sedan,fwd,front,105.80,192.70,71.40,55.90,3086,ohc,five,131,mpfi,3.13,3.40,8.30,140,5500,17,20,23875 11 | 0,?,audi,gas,turbo,two,hatchback,4wd,front,99.50,178.20,67.90,52.00,3053,ohc,five,131,mpfi,3.13,3.40,7.00,160,5500,16,22,? 12 | 2,192,bmw,gas,std,two,sedan,rwd,front,101.20,176.80,64.80,54.30,2395,ohc,four,108,mpfi,3.50,2.80,8.80,101,5800,23,29,16430 13 | 0,192,bmw,gas,std,four,sedan,rwd,front,101.20,176.80,64.80,54.30,2395,ohc,four,108,mpfi,3.50,2.80,8.80,101,5800,23,29,16925 14 | 0,188,bmw,gas,std,two,sedan,rwd,front,101.20,176.80,64.80,54.30,2710,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,21,28,20970 15 | 0,188,bmw,gas,std,four,sedan,rwd,front,101.20,176.80,64.80,54.30,2765,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,21,28,21105 16 | 1,?,bmw,gas,std,four,sedan,rwd,front,103.50,189.00,66.90,55.70,3055,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,20,25,24565 17 | 0,?,bmw,gas,std,four,sedan,rwd,front,103.50,189.00,66.90,55.70,3230,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,16,22,30760 18 | 0,?,bmw,gas,std,two,sedan,rwd,front,103.50,193.80,67.90,53.70,3380,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,16,22,41315 19 | 0,?,bmw,gas,std,four,sedan,rwd,front,110.00,197.00,70.90,56.30,3505,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,15,20,36880 20 | 2,121,chevrolet,gas,std,two,hatchback,fwd,front,88.40,141.10,60.30,53.20,1488,l,three,61,2bbl,2.91,3.03,9.50,48,5100,47,53,5151 21 | 1,98,chevrolet,gas,std,two,hatchback,fwd,front,94.50,155.90,63.60,52.00,1874,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,6295 22 | 0,81,chevrolet,gas,std,four,sedan,fwd,front,94.50,158.80,63.60,52.00,1909,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,6575 23 | 1,118,dodge,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1876,ohc,four,90,2bbl,2.97,3.23,9.41,68,5500,37,41,5572 24 | 1,118,dodge,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1876,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6377 25 | 1,118,dodge,gas,turbo,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,2128,ohc,four,98,mpfi,3.03,3.39,7.60,102,5500,24,30,7957 26 | 1,148,dodge,gas,std,four,hatchback,fwd,front,93.70,157.30,63.80,50.60,1967,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6229 27 | 1,148,dodge,gas,std,four,sedan,fwd,front,93.70,157.30,63.80,50.60,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6692 28 | 1,148,dodge,gas,std,four,sedan,fwd,front,93.70,157.30,63.80,50.60,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,7609 29 | 1,148,dodge,gas,turbo,?,sedan,fwd,front,93.70,157.30,63.80,50.60,2191,ohc,four,98,mpfi,3.03,3.39,7.60,102,5500,24,30,8558 30 | -1,110,dodge,gas,std,four,wagon,fwd,front,103.30,174.60,64.60,59.80,2535,ohc,four,122,2bbl,3.34,3.46,8.50,88,5000,24,30,8921 31 | 3,145,dodge,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2811,ohc,four,156,mfi,3.60,3.90,7.00,145,5000,19,24,12964 32 | 2,137,honda,gas,std,two,hatchback,fwd,front,86.60,144.60,63.90,50.80,1713,ohc,four,92,1bbl,2.91,3.41,9.60,58,4800,49,54,6479 33 | 2,137,honda,gas,std,two,hatchback,fwd,front,86.60,144.60,63.90,50.80,1819,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,31,38,6855 34 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1837,ohc,four,79,1bbl,2.91,3.07,10.10,60,5500,38,42,5399 35 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1940,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,6529 36 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1956,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,7129 37 | 0,110,honda,gas,std,four,sedan,fwd,front,96.50,163.40,64.00,54.50,2010,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,7295 38 | 0,78,honda,gas,std,four,wagon,fwd,front,96.50,157.10,63.90,58.30,2024,ohc,four,92,1bbl,2.92,3.41,9.20,76,6000,30,34,7295 39 | 0,106,honda,gas,std,two,hatchback,fwd,front,96.50,167.50,65.20,53.30,2236,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,7895 40 | 0,106,honda,gas,std,two,hatchback,fwd,front,96.50,167.50,65.20,53.30,2289,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,9095 41 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,65.20,54.10,2304,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,8845 42 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,62.50,54.10,2372,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,10295 43 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,65.20,54.10,2465,ohc,four,110,mpfi,3.15,3.58,9.00,101,5800,24,28,12945 44 | 1,107,honda,gas,std,two,sedan,fwd,front,96.50,169.10,66.00,51.00,2293,ohc,four,110,2bbl,3.15,3.58,9.10,100,5500,25,31,10345 45 | 0,?,isuzu,gas,std,four,sedan,rwd,front,94.30,170.70,61.80,53.50,2337,ohc,four,111,2bbl,3.31,3.23,8.50,78,4800,24,29,6785 46 | 1,?,isuzu,gas,std,two,sedan,fwd,front,94.50,155.90,63.60,52.00,1874,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,? 47 | 0,?,isuzu,gas,std,four,sedan,fwd,front,94.50,155.90,63.60,52.00,1909,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,? 48 | 2,?,isuzu,gas,std,two,hatchback,rwd,front,96.00,172.60,65.20,51.40,2734,ohc,four,119,spfi,3.43,3.23,9.20,90,5000,24,29,11048 49 | 0,145,jaguar,gas,std,four,sedan,rwd,front,113.00,199.60,69.60,52.80,4066,dohc,six,258,mpfi,3.63,4.17,8.10,176,4750,15,19,32250 50 | 0,?,jaguar,gas,std,four,sedan,rwd,front,113.00,199.60,69.60,52.80,4066,dohc,six,258,mpfi,3.63,4.17,8.10,176,4750,15,19,35550 51 | 0,?,jaguar,gas,std,two,sedan,rwd,front,102.00,191.70,70.60,47.80,3950,ohcv,twelve,326,mpfi,3.54,2.76,11.50,262,5000,13,17,36000 52 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1890,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,30,31,5195 53 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1900,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6095 54 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1905,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6795 55 | 1,113,mazda,gas,std,four,sedan,fwd,front,93.10,166.80,64.20,54.10,1945,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6695 56 | 1,113,mazda,gas,std,four,sedan,fwd,front,93.10,166.80,64.20,54.10,1950,ohc,four,91,2bbl,3.08,3.15,9.00,68,5000,31,38,7395 57 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2380,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,10945 58 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2380,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,11845 59 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2385,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,13645 60 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2500,rotor,two,80,mpfi,?,?,9.40,135,6000,16,23,15645 61 | 1,129,mazda,gas,std,two,hatchback,fwd,front,98.80,177.80,66.50,53.70,2385,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,8845 62 | 0,115,mazda,gas,std,four,sedan,fwd,front,98.80,177.80,66.50,55.50,2410,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,8495 63 | 1,129,mazda,gas,std,two,hatchback,fwd,front,98.80,177.80,66.50,53.70,2385,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,10595 64 | 0,115,mazda,gas,std,four,sedan,fwd,front,98.80,177.80,66.50,55.50,2410,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,10245 65 | 0,?,mazda,diesel,std,?,sedan,fwd,front,98.80,177.80,66.50,55.50,2443,ohc,four,122,idi,3.39,3.39,22.70,64,4650,36,42,10795 66 | 0,115,mazda,gas,std,four,hatchback,fwd,front,98.80,177.80,66.50,55.50,2425,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,11245 67 | 0,118,mazda,gas,std,four,sedan,rwd,front,104.90,175.00,66.10,54.40,2670,ohc,four,140,mpfi,3.76,3.16,8.00,120,5000,19,27,18280 68 | 0,?,mazda,diesel,std,four,sedan,rwd,front,104.90,175.00,66.10,54.40,2700,ohc,four,134,idi,3.43,3.64,22.00,72,4200,31,39,18344 69 | -1,93,mercedes-benz,diesel,turbo,four,sedan,rwd,front,110.00,190.90,70.30,56.50,3515,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,25552 70 | -1,93,mercedes-benz,diesel,turbo,four,wagon,rwd,front,110.00,190.90,70.30,58.70,3750,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,28248 71 | 0,93,mercedes-benz,diesel,turbo,two,hardtop,rwd,front,106.70,187.50,70.30,54.90,3495,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,28176 72 | -1,93,mercedes-benz,diesel,turbo,four,sedan,rwd,front,115.60,202.60,71.70,56.30,3770,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,31600 73 | -1,?,mercedes-benz,gas,std,four,sedan,rwd,front,115.60,202.60,71.70,56.50,3740,ohcv,eight,234,mpfi,3.46,3.10,8.30,155,4750,16,18,34184 74 | 3,142,mercedes-benz,gas,std,two,convertible,rwd,front,96.60,180.30,70.50,50.80,3685,ohcv,eight,234,mpfi,3.46,3.10,8.30,155,4750,16,18,35056 75 | 0,?,mercedes-benz,gas,std,four,sedan,rwd,front,120.90,208.10,71.70,56.70,3900,ohcv,eight,308,mpfi,3.80,3.35,8.00,184,4500,14,16,40960 76 | 1,?,mercedes-benz,gas,std,two,hardtop,rwd,front,112.00,199.20,72.00,55.40,3715,ohcv,eight,304,mpfi,3.80,3.35,8.00,184,4500,14,16,45400 77 | 1,?,mercury,gas,turbo,two,hatchback,rwd,front,102.70,178.40,68.00,54.80,2910,ohc,four,140,mpfi,3.78,3.12,8.00,175,5000,19,24,16503 78 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,1918,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,37,41,5389 79 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,1944,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,31,38,6189 80 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,2004,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,31,38,6669 81 | 1,161,mitsubishi,gas,turbo,two,hatchback,fwd,front,93,157.30,63.80,50.80,2145,ohc,four,98,spdi,3.03,3.39,7.60,102,5500,24,30,7689 82 | 3,153,mitsubishi,gas,turbo,two,hatchback,fwd,front,96.30,173.00,65.40,49.40,2370,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9959 83 | 3,153,mitsubishi,gas,std,two,hatchback,fwd,front,96.30,173.00,65.40,49.40,2328,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,8499 84 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2833,ohc,four,156,spdi,3.58,3.86,7.00,145,5000,19,24,12629 85 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2921,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,14869 86 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2926,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,14489 87 | 1,125,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2365,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,6989 88 | 1,125,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2405,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,8189 89 | 1,125,mitsubishi,gas,turbo,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2403,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9279 90 | -1,137,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2403,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9279 91 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1889,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,5499 92 | 1,128,nissan,diesel,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,2017,ohc,four,103,idi,2.99,3.47,21.90,55,4800,45,50,7099 93 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1918,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,6649 94 | 1,122,nissan,gas,std,four,sedan,fwd,front,94.50,165.30,63.80,54.50,1938,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,6849 95 | 1,103,nissan,gas,std,four,wagon,fwd,front,94.50,170.20,63.80,53.50,2024,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7349 96 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1951,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7299 97 | 1,128,nissan,gas,std,two,hatchback,fwd,front,94.50,165.60,63.80,53.30,2028,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7799 98 | 1,122,nissan,gas,std,four,sedan,fwd,front,94.50,165.30,63.80,54.50,1971,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7499 99 | 1,103,nissan,gas,std,four,wagon,fwd,front,94.50,170.20,63.80,53.50,2037,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7999 100 | 2,168,nissan,gas,std,two,hardtop,fwd,front,95.10,162.40,63.80,53.30,2008,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,8249 101 | 0,106,nissan,gas,std,four,hatchback,fwd,front,97.20,173.40,65.20,54.70,2324,ohc,four,120,2bbl,3.33,3.47,8.50,97,5200,27,34,8949 102 | 0,106,nissan,gas,std,four,sedan,fwd,front,97.20,173.40,65.20,54.70,2302,ohc,four,120,2bbl,3.33,3.47,8.50,97,5200,27,34,9549 103 | 0,128,nissan,gas,std,four,sedan,fwd,front,100.40,181.70,66.50,55.10,3095,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,17,22,13499 104 | 0,108,nissan,gas,std,four,wagon,fwd,front,100.40,184.60,66.50,56.10,3296,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,17,22,14399 105 | 0,108,nissan,gas,std,four,sedan,fwd,front,100.40,184.60,66.50,55.10,3060,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,19,25,13499 106 | 3,194,nissan,gas,std,two,hatchback,rwd,front,91.30,170.70,67.90,49.70,3071,ohcv,six,181,mpfi,3.43,3.27,9.00,160,5200,19,25,17199 107 | 3,194,nissan,gas,turbo,two,hatchback,rwd,front,91.30,170.70,67.90,49.70,3139,ohcv,six,181,mpfi,3.43,3.27,7.80,200,5200,17,23,19699 108 | 1,231,nissan,gas,std,two,hatchback,rwd,front,99.20,178.50,67.90,49.70,3139,ohcv,six,181,mpfi,3.43,3.27,9.00,160,5200,19,25,18399 109 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3020,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,11900 110 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3197,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,13200 111 | 0,?,peugot,gas,std,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3230,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,12440 112 | 0,?,peugot,diesel,turbo,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3430,l,four,152,idi,3.70,3.52,21.00,95,4150,25,25,13860 113 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3075,l,four,120,mpfi,3.46,2.19,8.40,95,5000,19,24,15580 114 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3252,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,16900 115 | 0,?,peugot,gas,std,four,wagon,rwd,front,114.20,198.90,68.40,56.70,3285,l,four,120,mpfi,3.46,2.19,8.40,95,5000,19,24,16695 116 | 0,?,peugot,diesel,turbo,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3485,l,four,152,idi,3.70,3.52,21.00,95,4150,25,25,17075 117 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3075,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,16630 118 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3252,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,17950 119 | 0,161,peugot,gas,turbo,four,sedan,rwd,front,108.00,186.70,68.30,56.00,3130,l,four,134,mpfi,3.61,3.21,7.00,142,5600,18,24,18150 120 | 1,119,plymouth,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1918,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,37,41,5572 121 | 1,119,plymouth,gas,turbo,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,2128,ohc,four,98,spdi,3.03,3.39,7.60,102,5500,24,30,7957 122 | 1,154,plymouth,gas,std,four,hatchback,fwd,front,93.70,157.30,63.80,50.60,1967,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6229 123 | 1,154,plymouth,gas,std,four,sedan,fwd,front,93.70,167.30,63.80,50.80,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6692 124 | 1,154,plymouth,gas,std,four,sedan,fwd,front,93.70,167.30,63.80,50.80,2191,ohc,four,98,2bbl,2.97,3.23,9.40,68,5500,31,38,7609 125 | -1,74,plymouth,gas,std,four,wagon,fwd,front,103.30,174.60,64.60,59.80,2535,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,24,30,8921 126 | 3,?,plymouth,gas,turbo,two,hatchback,rwd,front,95.90,173.20,66.30,50.20,2818,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,12764 127 | 3,186,porsche,gas,std,two,hatchback,rwd,front,94.50,168.90,68.30,50.20,2778,ohc,four,151,mpfi,3.94,3.11,9.50,143,5500,19,27,22018 128 | 3,?,porsche,gas,std,two,hardtop,rwd,rear,89.50,168.90,65.00,51.60,2756,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,32528 129 | 3,?,porsche,gas,std,two,hardtop,rwd,rear,89.50,168.90,65.00,51.60,2756,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,34028 130 | 3,?,porsche,gas,std,two,convertible,rwd,rear,89.50,168.90,65.00,51.60,2800,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,37028 131 | 1,?,porsche,gas,std,two,hatchback,rwd,front,98.40,175.70,72.30,50.50,3366,dohcv,eight,203,mpfi,3.94,3.11,10.00,288,5750,17,28,? 132 | 0,?,renault,gas,std,four,wagon,fwd,front,96.10,181.50,66.50,55.20,2579,ohc,four,132,mpfi,3.46,3.90,8.70,?,?,23,31,9295 133 | 2,?,renault,gas,std,two,hatchback,fwd,front,96.10,176.80,66.60,50.50,2460,ohc,four,132,mpfi,3.46,3.90,8.70,?,?,23,31,9895 134 | 3,150,saab,gas,std,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2658,ohc,four,121,mpfi,3.54,3.07,9.31,110,5250,21,28,11850 135 | 2,104,saab,gas,std,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2695,ohc,four,121,mpfi,3.54,3.07,9.30,110,5250,21,28,12170 136 | 3,150,saab,gas,std,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2707,ohc,four,121,mpfi,2.54,2.07,9.30,110,5250,21,28,15040 137 | 2,104,saab,gas,std,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2758,ohc,four,121,mpfi,3.54,3.07,9.30,110,5250,21,28,15510 138 | 3,150,saab,gas,turbo,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2808,dohc,four,121,mpfi,3.54,3.07,9.00,160,5500,19,26,18150 139 | 2,104,saab,gas,turbo,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2847,dohc,four,121,mpfi,3.54,3.07,9.00,160,5500,19,26,18620 140 | 2,83,subaru,gas,std,two,hatchback,fwd,front,93.70,156.90,63.40,53.70,2050,ohcf,four,97,2bbl,3.62,2.36,9.00,69,4900,31,36,5118 141 | 2,83,subaru,gas,std,two,hatchback,fwd,front,93.70,157.90,63.60,53.70,2120,ohcf,four,108,2bbl,3.62,2.64,8.70,73,4400,26,31,7053 142 | 2,83,subaru,gas,std,two,hatchback,4wd,front,93.30,157.30,63.80,55.70,2240,ohcf,four,108,2bbl,3.62,2.64,8.70,73,4400,26,31,7603 143 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2145,ohcf,four,108,2bbl,3.62,2.64,9.50,82,4800,32,37,7126 144 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2190,ohcf,four,108,2bbl,3.62,2.64,9.50,82,4400,28,33,7775 145 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2340,ohcf,four,108,mpfi,3.62,2.64,9.00,94,5200,26,32,9960 146 | 0,102,subaru,gas,std,four,sedan,4wd,front,97.00,172.00,65.40,54.30,2385,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,24,25,9233 147 | 0,102,subaru,gas,turbo,four,sedan,4wd,front,97.00,172.00,65.40,54.30,2510,ohcf,four,108,mpfi,3.62,2.64,7.70,111,4800,24,29,11259 148 | 0,89,subaru,gas,std,four,wagon,fwd,front,97.00,173.50,65.40,53.00,2290,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,28,32,7463 149 | 0,89,subaru,gas,std,four,wagon,fwd,front,97.00,173.50,65.40,53.00,2455,ohcf,four,108,mpfi,3.62,2.64,9.00,94,5200,25,31,10198 150 | 0,85,subaru,gas,std,four,wagon,4wd,front,96.90,173.60,65.40,54.90,2420,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,23,29,8013 151 | 0,85,subaru,gas,turbo,four,wagon,4wd,front,96.90,173.60,65.40,54.90,2650,ohcf,four,108,mpfi,3.62,2.64,7.70,111,4800,23,23,11694 152 | 1,87,toyota,gas,std,two,hatchback,fwd,front,95.70,158.70,63.60,54.50,1985,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,35,39,5348 153 | 1,87,toyota,gas,std,two,hatchback,fwd,front,95.70,158.70,63.60,54.50,2040,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,38,6338 154 | 1,74,toyota,gas,std,four,hatchback,fwd,front,95.70,158.70,63.60,54.50,2015,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,38,6488 155 | 0,77,toyota,gas,std,four,wagon,fwd,front,95.70,169.70,63.60,59.10,2280,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,37,6918 156 | 0,81,toyota,gas,std,four,wagon,4wd,front,95.70,169.70,63.60,59.10,2290,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,27,32,7898 157 | 0,91,toyota,gas,std,four,wagon,4wd,front,95.70,169.70,63.60,59.10,3110,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,27,32,8778 158 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2081,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,30,37,6938 159 | 0,91,toyota,gas,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2109,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,30,37,7198 160 | 0,91,toyota,diesel,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2275,ohc,four,110,idi,3.27,3.35,22.50,56,4500,34,36,7898 161 | 0,91,toyota,diesel,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2275,ohc,four,110,idi,3.27,3.35,22.50,56,4500,38,47,7788 162 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2094,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,38,47,7738 163 | 0,91,toyota,gas,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2122,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,28,34,8358 164 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,52.80,2140,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,28,34,9258 165 | 1,168,toyota,gas,std,two,sedan,rwd,front,94.50,168.70,64.00,52.60,2169,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,29,34,8058 166 | 1,168,toyota,gas,std,two,hatchback,rwd,front,94.50,168.70,64.00,52.60,2204,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,29,34,8238 167 | 1,168,toyota,gas,std,two,sedan,rwd,front,94.50,168.70,64.00,52.60,2265,dohc,four,98,mpfi,3.24,3.08,9.40,112,6600,26,29,9298 168 | 1,168,toyota,gas,std,two,hatchback,rwd,front,94.50,168.70,64.00,52.60,2300,dohc,four,98,mpfi,3.24,3.08,9.40,112,6600,26,29,9538 169 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2540,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,8449 170 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2536,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,9639 171 | 2,134,toyota,gas,std,two,hatchback,rwd,front,98.40,176.20,65.60,52.00,2551,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,9989 172 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2679,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,11199 173 | 2,134,toyota,gas,std,two,hatchback,rwd,front,98.40,176.20,65.60,52.00,2714,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,11549 174 | 2,134,toyota,gas,std,two,convertible,rwd,front,98.40,176.20,65.60,53.00,2975,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,17669 175 | -1,65,toyota,gas,std,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2326,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,29,34,8948 176 | -1,65,toyota,diesel,turbo,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2480,ohc,four,110,idi,3.27,3.35,22.50,73,4500,30,33,10698 177 | -1,65,toyota,gas,std,four,hatchback,fwd,front,102.40,175.60,66.50,53.90,2414,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,9988 178 | -1,65,toyota,gas,std,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2414,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,10898 179 | -1,65,toyota,gas,std,four,hatchback,fwd,front,102.40,175.60,66.50,53.90,2458,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,11248 180 | 3,197,toyota,gas,std,two,hatchback,rwd,front,102.90,183.50,67.70,52.00,2976,dohc,six,171,mpfi,3.27,3.35,9.30,161,5200,20,24,16558 181 | 3,197,toyota,gas,std,two,hatchback,rwd,front,102.90,183.50,67.70,52.00,3016,dohc,six,171,mpfi,3.27,3.35,9.30,161,5200,19,24,15998 182 | -1,90,toyota,gas,std,four,sedan,rwd,front,104.50,187.80,66.50,54.10,3131,dohc,six,171,mpfi,3.27,3.35,9.20,156,5200,20,24,15690 183 | -1,?,toyota,gas,std,four,wagon,rwd,front,104.50,187.80,66.50,54.10,3151,dohc,six,161,mpfi,3.27,3.35,9.20,156,5200,19,24,15750 184 | 2,122,volkswagen,diesel,std,two,sedan,fwd,front,97.30,171.70,65.50,55.70,2261,ohc,four,97,idi,3.01,3.40,23.00,52,4800,37,46,7775 185 | 2,122,volkswagen,gas,std,two,sedan,fwd,front,97.30,171.70,65.50,55.70,2209,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,7975 186 | 2,94,volkswagen,diesel,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2264,ohc,four,97,idi,3.01,3.40,23.00,52,4800,37,46,7995 187 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2212,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,8195 188 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2275,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,8495 189 | 2,94,volkswagen,diesel,turbo,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2319,ohc,four,97,idi,3.01,3.40,23.00,68,4500,37,42,9495 190 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2300,ohc,four,109,mpfi,3.19,3.40,10.00,100,5500,26,32,9995 191 | 3,?,volkswagen,gas,std,two,convertible,fwd,front,94.50,159.30,64.20,55.60,2254,ohc,four,109,mpfi,3.19,3.40,8.50,90,5500,24,29,11595 192 | 3,256,volkswagen,gas,std,two,hatchback,fwd,front,94.50,165.70,64.00,51.40,2221,ohc,four,109,mpfi,3.19,3.40,8.50,90,5500,24,29,9980 193 | 0,?,volkswagen,gas,std,four,sedan,fwd,front,100.40,180.20,66.90,55.10,2661,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,24,13295 194 | 0,?,volkswagen,diesel,turbo,four,sedan,fwd,front,100.40,180.20,66.90,55.10,2579,ohc,four,97,idi,3.01,3.40,23.00,68,4500,33,38,13845 195 | 0,?,volkswagen,gas,std,four,wagon,fwd,front,100.40,183.10,66.90,55.10,2563,ohc,four,109,mpfi,3.19,3.40,9.00,88,5500,25,31,12290 196 | -2,103,volvo,gas,std,four,sedan,rwd,front,104.30,188.80,67.20,56.20,2912,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,12940 197 | -1,74,volvo,gas,std,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3034,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,13415 198 | -2,103,volvo,gas,std,four,sedan,rwd,front,104.30,188.80,67.20,56.20,2935,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,24,28,15985 199 | -1,74,volvo,gas,std,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3042,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,24,28,16515 200 | -2,103,volvo,gas,turbo,four,sedan,rwd,front,104.30,188.80,67.20,56.20,3045,ohc,four,130,mpfi,3.62,3.15,7.50,162,5100,17,22,18420 201 | -1,74,volvo,gas,turbo,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3157,ohc,four,130,mpfi,3.62,3.15,7.50,162,5100,17,22,18950 202 | -1,95,volvo,gas,std,four,sedan,rwd,front,109.10,188.80,68.90,55.50,2952,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,16845 203 | -1,95,volvo,gas,turbo,four,sedan,rwd,front,109.10,188.80,68.80,55.50,3049,ohc,four,141,mpfi,3.78,3.15,8.70,160,5300,19,25,19045 204 | -1,95,volvo,gas,std,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3012,ohcv,six,173,mpfi,3.58,2.87,8.80,134,5500,18,23,21485 205 | -1,95,volvo,diesel,turbo,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3217,ohc,six,145,idi,3.01,3.40,23.00,106,4800,26,27,22470 206 | -1,95,volvo,gas,turbo,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3062,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,19,25,22625 -------------------------------------------------------------------------------- /PerceptionAndVisualization/PerceptionAndVisualization.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "![](img/logo.288981a8dfa8.png)\n", 8 | "\n", 9 | "# Perception in Visualization with Python\n", 10 | "## Steve Elston\n", 11 | "## Presented at PyData Seattle, November 4, 2019 \n", 12 | "\n", 13 | "In this lesson we will investigate techniques to maximize the information viewers perceive from data visualizations. Creating visualization with techniques that account for human perception can highlight important insights. When faced with trying to understand complex datasets the limits of human perception become a significant factor. To better explore such complex data you can apply the results of the considerable research available on human perceptions for data visualization. \n", 14 | "\n", 15 | "We will use several Python packages to create the visualizations, [matplotlib](https://matplotlib.org/), [Pandas plotting](https://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html), and [seaborn](https://seaborn.pydata.org/). The code examples in this notebook use each of these packages. \n", 16 | "\n", 17 | "For these lessons we will be working with a data set containing the prices and characteristics of a number of automobiles. The ultimate goal is to understand the relationship between the price of a car and its characteristics. " 18 | ] 19 | }, 20 | { 21 | "cell_type": "markdown", 22 | "metadata": {}, 23 | "source": [ 24 | "## Outline\n", 25 | "\n", 26 | "These lessons are divided into three parts. In each part we will explore one aspect of using Python visualization tools to effectively understand the relationships in complex datasets. Primarily, we will work with plot aesthetics used to highlight relationships for complex datasets. By plot aesthetics we mean properties of a visualization which highlight aspects of the data relationships. \n", 27 | "\n", 28 | "1. **Easy to perceive plot aesthetics:** We will start by applying some aesthetics which generally are easy for people to perceive. Using these aesthetics can enhance viewers' understanding of key relationships in complex datasets. \n", 29 | " - Marker position,\n", 30 | " - Bar length,\n", 31 | " - Aspect ratio,\n", 32 | " - Sequential and divergent color palettes, \n", 33 | " - Maker size. \n", 34 | " \n", 35 | "2. **Aesthetics with limited perceptive power:** We will review some commonly used aesthetics which are often used, but which may not be the best choices for human perception. Used with care, these aesthetics can still be useful in highlighting relationships in complex datasets. \n", 36 | " - Qualitative color palettes,\n", 37 | " - Line type,\n", 38 | " - Marker shape.\n", 39 | " \n", 40 | "3. **Plotting with multiple views:** Understanding complex datasets can require multiple views, sometimes even for the same relationship. These views can be as simple as a comparison plots or as plots which slice complex datasets into understandable projections. \n", 41 | " - Comparing side by side plots of subsets of a complex data,\n", 42 | " - Pairwise scatter plots for visualization of pairwise combinations of the variables, \n", 43 | " - Faceted, conditioned or small multiple plots are all names for a method which produces visual slices through complex data. \n" 44 | ] 45 | }, 46 | { 47 | "cell_type": "markdown", 48 | "metadata": {}, 49 | "source": [ 50 | "\n", 51 | "## About this Jupyter Notebook\n", 52 | "This notebook contains material to help you learn how to maximize human perception when visualizing data. This notebook and the data set can be downloaded from GitHub:\n", 53 | "\n", 54 | "**https://github.com/StephenElston/ExploringDataWithPython** \n", 55 | "\n", 56 | "The material are in the **/PerceptionAndVisualization** directory. \n", 57 | "\n", 58 | "This notebook was constructed using the Anconda 3.7 Python distribution. If you are not running version Anaconda 3.5 or higher, we suggest you update your Anaconda distribution now. You can download the Python 3 Anaconda distribution for your operating system from the [Continum Analytics web site](https://www.continuum.io/downloads)\n", 59 | "\n", 60 | "To run this notebook you need to install the Seaborn graphics packages. If you have not done so, you will need to install Seaborn as it is not in the Anaconda distribution as of now. From a command prompt on your computer type the following command. If no errors occur, you will have installed Seaborn.\n", 61 | "\n", 62 | "``pip install seaborn``\n", 63 | "\n", 64 | "or\n", 65 | "\n", 66 | "``conda install seaborn``\n", 67 | "\n", 68 | "More information on installing seaborn can be seen on the [Installing and getting started](http://seaborn.pydata.org/installing.html) page.\n", 69 | "\n" 70 | ] 71 | }, 72 | { 73 | "cell_type": "markdown", 74 | "metadata": {}, 75 | "source": [ 76 | "\n", 77 | "## About Me\n", 78 | "\n", 79 | "These lessons have been prepared by:\n", 80 | "\n", 81 | "**Steve Elston**\n", 82 | "\n", 83 | "- Co-founder and principle consultant Quantia Analytics, LLC \n", 84 | "- Instructor, University of Washington and Harvard University Extension School.\n", 85 | "- Creator and maintainer of four edX data science and ML/AI courses\n", 86 | "- Decades of experience in predictive analytics and machine learning \n", 87 | "- Experience in several industries: payment, telecom, capital markets, logistics, energy\n", 88 | "- PhD, MS in Geophysics from Princeton University\n" 89 | ] 90 | }, 91 | { 92 | "cell_type": "markdown", 93 | "metadata": {}, 94 | "source": [ 95 | "\n", 96 | "## About the data sets\n", 97 | "\n", 98 | "The automotive dataset is from the [Univeristy of California Irving Machine Learning Repository](https://archive.ics.uci.edu/ml/datasets/Automobile) The data was compiled by Jeffrey C. Schlimmer from the following sources:\n", 99 | "\n", 100 | "- 1985 Model Import Car and Truck Specifications, 1985 Ward's Automotive Yearbook. \n", 101 | "- Personal Auto Manuals, Insurance Services Office, 160 Water Street, New York, NY 10038 \n", 102 | "- Insurance Collision Report, Insurance Institute for Highway Safety, Watergate 600, Washington, DC 20037\n", 103 | "\n", 104 | "The raw sunspot dataset come from the [SISLO World Data Center](http://www.sidc.be/silso/home). The time series used here is from [R datasets package](https://stat.ethz.ch/R-manual/R-devel/library/datasets/html/sunspot.month.html)" 105 | ] 106 | }, 107 | { 108 | "cell_type": "markdown", 109 | "metadata": {}, 110 | "source": [ 111 | "## Why visualization and Exploratory Data Analysis?\n", 112 | "\n", 113 | "Visualization is an essential method in any data scientist’s toolbox. Visualization is a key first step in the exploration of most data sets. These process exploring data visually and with simple summary statistics is known as Exploratory Data Analysis (EDA). \n", 114 | "\n", 115 | "As a general rule, you should never start creating analytical or machine learning models until you have examined the data and understand the relationships. Otherwise, you risk wasting your time creating models blindly. \n", 116 | "\n", 117 | "Visualization is also a powerful tool for presentation of results and for determining sources of problems with analytics. \n", 118 | "\n", 119 | "The concepts of exploring and analyzing a data set visually was pioneered by John Tukey in the 1960s and 1970s. Tukey consolidated his many ideas on data exploration into a book in the late 1970s, *John Tukey, Exploratory Data Analysis, 1977, Addison-Westley*.\n", 120 | "\n", 121 | "\"Drawing\"\n", 122 | "\n", 123 | "\n", 124 | "Bill Cleveland documented his seminal work in visualization of complex data sets in his book, *William S. Cleveland, Visualizing Data, 1993, Hobart Press*.\n", 125 | "\n", 126 | "\"Drawing\"\n", 127 | "\n", 128 | "\n", 129 | "Edward Tufte is well know for his different take on data exploration and visualizaion. His first book outlined many of his key ideas: *Edward Tufte, Envisioning Information, Graphics Press, 1990*. His more famous book first appeared in 1993, and is still widely available: *Edward Tufte, Envisioning Information, 2nd Edition, Graphics Press, 2001*.\n", 130 | "\n", 131 | "\"Drawing\"\n", 132 | "\n", 133 | "The key concept of exploratory data analysis (EDA) or visual exploration of data is to understand the relationships in the data set. Specifically, using visualization when you approach a new data set you can:\n", 134 | "\n", 135 | "- Explore complex data sets, using visualization to develop understanding of the inherent relationships.\n", 136 | "- Use different chart types to create multiple views of data to highlight different aspects of the inherent relationships.\n", 137 | "- Use plot aesthetics to project multiple dimensions. \n", 138 | "- Apply conditioning or faceting methods to project multiple dimensions\n" 139 | ] 140 | }, 141 | { 142 | "cell_type": "markdown", 143 | "metadata": {}, 144 | "source": [ 145 | "## Resources\n", 146 | "\n", 147 | "In this tutorial we will work with two powerful Python packages, Pandas and Seaborn. Both packages have extensive online documentation. There is an extensive tutorial on [**Visualizaton with Pandas**](http://pandas.pydata.org/pandas-docs/version/0.18.0/visualization.html). The [**Seaborn tutorial**](https://stanford.edu/~mwaskom/software/seaborn/tutorial.html) contains many examples of data visualization. The matplotlib web site has additional [**resources for learning to use this package**](http://matplotlib.org/resources/index.html)." 148 | ] 149 | }, 150 | { 151 | "cell_type": "markdown", 152 | "metadata": {}, 153 | "source": [ 154 | "## Load the data set\n", 155 | "\n", 156 | "Let's get started. The function shown in the cell below loads the data from the .csv file. Some minimal clean up is performed on the data. Rows with missing values are dropped and some columns are converted from strings containing numbers to numeric data. \n", 157 | "\n", 158 | "Execute the code in this cell to load the packages you will need for this notebook.\n", 159 | "\n", 160 | "***\n", 161 | "**Note:** The IPyhon magic command `%matplotlib inline` enables the display of graphics inline with the Python code. If you do not include this command your graphs will not be displayed. \n", 162 | "***" 163 | ] 164 | }, 165 | { 166 | "cell_type": "code", 167 | "execution_count": null, 168 | "metadata": {}, 169 | "outputs": [], 170 | "source": [ 171 | "import pandas as pd\n", 172 | "import numpy as np\n", 173 | "import seaborn as sns\n", 174 | "from math import log, sqrt, sin\n", 175 | "import matplotlib.pyplot as plt\n", 176 | "%matplotlib inline " 177 | ] 178 | }, 179 | { 180 | "cell_type": "markdown", 181 | "metadata": {}, 182 | "source": [ 183 | "Execute the code in this cell to load the data into your notebook and do some cleanup of the data. **Make sure you have the .csv file in your working directory!**" 184 | ] 185 | }, 186 | { 187 | "cell_type": "code", 188 | "execution_count": null, 189 | "metadata": {}, 190 | "outputs": [], 191 | "source": [ 192 | "def read_auto_data(fileName = \"Automobile price data.csv\"):\n", 193 | " 'Function to load the auto price data set from a .csv file' \n", 194 | "\n", 195 | " ## Read the .csv file with the pandas read_csv method\n", 196 | " auto_prices = pd.read_csv(fileName)\n", 197 | " \n", 198 | " ## Remove rows with missing values, accounting for mising values coded as '?'\n", 199 | " cols = ['price', 'bore', 'stroke', \n", 200 | " 'horsepower', 'peak-rpm']\n", 201 | " for column in cols:\n", 202 | " auto_prices.loc[auto_prices[column] == '?', column] = np.nan\n", 203 | " auto_prices.dropna(axis = 0, inplace = True)\n", 204 | "\n", 205 | " ## Convert some columns to numeric values\n", 206 | " for column in cols:\n", 207 | " auto_prices[column] = pd.to_numeric(auto_prices[column])\n", 208 | " \n", 209 | " return auto_prices\n", 210 | "auto_prices = read_auto_data()" 211 | ] 212 | }, 213 | { 214 | "cell_type": "markdown", 215 | "metadata": {}, 216 | "source": [ 217 | "The code in the cell below first gives the columns Python-friendly names. Then using the Pandas ``head`` method a sample of the data is displayed. Execute this code and examine the result. " 218 | ] 219 | }, 220 | { 221 | "cell_type": "code", 222 | "execution_count": null, 223 | "metadata": {}, 224 | "outputs": [], 225 | "source": [ 226 | "## Give columns Python-friendly names\n", 227 | "auto_prices.columns = ['symboling', 'normalized_losses', 'make', 'fuel_type', 'aspiration',\n", 228 | " 'num_of_doors', 'body_style', 'drive_wheels', 'engine_location',\n", 229 | " 'wheel_base', 'length', 'width', 'height', 'curb_weight', 'engine_type',\n", 230 | " 'num_of_cylinders', 'engine_size', 'fuel_system', 'bore', 'stroke',\n", 231 | " 'compression_ratio', 'horsepower', 'peak_rpm', 'city_mpg',\n", 232 | " 'highway_mpg', 'price']\n", 233 | "\n", 234 | "## Look at the head of the dataframe\n", 235 | "auto_prices.head()" 236 | ] 237 | }, 238 | { 239 | "cell_type": "markdown", 240 | "metadata": {}, 241 | "source": [ 242 | "## Easy to Perceive Plot Aesthetics\n", 243 | "\n", 244 | "In this section we will explore some plot aesthetics and attributes which maximizes human perception. By employing these aesthetics or plot attributes you can create visualizations that are more likely to highlight key relationships of your dataset. " 245 | ] 246 | }, 247 | { 248 | "cell_type": "markdown", 249 | "metadata": {}, 250 | "source": [ 251 | "### Marker Position and Scatter Plots\n", 252 | "\n", 253 | "Human perception of even small differences in position is quite acute. This acute perceptual difference makes scatter plots and other plots using position quite effective. Thus, scatter plots are one of the most useful and powerful of plot types. This despite the apparent simplicity. \n", 254 | "\n", 255 | "Scatter plots show the relationship between two variables in the form of dots on the plot. In simple terms, the values along a horizontal axis are plotted against a vertical axis. The scatter plot is a display of value vs. positions. \n", 256 | "\n", 257 | "Execute the code in the cell below to create a scatter plot of city mpg vs. curb weight. " 258 | ] 259 | }, 260 | { 261 | "cell_type": "code", 262 | "execution_count": null, 263 | "metadata": { 264 | "scrolled": false 265 | }, 266 | "outputs": [], 267 | "source": [ 268 | "## Define a figure and axes and make a scatter plot\n", 269 | "fig = plt.figure(figsize=(8, 8)) # define plot area\n", 270 | "ax = fig.gca() # define axis \n", 271 | "ax.scatter(x = auto_prices.city_mpg, y = auto_prices.curb_weight)\n", 272 | "ax.set_title('Scatter plot of price vs MPG') # Give the plot a main title\n", 273 | "ax.set_xlabel('City MPG') # Set text for the x axis\n", 274 | "ax.set_ylabel('Vehicle Weight')# Set text for y axis" 275 | ] 276 | }, 277 | { 278 | "cell_type": "markdown", 279 | "metadata": {}, 280 | "source": [ 281 | "In this plot you can see very small differences in the vehicle weight, for each value of city MPG. These values are quite small, in some cases, yet you can easily see the differences. Notice that city MPG is quantized in 1 MPG units. " 282 | ] 283 | }, 284 | { 285 | "cell_type": "markdown", 286 | "metadata": {}, 287 | "source": [ 288 | "\n", 289 | ">**Your turn:** In the cell below create and execute code to plot auto price vs City MPG." 290 | ] 291 | }, 292 | { 293 | "cell_type": "code", 294 | "execution_count": null, 295 | "metadata": {}, 296 | "outputs": [], 297 | "source": [] 298 | }, 299 | { 300 | "cell_type": "markdown", 301 | "metadata": {}, 302 | "source": [ 303 | "### Bar Length and Bar plots\n", 304 | "\n", 305 | "Length is another plot aesthetic or attribute for which human perception is quite sensitive. Most people can discern small differences in length. This makes plots using length relationship quite good at highlighting data relationships. \n", 306 | "\n", 307 | "Bar plots are used to display the counts of unique values of a categorical variable. The length of the bar represents the count for each unique category of the variable. Small differences in the counts, resulting in small differences in the bar lengths are quite perceptible. \n", 308 | "\n", 309 | "As a first step, we need the counts of the categorical variables. Pandas has a ``value_counts`` method used in the code below to create a new data frame containing the counts by ``make`` of the car. Execute this code. " 310 | ] 311 | }, 312 | { 313 | "cell_type": "code", 314 | "execution_count": null, 315 | "metadata": {}, 316 | "outputs": [], 317 | "source": [ 318 | "counts = auto_prices['make'].value_counts() # find the counts for each unique category\n", 319 | "counts" 320 | ] 321 | }, 322 | { 323 | "cell_type": "markdown", 324 | "metadata": {}, 325 | "source": [ 326 | "You can see the ordered list of counts by make above. Notice that this data frame has many fewer rows than the original, since it only needs one row for each unique value of the make. \n", 327 | "\n", 328 | "Now, create the bar plot of number of autos by make using the ``counts`` data frame, by executing the code in the cell below. Notice, that the recipe for this chart is the same as we have used for scatter plots and line plots, just using the ``.plot.bar`` method. " 329 | ] 330 | }, 331 | { 332 | "cell_type": "code", 333 | "execution_count": null, 334 | "metadata": {}, 335 | "outputs": [], 336 | "source": [ 337 | "fig = plt.figure(figsize=(8,8)) # define plot area\n", 338 | "ax = fig.gca() # define axis \n", 339 | "counts.plot.bar(ax = ax) # Use the plot.bar method on the counts data frame\n", 340 | "ax.set_title('Number of auto types by make') # Give the plot a main title\n", 341 | "ax.set_xlabel('Make') # Set text for the x axis\n", 342 | "ax.set_ylabel('Number of autos')# Set text for y axis" 343 | ] 344 | }, 345 | { 346 | "cell_type": "markdown", 347 | "metadata": {}, 348 | "source": [ 349 | "Examine this plot. You can easily see that several car makers have the same number of models, and that the difference in number of models can be as small as 1. \n", 350 | "\n", 351 | ">**Note:** The counts for the above bar chart are ordered (sorted). To maximize human perception, it is important to sort counts for bar charts in either ascending or descending order. \n", 352 | "\n", 353 | "It is worth considering commonly used alternatives to a simple bar plot a stacked bar plot and pie charts:\n", 354 | "- **Stacked bar charts:** When categories are stacked into single bar, the viewer often has difficulty determining the length of the sub-segments in the bars. Except in certain cases, the alignment of the sub-segments will be somewhat random and hard to compare. \n", 355 | "- **Pie charts:** Pie charts use area or angle, rather than length to show relative values. Human perception of area and angle is quite poor in general. Further, when there are more than a few categories the small differences in the area of the slices become completely unnoticeable. " 356 | ] 357 | }, 358 | { 359 | "cell_type": "markdown", 360 | "metadata": {}, 361 | "source": [ 362 | ">**Your turn:** Make a pie chart of the number of autos by make. Notice the difficulty in clearly interpreting this chart." 363 | ] 364 | }, 365 | { 366 | "cell_type": "code", 367 | "execution_count": null, 368 | "metadata": {}, 369 | "outputs": [], 370 | "source": [] 371 | }, 372 | { 373 | "cell_type": "markdown", 374 | "metadata": {}, 375 | "source": [ 376 | "### Sequential and Divergent Color Palettes\n", 377 | "\n", 378 | "Use of **color** as an aesthetic in visualization is a complicated subject. While color is often used, it is also often abused and leads to misleading or uninterpretable results. \n", 379 | "\n", 380 | "To structure our discussion, we will define two particular cases for the use of color in visualization:\n", 381 | "- A **qualitative palette** is a palette of individual colors is used to display categorical values. We will address this case latter. \n", 382 | "- A **sequential and divergent palettes** is a sequence of colors used to display a quantitative variable. A sequential palette contains a color sequence of changing hue, which corresponds to values of a quantitative variable. A divergent palette has two sequences of hues with a gap in the center. Divergent palettes are useful for quantitative variables with positive and negative values. \n", 383 | "\n", 384 | "When doing data visualization in Python you have the choice of several sets of high quality sequential and divergent color palettes. [There is an extensive set of palette choices with Seaborn](https://seaborn.pydata.org/tutorial/color_palettes.html). Matplotlib contains a [another set of high quality palettes](https://matplotlib.org/3.1.1/tutorials/colors/colormaps.html). These Matplotlib options, including **perceptually uniform palettes**, are expertly designed to optimize human perception. \n", 385 | "\n", 386 | "The code in the cell below creates a scatter plot with vehicle price shown using the magma palette from Matplotlib. Magma uses lighter or 'hotter' colors to show larger values of a quantitative variable. Execute this code and examine the results. " 387 | ] 388 | }, 389 | { 390 | "cell_type": "code", 391 | "execution_count": null, 392 | "metadata": {}, 393 | "outputs": [], 394 | "source": [ 395 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 396 | " hue = 'price', palette = 'magma',\n", 397 | " data=auto_prices,\n", 398 | " height = 8, aspect=1/1)\n", 399 | "ax.set(title ='City MPG vs. Weight \\nPrice by color', # Give the plot a main title\n", 400 | " xlabel = 'City MPG', # Set text for the x axis\n", 401 | " ylabel = 'Vehcle Weight') # Set text for y axis " 402 | ] 403 | }, 404 | { 405 | "cell_type": "markdown", 406 | "metadata": {}, 407 | "source": [ 408 | "Examine the plot, noticing the general trend from the lower right to the upper left. The lowest weight, highest mileage, autos generally have the lowest price. The highest weight, lowest mileage, cars generally have the highest prices. Within these general trends there are some deviations, but the general trend is clear from the color progression of the palette. \n", 409 | "\n", 410 | "While it is hard to draw quantitative conclusions from color progressions, they can help show general trends. This can be done effectively with the correct choice of palette. Best choice of palette to highlight a relationship can take some experimentation. " 411 | ] 412 | }, 413 | { 414 | "cell_type": "markdown", 415 | "metadata": {}, 416 | "source": [ 417 | "### Marker Size\n", 418 | "\n", 419 | "Another aesthetic which is useful for quantitative variables is **marker size**. As with a well chosen color palette, used properly marker size can highlight important trends in complex datasets. " 420 | ] 421 | }, 422 | { 423 | "cell_type": "code", 424 | "execution_count": null, 425 | "metadata": {}, 426 | "outputs": [], 427 | "source": [ 428 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 429 | " hue = 'price', palette = 'magma',\n", 430 | " size = 'engine_size', sizes = (50.0, 400.0),\n", 431 | " data=auto_prices,\n", 432 | " height = 8, aspect=1/1)\n", 433 | "ax.set(title ='City MPG vs. Weight \\nPrice by marker size \\\n", 434 | " \\nAspiration by marker shape\\\n", 435 | " \\nFuel type by color', # Give the plot a main title\n", 436 | " xlabel = 'City MPG', # Set text for the x axis\n", 437 | " ylabel = 'Vehicle Weight') # Set text for y axis " 438 | ] 439 | }, 440 | { 441 | "cell_type": "markdown", 442 | "metadata": {}, 443 | "source": [ 444 | "Notice that the engine size generally increases with vehicle weight. " 445 | ] 446 | }, 447 | { 448 | "cell_type": "markdown", 449 | "metadata": {}, 450 | "source": [ 451 | "### Aspect Ratio\n", 452 | "\n", 453 | "Changing the aspect ratio has a significant influence on how a viewer perceives a chart. The correct aspect ratio can help highlight important relationships in complex datasets. Conversely, poorly chosen or exaggerated aspect ratios can greatly distort human perception of the data relationship displayed. \n", 454 | "\n", 455 | "We represent aspect ratio as follows: \n", 456 | "\n", 457 | "$$aspect\\ ratio = \\frac{width}{height}\\ : 1$$\n", 458 | "\n", 459 | "Let's look at an example of how aspect ratio can change our perception of a dataset. Execute the code in the cell below to load the sunspot data set and examining the head and tail of the data frame. **Make sure you have the .csv file in your working directory!**" 460 | ] 461 | }, 462 | { 463 | "cell_type": "code", 464 | "execution_count": null, 465 | "metadata": {}, 466 | "outputs": [], 467 | "source": [ 468 | "sunspots = pd.read_csv('sunspots.csv')\n", 469 | "sunspots.loc[:, 'date'] = pd.to_datetime(sunspots.loc[:, 'date'])\n", 470 | "sunspots.set_index('date', inplace = True)\n", 471 | "print(sunspots.head())\n", 472 | "print(sunspots.tail())" 473 | ] 474 | }, 475 | { 476 | "cell_type": "markdown", 477 | "metadata": {}, 478 | "source": [ 479 | "The sunspot data represents an extraordinarily long time series, of over 260 years. \n", 480 | "\n", 481 | "Execute the code in the cell below to make a time series (line) plot of these data with an aspect ratio of 1.33:1. " 482 | ] 483 | }, 484 | { 485 | "cell_type": "code", 486 | "execution_count": null, 487 | "metadata": {}, 488 | "outputs": [], 489 | "source": [ 490 | "ax = plt.figure(figsize=(8, 6)).gca() # define axis\n", 491 | "sunspots.plot(ax = ax)\n", 492 | "ax.set_xlabel('Year')\n", 493 | "ax.set_ylabel('Number of sunspots')\n", 494 | "ax.set_title('Time series of sunspots')" 495 | ] 496 | }, 497 | { 498 | "cell_type": "markdown", 499 | "metadata": {}, 500 | "source": [ 501 | "There are two points to notice about the time series displayed here:\n", 502 | "1. The number of sunspots is periodic in time. This is the well-known *sunspot cycle*.\n", 503 | "2. Given this aspect ratio, each cycle appears to be symmetric. \n", 504 | "\n", 505 | "But, what happens if we change the aspect ratio to 4:1. To find out, execute the code in the cell below." 506 | ] 507 | }, 508 | { 509 | "cell_type": "code", 510 | "execution_count": null, 511 | "metadata": {}, 512 | "outputs": [], 513 | "source": [ 514 | "ax = plt.figure(figsize=(8, 2)).gca() # define axis\n", 515 | "sunspots.plot(ax = ax)\n", 516 | "ax.set_xlabel('Year')\n", 517 | "ax.set_ylabel('Number of sunspots')\n", 518 | "ax.set_title('Time series of sunspots')" 519 | ] 520 | }, 521 | { 522 | "cell_type": "markdown", 523 | "metadata": {}, 524 | "source": [ 525 | "With the higher aspect ratio the plot looks rather different. You can now see that each cycle has a fast rise in the rate of sunspots generally followed by a slower fall or decay. This relationship was hard to perceive with the plot using lower aspect ratio." 526 | ] 527 | }, 528 | { 529 | "cell_type": "markdown", 530 | "metadata": {}, 531 | "source": [ 532 | ">**Your turn:** Try making scatter plots of vehicle weight vs. City MPG with an aspect ratio of 1:2 and 2:1. Notice how these changes affect your perception of the relationship between these variables." 533 | ] 534 | }, 535 | { 536 | "cell_type": "code", 537 | "execution_count": null, 538 | "metadata": {}, 539 | "outputs": [], 540 | "source": [] 541 | }, 542 | { 543 | "cell_type": "markdown", 544 | "metadata": {}, 545 | "source": [ 546 | "## Aesthetics with Limited Perceptive Power\n", 547 | "\n", 548 | "We have explored some aesthetics with which are easy to perceive, and therefore quite powerful. You may be surprised to learn that some commonly used plot aesthetics are not that easy to perceive, and may not add the insight the visualization creator thinks they might. " 549 | ] 550 | }, 551 | { 552 | "cell_type": "markdown", 553 | "metadata": {}, 554 | "source": [ 555 | "### Line Plots and Line Type\n", 556 | "\n", 557 | "Line plots are similar to point plots. In line plots the discrete points are connected by lines. It is common practice to use different pattern types to differentiate between lines on a graph. While this approach can be effective, it is only useful for a limited number of lines on one graph. The use of too many similar line pattern on one plot leads to viewer confusion and poor perception of the data relationships. In summary, line pattern can be effective, but only when used sparingly. \n", 558 | "\n", 559 | "The code in the cell below creates a dataframe using various transformations of the sunspot data. Execute the code and examine the resulting dataframe. " 560 | ] 561 | }, 562 | { 563 | "cell_type": "code", 564 | "execution_count": null, 565 | "metadata": { 566 | "scrolled": true 567 | }, 568 | "outputs": [], 569 | "source": [ 570 | "sunspot_mean = sunspots.mean()[0]\n", 571 | "y1 = [z/sunspot_mean for z in sunspots.spots]\n", 572 | "y2 = [log(z + 0.01) for z in y1]\n", 573 | "y3 = [1.0/(z + 0.1) for z in y1]\n", 574 | "y4 = [sqrt(z) for z in y1]\n", 575 | "df = pd.DataFrame({'Date':sunspots.index,'Normalized':y1, 'Log':y2, 'Inverse':y3, 'Sqrt':y4})\n", 576 | "df.head()" 577 | ] 578 | }, 579 | { 580 | "cell_type": "markdown", 581 | "metadata": {}, 582 | "source": [ 583 | "Now, we will make a time series plot of these transformed variables using a different line type for each variable. You can find choices for [matplotlib line styles in the documentation](https://matplotlib.org/3.1.0/gallery/lines_bars_and_markers/linestyles.html).\n", 584 | "\n", 585 | "To display the plot with the 4 line types, execute the code in the cell below. Notice that the linewidth argument has been set to 1, since it is easier for the human eye to separate thiner lines." 586 | ] 587 | }, 588 | { 589 | "cell_type": "code", 590 | "execution_count": null, 591 | "metadata": {}, 592 | "outputs": [], 593 | "source": [ 594 | "styles = [':','-.','--','-']\n", 595 | "#lables = ['Normalized','log(x)','1/x','sqrt(x)']\n", 596 | "\n", 597 | "fig = plt.figure(figsize=(8, 4)) # define plot area\n", 598 | "ax = fig.gca() # define axis \n", 599 | "temp = df[(df['Date'] > '1900-01-01') & (df['Date'] <= '1919-12-01')]\n", 600 | "for col, style in zip(temp[['Normalized','Log','Inverse','Sqrt']], styles): \n", 601 | " ax.plot(temp.Date, temp[col], linestyle = style, color = 'b', label=(col+'(sunspots)'), linewidth=1)\n", 602 | "ax.set_title('Line plot of transformed sunspot data \\nwith multiple line types') # Give the plot a main title\n", 603 | "ax.set_xlabel('x values') # Set text for the x axis\n", 604 | "ax.set_ylabel('y values')# Set text for y axis \n", 605 | "ax.legend()" 606 | ] 607 | }, 608 | { 609 | "cell_type": "markdown", 610 | "metadata": {}, 611 | "source": [ 612 | "Examine the plot above and notice that with just 4 types, the lines on the plot are distinct. This is event the case for the normalize sunspots and the square root of the normalized sunspots, which run quite close together. Adding too many line types to a plot such as the above will cause perception problems for the viewer. \n", 613 | "\n", 614 | "In principle, a combination of color and line type can be used to make lines distinct. However, this method must be used cautiously. The result can easily be *line spaghetti* which is difficult to understand, at best. " 615 | ] 616 | }, 617 | { 618 | "cell_type": "markdown", 619 | "metadata": {}, 620 | "source": [ 621 | "### Qualitative Color Palettes\n", 622 | "\n", 623 | "Qualitative (or categorical) color palettes are often used to visualize categorical data. If the number of categories are few and the colors chosen are distinctive, this method can be effective. However, for more than a few categories, or if the choice of color is poor, this method is not effective. The result is often a confusing array or symbols with hard to distinguish colors, which will confound the understanding of the viewer. \n", 624 | "\n", 625 | "As an example where a qualitative palette works well consider the scatter plot shown below. There are only two categories and the colors are quite distinctive. " 626 | ] 627 | }, 628 | { 629 | "cell_type": "code", 630 | "execution_count": null, 631 | "metadata": {}, 632 | "outputs": [], 633 | "source": [ 634 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 635 | " hue = 'fuel_type', \n", 636 | " data=auto_prices,\n", 637 | " height = 8, aspect=1/1)\n", 638 | "ax.set(title ='City MPG vs. Weight \\\n", 639 | " \\nFule type by color', # Give the plot a main title\n", 640 | " xlabel = 'City MPG', # Set text for the x axis\n", 641 | " ylabel = 'Vehicle Weight') # Set text for y axis " 642 | ] 643 | }, 644 | { 645 | "cell_type": "markdown", 646 | "metadata": {}, 647 | "source": [ 648 | "We can easily see the distinctive relationships for both gas and diesel fueled cars. Using a few categorical colors from a well chosen pallet can be quite effective. \n", 649 | "\n", 650 | "But, what happens if there are a larger number of categories. To find out, execute the code in the cell below which displays the make of the auto by categorical color. " 651 | ] 652 | }, 653 | { 654 | "cell_type": "code", 655 | "execution_count": null, 656 | "metadata": {}, 657 | "outputs": [], 658 | "source": [ 659 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 660 | " hue = 'make', \n", 661 | " data=auto_prices,\n", 662 | " height = 8, aspect=1/1)\n", 663 | "ax.set(title ='City MPG vs. Weight \\\n", 664 | " \\nMake by color', # Give the plot a main title\n", 665 | " xlabel = 'City MPG', # Set text for the x axis\n", 666 | " ylabel = 'Vehicle Weight') # Set text for y axis " 667 | ] 668 | }, 669 | { 670 | "cell_type": "markdown", 671 | "metadata": {}, 672 | "source": [ 673 | "### Marker Shape\n", 674 | "\n", 675 | "Marker shape is another commonly used plot aesthetic for displaying categorical relationships. As with qualitative color palettes, this aesthetic is only useful when two conditions are met:\n", 676 | "1. The number of categories is small.\n", 677 | "2. Distinctive shape are chosen for the markers.\n", 678 | "\n", 679 | "The code in the cell below uses the relplot method from the Seaborn package to plot a aspiration as a marker type. Execute this code and examine the results. " 680 | ] 681 | }, 682 | { 683 | "cell_type": "code", 684 | "execution_count": null, 685 | "metadata": {}, 686 | "outputs": [], 687 | "source": [ 688 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 689 | " style = 'aspiration', \n", 690 | " hue = 'fuel_type',\n", 691 | " data=auto_prices,\n", 692 | " height = 8, aspect=1/1)\n", 693 | "ax.set(title ='City MPG vs. Weight \\\n", 694 | " \\nAspiration by marker shape\\\n", 695 | " \\nFuel type by color', # Give the plot a main title\n", 696 | " xlabel = 'City MPG', # Set text for the x axis\n", 697 | " ylabel = 'Vehicle Weight') # Set text for y axis " 698 | ] 699 | }, 700 | { 701 | "cell_type": "markdown", 702 | "metadata": {}, 703 | "source": [ 704 | "The resulting plot above takes a bit of study to see any useful relationship. Several relationships can be noticed:\n", 705 | "1. For the gas cars, it is clear that for the most part, only cars in the middle of the weight and fuel economy range have turbo aspiration. \n", 706 | "2. Most diesel cars have turbo aspiration. \n", 707 | "\n", 708 | "It is clear that without the color coding of the fuel type these interpretations could not be found. This illustrates a key aspect of visualization for complex data. Very often **multiple plot attributes are needed to understand relationships**. \n", 709 | "\n", 710 | "To see an example of a plot with too many categories, execute the code in the cell below which uses marker type to display engine type. " 711 | ] 712 | }, 713 | { 714 | "cell_type": "code", 715 | "execution_count": null, 716 | "metadata": {}, 717 | "outputs": [], 718 | "source": [ 719 | "ax = sns.relplot(x = 'city_mpg', y = 'curb_weight', \n", 720 | " style = 'engine_type',\n", 721 | " hue = 'fuel_type',\n", 722 | " data=auto_prices,\n", 723 | " height = 8, aspect=1/1)\n", 724 | "ax.set(title ='City MPG vs. Weight \\\n", 725 | " \\nEngine type by marker shape\\\n", 726 | " \\nFuel type by color', # Give the plot a main title\n", 727 | " xlabel = 'City MPG', # Set text for the x axis\n", 728 | " ylabel = 'Vehicle Weight') # Set text for y axis " 729 | ] 730 | }, 731 | { 732 | "cell_type": "markdown", 733 | "metadata": {}, 734 | "source": [ 735 | "It is nearly impossible to understand the relationship between the markers in the plot above. " 736 | ] 737 | }, 738 | { 739 | "cell_type": "markdown", 740 | "metadata": {}, 741 | "source": [ 742 | "## Side by Side and Facet Plots\n", 743 | "\n", 744 | "We have explored some basic plot aesthetics and attributes to effectively project key relationships of complex data. Now we will investigate the use of multiple plot axes to highlight relationships in complex datasets. The key idea is that often it is better to have a series of simpler plots showing different projections or subsets of a dataset than a single complex and hard to perceive chart. Complex charts with many colors, markers, line times, etc. displaying a large number of data values can be confusing at best and imperceptible at worse. \n", 745 | "\n", 746 | "There are many possibilities for showing subsets or projections of complex datasets. We will look at three of these. All of these methods use axes with the same scale. Using the same scale is important to ensure correct perception of the relationships in the data. \n", 747 | "1. Side by side plots of subsets of the the data can be used to show relationships between subsets of a complex dataset. Specifically, we will use side-by-side **violin plots** to examine differences in the empirical distribution of subsets of the data sets \n", 748 | "2. **Pairwise scatter plots** allow you to display a matrix of all pairwise combinations of variables. Other relationships and plot aesthetics can be added to these plots. \n", 749 | "3. A technique known as **faceting**. Faceting involves using values of categorical or numeric variables to create a systematic grid of related plots. Faceting goes by several other monikers, including **conditional plotting**, the **method of small multiples** or **lattice plotting**. \n" 750 | ] 751 | }, 752 | { 753 | "cell_type": "markdown", 754 | "metadata": {}, 755 | "source": [ 756 | "\n", 757 | "### Violin plots\n", 758 | "\n", 759 | "Now, we will use Seaborn to create a violin plot. A violin plot uses a kernel density estimation plot around a vertical line. The violin plots can be stacked, with a group by operation. This layout allows the viewer to make comparisons between the subsets of the dataset.\n", 760 | "\n", 761 | "Execute the code in the cell below and examine the results." 762 | ] 763 | }, 764 | { 765 | "cell_type": "code", 766 | "execution_count": null, 767 | "metadata": {}, 768 | "outputs": [], 769 | "source": [ 770 | "fig = plt.figure(figsize=(8,8)) # define plot area\n", 771 | "ax = fig.gca() # define axis \n", 772 | "sns.set_style(\"whitegrid\")\n", 773 | "sns.violinplot(x = 'engine_type', y = 'price', data = auto_prices, ax = ax)\n", 774 | "ax.set_title('Violine plots of auto engine size by fuel type') # Give the plot a main title\n", 775 | "ax.set_xlabel('Engine type') # Set text for the x axis\n", 776 | "ax.set_ylabel('Price')# Set text for y axis" 777 | ] 778 | }, 779 | { 780 | "cell_type": "markdown", 781 | "metadata": {}, 782 | "source": [ 783 | "Using this plot you can compare the distribution of price of the autos subset by the auto engine type. " 784 | ] 785 | }, 786 | { 787 | "cell_type": "markdown", 788 | "metadata": {}, 789 | "source": [ 790 | "### Pair wise plots\n", 791 | "\n", 792 | "Pair wise plots, also know as plot matrices, allow viewing of multiple dimensions of a data set on one plot. A scatter plot is shown of each variable versus all other variables, arranged in an array. Another type of plot, such as a KDE plot, can be shown for each pair of variables. Other plot types can be placed along the diagonal of the array. \n", 793 | "\n", 794 | "Code to create a pair wise scatter plot for certain variables in the auto price data set is shown in the cell below. The recipe is:\n", 795 | "\n", 796 | "- Define a list of the columns we wish to display.\n", 797 | "- Use the Seaborn ``pairplot`` method to display the pairwise scatter plots of the subset of the pandas data frame or numpy array. The ``map_upper`` method is used to add KDE plots to the upper part of the plot array. \n", 798 | "- An argument to ``pairplot`` defines a color palette.\n", 799 | "- An argument to ``pairplot`` defines KDE plots be placed along the diagonal of the array. \n", 800 | "\n", 801 | "Execute this code to display the pair wise plot array." 802 | ] 803 | }, 804 | { 805 | "cell_type": "code", 806 | "execution_count": null, 807 | "metadata": {}, 808 | "outputs": [], 809 | "source": [ 810 | "num_cols = [\"length\", \"curb_weight\", \"engine_size\", \"horsepower\", \"city_mpg\", \"price\", \"fuel_type\"] \n", 811 | "sns.pairplot(auto_prices[num_cols], hue='fuel_type', palette=\"Set2\", diag_kind=\"kde\", size=2).map_upper(sns.kdeplot, cmap=\"Blues_d\")" 812 | ] 813 | }, 814 | { 815 | "cell_type": "markdown", 816 | "metadata": {}, 817 | "source": [ 818 | "There is a great deal of information on the above plot. Examine this plot, noticing at least the following:\n", 819 | "\n", 820 | "- There are KDE plots grouped by fuel type for each of the variables specified. \n", 821 | "- Autos with larger length, curb weight, engine size, and horse power are more expensive.\n", 822 | "- Cars with higher curb weights tend to be longer and have larger engines. \n", 823 | "- Longer, heavier cars, have larger engines, or more horsepower and are less fuel efficient. \n", 824 | "\n", 825 | "Notice, that the understanding a pairwise set of plots can be difficult. With too many variables, interpretation may become infeasible. " 826 | ] 827 | }, 828 | { 829 | "cell_type": "markdown", 830 | "metadata": {}, 831 | "source": [ 832 | "### Facet plots\n", 833 | "\n", 834 | "In the previous example, we created an array of plots by explicitly defining the axes or subplots. The Seaborn package allows us to create the same time of faceted plots with much less code, but with a bit less control. The code in the cell below does just this, following this recipe:\n", 835 | "\n", 836 | "- A ``FacetGrid`` is defined for the data set. In this case we have only one facet (group by variable), across columns and one facet across the rows. \n", 837 | "- The ``map`` method is applied to the facet grid with a plot type specified.\n", 838 | "- In this case, the plot type uses the ``regplot`` method to create a scatter plot. \n", 839 | "\n", 840 | "Execute the code in the cell below and examine the result." 841 | ] 842 | }, 843 | { 844 | "cell_type": "code", 845 | "execution_count": null, 846 | "metadata": {}, 847 | "outputs": [], 848 | "source": [ 849 | "g = sns.FacetGrid(auto_prices, col=\"drive_wheels\", \n", 850 | " row = 'body_style', hue = 'fuel_type', \n", 851 | " palette=\"Set2\", margin_titles=True)\n", 852 | "g.map(sns.regplot, 'horsepower', 'price', fit_reg = False)" 853 | ] 854 | }, 855 | { 856 | "cell_type": "markdown", 857 | "metadata": {}, 858 | "source": [ 859 | "Notice that we are now projecting 5 dimensions of our data onto the 2-d plotting surface. With the small number of data samples it is difficult to make specific observations. But you can notice a few significant differences between these subsets of the dataset. \n", 860 | "\n", 861 | "Consider that with a dataset with a much larger number of data samples these subsets will be much easier to understand. Further, the plots will be far less cluttered with only subsets of the data in the subplots. " 862 | ] 863 | }, 864 | { 865 | "cell_type": "markdown", 866 | "metadata": {}, 867 | "source": [ 868 | ">**Your turn:** Try some other facet plots. As a first example, make scatter plots using other facet variables like fuel_type and aspiration. Or, as another example, make violin plots of price by fuel_type using drive_wheels of body_style as a facet variable. Note that some of these facet groups will not have any data. " 869 | ] 870 | }, 871 | { 872 | "cell_type": "code", 873 | "execution_count": null, 874 | "metadata": {}, 875 | "outputs": [], 876 | "source": [] 877 | }, 878 | { 879 | "cell_type": "markdown", 880 | "metadata": { 881 | "collapsed": true 882 | }, 883 | "source": [ 884 | "## Summary\n", 885 | "\n", 886 | "We have covered a lot of ground in this tutorial. We have learned quite a bit about the relationships in the auto price data set by creating multiple views to visualize these data. \n", 887 | "\n", 888 | "Specifically, in this tutorial we have:\n", 889 | "\n", 890 | "- Examined the use of plot aesthetics and attributes with good for human perception characteristics.\n", 891 | "- Investigated how plot aesthetics which have poor perception qualities can be effectively used if used cautiously. \n", 892 | "- How plot arrays for subsets of data can be used to provide multiple views for complex data sets. \n", 893 | "\n", 894 | "Finally, **have fun exploring your data!**" 895 | ] 896 | }, 897 | { 898 | "cell_type": "markdown", 899 | "metadata": { 900 | "collapsed": true 901 | }, 902 | "source": [ 903 | "#### Copyright 2019, Stephen F Elston. All rights reserved. " 904 | ] 905 | } 906 | ], 907 | "metadata": { 908 | "anaconda-cloud": {}, 909 | "kernelspec": { 910 | "display_name": "Python 3", 911 | "language": "python", 912 | "name": "python3" 913 | }, 914 | "language_info": { 915 | "codemirror_mode": { 916 | "name": "ipython", 917 | "version": 3 918 | }, 919 | "file_extension": ".py", 920 | "mimetype": "text/x-python", 921 | "name": "python", 922 | "nbconvert_exporter": "python", 923 | "pygments_lexer": "ipython3", 924 | "version": "3.7.3" 925 | } 926 | }, 927 | "nbformat": 4, 928 | "nbformat_minor": 1 929 | } 930 | -------------------------------------------------------------------------------- /PerceptionAndVisualization/img/Cleveland.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PerceptionAndVisualization/img/Cleveland.jpg -------------------------------------------------------------------------------- /PerceptionAndVisualization/img/Tufte.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PerceptionAndVisualization/img/Tufte.jpg -------------------------------------------------------------------------------- /PerceptionAndVisualization/img/Tukey.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PerceptionAndVisualization/img/Tukey.jpg -------------------------------------------------------------------------------- /PerceptionAndVisualization/img/logo.288981a8dfa8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PerceptionAndVisualization/img/logo.288981a8dfa8.png -------------------------------------------------------------------------------- /PerceptionAndVisualization/sunspots.csv: -------------------------------------------------------------------------------- 1 | "date","spots" 2 | Jan 1749,58 3 | Feb 1749,62.6 4 | Mar 1749,70 5 | Apr 1749,55.7 6 | May 1749,85 7 | Jun 1749,83.5 8 | Jul 1749,94.8 9 | Aug 1749,66.3 10 | Sep 1749,75.9 11 | Oct 1749,75.5 12 | Nov 1749,158.6 13 | Dec 1749,85.2 14 | Jan 1750,73.3 15 | Feb 1750,75.9 16 | Mar 1750,89.2 17 | Apr 1750,88.3 18 | May 1750,90 19 | Jun 1750,100 20 | Jul 1750,85.4 21 | Aug 1750,103 22 | Sep 1750,91.2 23 | Oct 1750,65.7 24 | Nov 1750,63.3 25 | Dec 1750,75.4 26 | Jan 1751,70 27 | Feb 1751,43.5 28 | Mar 1751,45.3 29 | Apr 1751,56.4 30 | May 1751,60.7 31 | Jun 1751,50.7 32 | Jul 1751,66.3 33 | Aug 1751,59.8 34 | Sep 1751,23.5 35 | Oct 1751,23.2 36 | Nov 1751,28.5 37 | Dec 1751,44 38 | Jan 1752,35 39 | Feb 1752,50 40 | Mar 1752,71 41 | Apr 1752,59.3 42 | May 1752,59.7 43 | Jun 1752,39.6 44 | Jul 1752,78.4 45 | Aug 1752,29.3 46 | Sep 1752,27.1 47 | Oct 1752,46.6 48 | Nov 1752,37.6 49 | Dec 1752,40 50 | Jan 1753,44 51 | Feb 1753,32 52 | Mar 1753,45.7 53 | Apr 1753,38 54 | May 1753,36 55 | Jun 1753,31.7 56 | Jul 1753,22 57 | Aug 1753,39 58 | Sep 1753,28 59 | Oct 1753,25 60 | Nov 1753,20 61 | Dec 1753,6.7 62 | Jan 1754,0 63 | Feb 1754,3 64 | Mar 1754,1.7 65 | Apr 1754,13.7 66 | May 1754,20.7 67 | Jun 1754,26.7 68 | Jul 1754,18.8 69 | Aug 1754,12.3 70 | Sep 1754,8.2 71 | Oct 1754,24.1 72 | Nov 1754,13.2 73 | Dec 1754,4.2 74 | Jan 1755,10.2 75 | Feb 1755,11.2 76 | Mar 1755,6.8 77 | Apr 1755,6.5 78 | May 1755,0 79 | Jun 1755,0 80 | Jul 1755,8.6 81 | Aug 1755,3.2 82 | Sep 1755,17.8 83 | Oct 1755,23.7 84 | Nov 1755,6.8 85 | Dec 1755,20 86 | Jan 1756,12.5 87 | Feb 1756,7.1 88 | Mar 1756,5.4 89 | Apr 1756,9.4 90 | May 1756,12.5 91 | Jun 1756,12.9 92 | Jul 1756,3.6 93 | Aug 1756,6.4 94 | Sep 1756,11.8 95 | Oct 1756,14.3 96 | Nov 1756,17 97 | Dec 1756,9.4 98 | Jan 1757,14.1 99 | Feb 1757,21.2 100 | Mar 1757,26.2 101 | Apr 1757,30 102 | May 1757,38.1 103 | Jun 1757,12.8 104 | Jul 1757,25 105 | Aug 1757,51.3 106 | Sep 1757,39.7 107 | Oct 1757,32.5 108 | Nov 1757,64.7 109 | Dec 1757,33.5 110 | Jan 1758,37.6 111 | Feb 1758,52 112 | Mar 1758,49 113 | Apr 1758,72.3 114 | May 1758,46.4 115 | Jun 1758,45 116 | Jul 1758,44 117 | Aug 1758,38.7 118 | Sep 1758,62.5 119 | Oct 1758,37.7 120 | Nov 1758,43 121 | Dec 1758,43 122 | Jan 1759,48.3 123 | Feb 1759,44 124 | Mar 1759,46.8 125 | Apr 1759,47 126 | May 1759,49 127 | Jun 1759,50 128 | Jul 1759,51 129 | Aug 1759,71.3 130 | Sep 1759,77.2 131 | Oct 1759,59.7 132 | Nov 1759,46.3 133 | Dec 1759,57 134 | Jan 1760,67.3 135 | Feb 1760,59.5 136 | Mar 1760,74.7 137 | Apr 1760,58.3 138 | May 1760,72 139 | Jun 1760,48.3 140 | Jul 1760,66 141 | Aug 1760,75.6 142 | Sep 1760,61.3 143 | Oct 1760,50.6 144 | Nov 1760,59.7 145 | Dec 1760,61 146 | Jan 1761,70 147 | Feb 1761,91 148 | Mar 1761,80.7 149 | Apr 1761,71.7 150 | May 1761,107.2 151 | Jun 1761,99.3 152 | Jul 1761,94.1 153 | Aug 1761,91.1 154 | Sep 1761,100.7 155 | Oct 1761,88.7 156 | Nov 1761,89.7 157 | Dec 1761,46 158 | Jan 1762,43.8 159 | Feb 1762,72.8 160 | Mar 1762,45.7 161 | Apr 1762,60.2 162 | May 1762,39.9 163 | Jun 1762,77.1 164 | Jul 1762,33.8 165 | Aug 1762,67.7 166 | Sep 1762,68.5 167 | Oct 1762,69.3 168 | Nov 1762,77.8 169 | Dec 1762,77.2 170 | Jan 1763,56.5 171 | Feb 1763,31.9 172 | Mar 1763,34.2 173 | Apr 1763,32.9 174 | May 1763,32.7 175 | Jun 1763,35.8 176 | Jul 1763,54.2 177 | Aug 1763,26.5 178 | Sep 1763,68.1 179 | Oct 1763,46.3 180 | Nov 1763,60.9 181 | Dec 1763,61.4 182 | Jan 1764,59.7 183 | Feb 1764,59.7 184 | Mar 1764,40.2 185 | Apr 1764,34.4 186 | May 1764,44.3 187 | Jun 1764,30 188 | Jul 1764,30 189 | Aug 1764,30 190 | Sep 1764,28.2 191 | Oct 1764,28 192 | Nov 1764,26 193 | Dec 1764,25.7 194 | Jan 1765,24 195 | Feb 1765,26 196 | Mar 1765,25 197 | Apr 1765,22 198 | May 1765,20.2 199 | Jun 1765,20 200 | Jul 1765,27 201 | Aug 1765,29.7 202 | Sep 1765,16 203 | Oct 1765,14 204 | Nov 1765,14 205 | Dec 1765,13 206 | Jan 1766,12 207 | Feb 1766,11 208 | Mar 1766,36.6 209 | Apr 1766,6 210 | May 1766,26.8 211 | Jun 1766,3 212 | Jul 1766,3.3 213 | Aug 1766,4 214 | Sep 1766,4.3 215 | Oct 1766,5 216 | Nov 1766,5.7 217 | Dec 1766,19.2 218 | Jan 1767,27.4 219 | Feb 1767,30 220 | Mar 1767,43 221 | Apr 1767,32.9 222 | May 1767,29.8 223 | Jun 1767,33.3 224 | Jul 1767,21.9 225 | Aug 1767,40.8 226 | Sep 1767,42.7 227 | Oct 1767,44.1 228 | Nov 1767,54.7 229 | Dec 1767,53.3 230 | Jan 1768,53.5 231 | Feb 1768,66.1 232 | Mar 1768,46.3 233 | Apr 1768,42.7 234 | May 1768,77.7 235 | Jun 1768,77.4 236 | Jul 1768,52.6 237 | Aug 1768,66.8 238 | Sep 1768,74.8 239 | Oct 1768,77.8 240 | Nov 1768,90.6 241 | Dec 1768,111.8 242 | Jan 1769,73.9 243 | Feb 1769,64.2 244 | Mar 1769,64.3 245 | Apr 1769,96.7 246 | May 1769,73.6 247 | Jun 1769,94.4 248 | Jul 1769,118.6 249 | Aug 1769,120.3 250 | Sep 1769,148.8 251 | Oct 1769,158.2 252 | Nov 1769,148.1 253 | Dec 1769,112 254 | Jan 1770,104 255 | Feb 1770,142.5 256 | Mar 1770,80.1 257 | Apr 1770,51 258 | May 1770,70.1 259 | Jun 1770,83.3 260 | Jul 1770,109.8 261 | Aug 1770,126.3 262 | Sep 1770,104.4 263 | Oct 1770,103.6 264 | Nov 1770,132.2 265 | Dec 1770,102.3 266 | Jan 1771,36 267 | Feb 1771,46.2 268 | Mar 1771,46.7 269 | Apr 1771,64.9 270 | May 1771,152.7 271 | Jun 1771,119.5 272 | Jul 1771,67.7 273 | Aug 1771,58.5 274 | Sep 1771,101.4 275 | Oct 1771,90 276 | Nov 1771,99.7 277 | Dec 1771,95.7 278 | Jan 1772,100.9 279 | Feb 1772,90.8 280 | Mar 1772,31.1 281 | Apr 1772,92.2 282 | May 1772,38 283 | Jun 1772,57 284 | Jul 1772,77.3 285 | Aug 1772,56.2 286 | Sep 1772,50.5 287 | Oct 1772,78.6 288 | Nov 1772,61.3 289 | Dec 1772,64 290 | Jan 1773,54.6 291 | Feb 1773,29 292 | Mar 1773,51.2 293 | Apr 1773,32.9 294 | May 1773,41.1 295 | Jun 1773,28.4 296 | Jul 1773,27.7 297 | Aug 1773,12.7 298 | Sep 1773,29.3 299 | Oct 1773,26.3 300 | Nov 1773,40.9 301 | Dec 1773,43.2 302 | Jan 1774,46.8 303 | Feb 1774,65.4 304 | Mar 1774,55.7 305 | Apr 1774,43.8 306 | May 1774,51.3 307 | Jun 1774,28.5 308 | Jul 1774,17.5 309 | Aug 1774,6.6 310 | Sep 1774,7.9 311 | Oct 1774,14 312 | Nov 1774,17.7 313 | Dec 1774,12.2 314 | Jan 1775,4.4 315 | Feb 1775,0 316 | Mar 1775,11.6 317 | Apr 1775,11.2 318 | May 1775,3.9 319 | Jun 1775,12.3 320 | Jul 1775,1 321 | Aug 1775,7.9 322 | Sep 1775,3.2 323 | Oct 1775,5.6 324 | Nov 1775,15.1 325 | Dec 1775,7.9 326 | Jan 1776,21.7 327 | Feb 1776,11.6 328 | Mar 1776,6.3 329 | Apr 1776,21.8 330 | May 1776,11.2 331 | Jun 1776,19 332 | Jul 1776,1 333 | Aug 1776,24.2 334 | Sep 1776,16 335 | Oct 1776,30 336 | Nov 1776,35 337 | Dec 1776,40 338 | Jan 1777,45 339 | Feb 1777,36.5 340 | Mar 1777,39 341 | Apr 1777,95.5 342 | May 1777,80.3 343 | Jun 1777,80.7 344 | Jul 1777,95 345 | Aug 1777,112 346 | Sep 1777,116.2 347 | Oct 1777,106.5 348 | Nov 1777,146 349 | Dec 1777,157.3 350 | Jan 1778,177.3 351 | Feb 1778,109.3 352 | Mar 1778,134 353 | Apr 1778,145 354 | May 1778,238.9 355 | Jun 1778,171.6 356 | Jul 1778,153 357 | Aug 1778,140 358 | Sep 1778,171.7 359 | Oct 1778,156.3 360 | Nov 1778,150.3 361 | Dec 1778,105 362 | Jan 1779,114.7 363 | Feb 1779,165.7 364 | Mar 1779,118 365 | Apr 1779,145 366 | May 1779,140 367 | Jun 1779,113.7 368 | Jul 1779,143 369 | Aug 1779,112 370 | Sep 1779,111 371 | Oct 1779,124 372 | Nov 1779,114 373 | Dec 1779,110 374 | Jan 1780,70 375 | Feb 1780,98 376 | Mar 1780,98 377 | Apr 1780,95 378 | May 1780,107.2 379 | Jun 1780,88 380 | Jul 1780,86 381 | Aug 1780,86 382 | Sep 1780,93.7 383 | Oct 1780,77 384 | Nov 1780,60 385 | Dec 1780,58.7 386 | Jan 1781,98.7 387 | Feb 1781,74.7 388 | Mar 1781,53 389 | Apr 1781,68.3 390 | May 1781,104.7 391 | Jun 1781,97.7 392 | Jul 1781,73.5 393 | Aug 1781,66 394 | Sep 1781,51 395 | Oct 1781,27.3 396 | Nov 1781,67 397 | Dec 1781,35.2 398 | Jan 1782,54 399 | Feb 1782,37.5 400 | Mar 1782,37 401 | Apr 1782,41 402 | May 1782,54.3 403 | Jun 1782,38 404 | Jul 1782,37 405 | Aug 1782,44 406 | Sep 1782,34 407 | Oct 1782,23.2 408 | Nov 1782,31.5 409 | Dec 1782,30 410 | Jan 1783,28 411 | Feb 1783,38.7 412 | Mar 1783,26.7 413 | Apr 1783,28.3 414 | May 1783,23 415 | Jun 1783,25.2 416 | Jul 1783,32.2 417 | Aug 1783,20 418 | Sep 1783,18 419 | Oct 1783,8 420 | Nov 1783,15 421 | Dec 1783,10.5 422 | Jan 1784,13 423 | Feb 1784,8 424 | Mar 1784,11 425 | Apr 1784,10 426 | May 1784,6 427 | Jun 1784,9 428 | Jul 1784,6 429 | Aug 1784,10 430 | Sep 1784,10 431 | Oct 1784,8 432 | Nov 1784,17 433 | Dec 1784,14 434 | Jan 1785,6.5 435 | Feb 1785,8 436 | Mar 1785,9 437 | Apr 1785,15.7 438 | May 1785,20.7 439 | Jun 1785,26.3 440 | Jul 1785,36.3 441 | Aug 1785,20 442 | Sep 1785,32 443 | Oct 1785,47.2 444 | Nov 1785,40.2 445 | Dec 1785,27.3 446 | Jan 1786,37.2 447 | Feb 1786,47.6 448 | Mar 1786,47.7 449 | Apr 1786,85.4 450 | May 1786,92.3 451 | Jun 1786,59 452 | Jul 1786,83 453 | Aug 1786,89.7 454 | Sep 1786,111.5 455 | Oct 1786,112.3 456 | Nov 1786,116 457 | Dec 1786,112.7 458 | Jan 1787,134.7 459 | Feb 1787,106 460 | Mar 1787,87.4 461 | Apr 1787,127.2 462 | May 1787,134.8 463 | Jun 1787,99.2 464 | Jul 1787,128 465 | Aug 1787,137.2 466 | Sep 1787,157.3 467 | Oct 1787,157 468 | Nov 1787,141.5 469 | Dec 1787,174 470 | Jan 1788,138 471 | Feb 1788,129.2 472 | Mar 1788,143.3 473 | Apr 1788,108.5 474 | May 1788,113 475 | Jun 1788,154.2 476 | Jul 1788,141.5 477 | Aug 1788,136 478 | Sep 1788,141 479 | Oct 1788,142 480 | Nov 1788,94.7 481 | Dec 1788,129.5 482 | Jan 1789,114 483 | Feb 1789,125.3 484 | Mar 1789,120 485 | Apr 1789,123.3 486 | May 1789,123.5 487 | Jun 1789,120 488 | Jul 1789,117 489 | Aug 1789,103 490 | Sep 1789,112 491 | Oct 1789,89.7 492 | Nov 1789,134 493 | Dec 1789,135.5 494 | Jan 1790,103 495 | Feb 1790,127.5 496 | Mar 1790,96.3 497 | Apr 1790,94 498 | May 1790,93 499 | Jun 1790,91 500 | Jul 1790,69.3 501 | Aug 1790,87 502 | Sep 1790,77.3 503 | Oct 1790,84.3 504 | Nov 1790,82 505 | Dec 1790,74 506 | Jan 1791,72.7 507 | Feb 1791,62 508 | Mar 1791,74 509 | Apr 1791,77.2 510 | May 1791,73.7 511 | Jun 1791,64.2 512 | Jul 1791,71 513 | Aug 1791,43 514 | Sep 1791,66.5 515 | Oct 1791,61.7 516 | Nov 1791,67 517 | Dec 1791,66 518 | Jan 1792,58 519 | Feb 1792,64 520 | Mar 1792,63 521 | Apr 1792,75.7 522 | May 1792,62 523 | Jun 1792,61 524 | Jul 1792,45.8 525 | Aug 1792,60 526 | Sep 1792,59 527 | Oct 1792,59 528 | Nov 1792,57 529 | Dec 1792,56 530 | Jan 1793,56 531 | Feb 1793,55 532 | Mar 1793,55.5 533 | Apr 1793,53 534 | May 1793,52.3 535 | Jun 1793,51 536 | Jul 1793,50 537 | Aug 1793,29.3 538 | Sep 1793,24 539 | Oct 1793,47 540 | Nov 1793,44 541 | Dec 1793,45.7 542 | Jan 1794,45 543 | Feb 1794,44 544 | Mar 1794,38 545 | Apr 1794,28.4 546 | May 1794,55.7 547 | Jun 1794,41.5 548 | Jul 1794,41 549 | Aug 1794,40 550 | Sep 1794,11.1 551 | Oct 1794,28.5 552 | Nov 1794,67.4 553 | Dec 1794,51.4 554 | Jan 1795,21.4 555 | Feb 1795,39.9 556 | Mar 1795,12.6 557 | Apr 1795,18.6 558 | May 1795,31 559 | Jun 1795,17.1 560 | Jul 1795,12.9 561 | Aug 1795,25.7 562 | Sep 1795,13.5 563 | Oct 1795,19.5 564 | Nov 1795,25 565 | Dec 1795,18 566 | Jan 1796,22 567 | Feb 1796,23.8 568 | Mar 1796,15.7 569 | Apr 1796,31.7 570 | May 1796,21 571 | Jun 1796,6.7 572 | Jul 1796,26.9 573 | Aug 1796,1.5 574 | Sep 1796,18.4 575 | Oct 1796,11 576 | Nov 1796,8.4 577 | Dec 1796,5.1 578 | Jan 1797,14.4 579 | Feb 1797,4.2 580 | Mar 1797,4 581 | Apr 1797,4 582 | May 1797,7.3 583 | Jun 1797,11.1 584 | Jul 1797,4.3 585 | Aug 1797,6 586 | Sep 1797,5.7 587 | Oct 1797,6.9 588 | Nov 1797,5.8 589 | Dec 1797,3 590 | Jan 1798,2 591 | Feb 1798,4 592 | Mar 1798,12.4 593 | Apr 1798,1.1 594 | May 1798,0 595 | Jun 1798,0 596 | Jul 1798,0 597 | Aug 1798,3 598 | Sep 1798,2.4 599 | Oct 1798,1.5 600 | Nov 1798,12.5 601 | Dec 1798,9.9 602 | Jan 1799,1.6 603 | Feb 1799,12.6 604 | Mar 1799,21.7 605 | Apr 1799,8.4 606 | May 1799,8.2 607 | Jun 1799,10.6 608 | Jul 1799,2.1 609 | Aug 1799,0 610 | Sep 1799,0 611 | Oct 1799,4.6 612 | Nov 1799,2.7 613 | Dec 1799,8.6 614 | Jan 1800,6.9 615 | Feb 1800,9.3 616 | Mar 1800,13.9 617 | Apr 1800,0 618 | May 1800,5 619 | Jun 1800,23.7 620 | Jul 1800,21 621 | Aug 1800,19.5 622 | Sep 1800,11.5 623 | Oct 1800,12.3 624 | Nov 1800,10.5 625 | Dec 1800,40.1 626 | Jan 1801,27 627 | Feb 1801,29 628 | Mar 1801,30 629 | Apr 1801,31 630 | May 1801,32 631 | Jun 1801,31.2 632 | Jul 1801,35 633 | Aug 1801,38.7 634 | Sep 1801,33.5 635 | Oct 1801,32.6 636 | Nov 1801,39.8 637 | Dec 1801,48.2 638 | Jan 1802,47.8 639 | Feb 1802,47 640 | Mar 1802,40.8 641 | Apr 1802,42 642 | May 1802,44 643 | Jun 1802,46 644 | Jul 1802,48 645 | Aug 1802,50 646 | Sep 1802,51.8 647 | Oct 1802,38.5 648 | Nov 1802,34.5 649 | Dec 1802,50 650 | Jan 1803,50 651 | Feb 1803,50.8 652 | Mar 1803,29.5 653 | Apr 1803,25 654 | May 1803,44.3 655 | Jun 1803,36 656 | Jul 1803,48.3 657 | Aug 1803,34.1 658 | Sep 1803,45.3 659 | Oct 1803,54.3 660 | Nov 1803,51 661 | Dec 1803,48 662 | Jan 1804,45.3 663 | Feb 1804,48.3 664 | Mar 1804,48 665 | Apr 1804,50.6 666 | May 1804,33.4 667 | Jun 1804,34.8 668 | Jul 1804,29.8 669 | Aug 1804,43.1 670 | Sep 1804,53 671 | Oct 1804,62.3 672 | Nov 1804,61 673 | Dec 1804,60 674 | Jan 1805,61 675 | Feb 1805,44.1 676 | Mar 1805,51.4 677 | Apr 1805,37.5 678 | May 1805,39 679 | Jun 1805,40.5 680 | Jul 1805,37.6 681 | Aug 1805,42.7 682 | Sep 1805,44.4 683 | Oct 1805,29.4 684 | Nov 1805,41 685 | Dec 1805,38.3 686 | Jan 1806,39 687 | Feb 1806,29.6 688 | Mar 1806,32.7 689 | Apr 1806,27.7 690 | May 1806,26.4 691 | Jun 1806,25.6 692 | Jul 1806,30 693 | Aug 1806,26.3 694 | Sep 1806,24 695 | Oct 1806,27 696 | Nov 1806,25 697 | Dec 1806,24 698 | Jan 1807,12 699 | Feb 1807,12.2 700 | Mar 1807,9.6 701 | Apr 1807,23.8 702 | May 1807,10 703 | Jun 1807,12 704 | Jul 1807,12.7 705 | Aug 1807,12 706 | Sep 1807,5.7 707 | Oct 1807,8 708 | Nov 1807,2.6 709 | Dec 1807,0 710 | Jan 1808,0 711 | Feb 1808,4.5 712 | Mar 1808,0 713 | Apr 1808,12.3 714 | May 1808,13.5 715 | Jun 1808,13.5 716 | Jul 1808,6.7 717 | Aug 1808,8 718 | Sep 1808,11.7 719 | Oct 1808,4.7 720 | Nov 1808,10.5 721 | Dec 1808,12.3 722 | Jan 1809,7.2 723 | Feb 1809,9.2 724 | Mar 1809,0.9 725 | Apr 1809,2.5 726 | May 1809,2 727 | Jun 1809,7.7 728 | Jul 1809,0.3 729 | Aug 1809,0.2 730 | Sep 1809,0.4 731 | Oct 1809,0 732 | Nov 1809,0 733 | Dec 1809,0 734 | Jan 1810,0 735 | Feb 1810,0 736 | Mar 1810,0 737 | Apr 1810,0 738 | May 1810,0 739 | Jun 1810,0 740 | Jul 1810,0 741 | Aug 1810,0 742 | Sep 1810,0 743 | Oct 1810,0 744 | Nov 1810,0 745 | Dec 1810,0 746 | Jan 1811,0 747 | Feb 1811,0 748 | Mar 1811,0 749 | Apr 1811,0 750 | May 1811,0 751 | Jun 1811,0 752 | Jul 1811,6.6 753 | Aug 1811,0 754 | Sep 1811,2.4 755 | Oct 1811,6.1 756 | Nov 1811,0.8 757 | Dec 1811,1.1 758 | Jan 1812,11.3 759 | Feb 1812,1.9 760 | Mar 1812,0.7 761 | Apr 1812,0 762 | May 1812,1 763 | Jun 1812,1.3 764 | Jul 1812,0.5 765 | Aug 1812,15.6 766 | Sep 1812,5.2 767 | Oct 1812,3.9 768 | Nov 1812,7.9 769 | Dec 1812,10.1 770 | Jan 1813,0 771 | Feb 1813,10.3 772 | Mar 1813,1.9 773 | Apr 1813,16.6 774 | May 1813,5.5 775 | Jun 1813,11.2 776 | Jul 1813,18.3 777 | Aug 1813,8.4 778 | Sep 1813,15.3 779 | Oct 1813,27.8 780 | Nov 1813,16.7 781 | Dec 1813,14.3 782 | Jan 1814,22.2 783 | Feb 1814,12 784 | Mar 1814,5.7 785 | Apr 1814,23.8 786 | May 1814,5.8 787 | Jun 1814,14.9 788 | Jul 1814,18.5 789 | Aug 1814,2.3 790 | Sep 1814,8.1 791 | Oct 1814,19.3 792 | Nov 1814,14.5 793 | Dec 1814,20.1 794 | Jan 1815,19.2 795 | Feb 1815,32.2 796 | Mar 1815,26.2 797 | Apr 1815,31.6 798 | May 1815,9.8 799 | Jun 1815,55.9 800 | Jul 1815,35.5 801 | Aug 1815,47.2 802 | Sep 1815,31.5 803 | Oct 1815,33.5 804 | Nov 1815,37.2 805 | Dec 1815,65 806 | Jan 1816,26.3 807 | Feb 1816,68.8 808 | Mar 1816,73.7 809 | Apr 1816,58.8 810 | May 1816,44.3 811 | Jun 1816,43.6 812 | Jul 1816,38.8 813 | Aug 1816,23.2 814 | Sep 1816,47.8 815 | Oct 1816,56.4 816 | Nov 1816,38.1 817 | Dec 1816,29.9 818 | Jan 1817,36.4 819 | Feb 1817,57.9 820 | Mar 1817,96.2 821 | Apr 1817,26.4 822 | May 1817,21.2 823 | Jun 1817,40 824 | Jul 1817,50 825 | Aug 1817,45 826 | Sep 1817,36.7 827 | Oct 1817,25.6 828 | Nov 1817,28.9 829 | Dec 1817,28.4 830 | Jan 1818,34.9 831 | Feb 1818,22.4 832 | Mar 1818,25.4 833 | Apr 1818,34.5 834 | May 1818,53.1 835 | Jun 1818,36.4 836 | Jul 1818,28 837 | Aug 1818,31.5 838 | Sep 1818,26.1 839 | Oct 1818,31.6 840 | Nov 1818,10.9 841 | Dec 1818,25.8 842 | Jan 1819,32.8 843 | Feb 1819,20.7 844 | Mar 1819,3.7 845 | Apr 1819,20.2 846 | May 1819,19.6 847 | Jun 1819,35 848 | Jul 1819,31.4 849 | Aug 1819,26.1 850 | Sep 1819,14.9 851 | Oct 1819,27.5 852 | Nov 1819,25.1 853 | Dec 1819,30.6 854 | Jan 1820,19.2 855 | Feb 1820,26.6 856 | Mar 1820,4.5 857 | Apr 1820,19.4 858 | May 1820,29.3 859 | Jun 1820,10.8 860 | Jul 1820,20.6 861 | Aug 1820,25.9 862 | Sep 1820,5.2 863 | Oct 1820,8.9 864 | Nov 1820,7.9 865 | Dec 1820,9.1 866 | Jan 1821,21.5 867 | Feb 1821,4.2 868 | Mar 1821,5.7 869 | Apr 1821,9.2 870 | May 1821,1.7 871 | Jun 1821,1.8 872 | Jul 1821,2.5 873 | Aug 1821,4.8 874 | Sep 1821,4.4 875 | Oct 1821,18.8 876 | Nov 1821,4.4 877 | Dec 1821,0.2 878 | Jan 1822,0 879 | Feb 1822,0.9 880 | Mar 1822,16.1 881 | Apr 1822,13.5 882 | May 1822,1.5 883 | Jun 1822,5.6 884 | Jul 1822,7.9 885 | Aug 1822,2.1 886 | Sep 1822,0 887 | Oct 1822,0.4 888 | Nov 1822,0 889 | Dec 1822,0 890 | Jan 1823,0 891 | Feb 1823,0 892 | Mar 1823,0.6 893 | Apr 1823,0 894 | May 1823,0 895 | Jun 1823,0 896 | Jul 1823,0.5 897 | Aug 1823,0 898 | Sep 1823,0 899 | Oct 1823,0 900 | Nov 1823,0 901 | Dec 1823,20.4 902 | Jan 1824,21.7 903 | Feb 1824,10.8 904 | Mar 1824,0 905 | Apr 1824,19.4 906 | May 1824,2.8 907 | Jun 1824,0 908 | Jul 1824,0 909 | Aug 1824,1.4 910 | Sep 1824,20.5 911 | Oct 1824,25.2 912 | Nov 1824,0 913 | Dec 1824,0.8 914 | Jan 1825,5 915 | Feb 1825,15.5 916 | Mar 1825,22.4 917 | Apr 1825,3.8 918 | May 1825,15.5 919 | Jun 1825,15.4 920 | Jul 1825,30.9 921 | Aug 1825,25.7 922 | Sep 1825,15.7 923 | Oct 1825,15.6 924 | Nov 1825,11.7 925 | Dec 1825,22 926 | Jan 1826,17.7 927 | Feb 1826,18.2 928 | Mar 1826,36.7 929 | Apr 1826,24 930 | May 1826,32.4 931 | Jun 1826,37.1 932 | Jul 1826,52.5 933 | Aug 1826,39.6 934 | Sep 1826,18.9 935 | Oct 1826,50.6 936 | Nov 1826,39.5 937 | Dec 1826,68.1 938 | Jan 1827,34.6 939 | Feb 1827,47.4 940 | Mar 1827,57.8 941 | Apr 1827,46 942 | May 1827,56.3 943 | Jun 1827,56.7 944 | Jul 1827,42.3 945 | Aug 1827,53.7 946 | Sep 1827,49.6 947 | Oct 1827,56.1 948 | Nov 1827,48.2 949 | Dec 1827,46.1 950 | Jan 1828,52.8 951 | Feb 1828,64.4 952 | Mar 1828,65 953 | Apr 1828,61.1 954 | May 1828,89.1 955 | Jun 1828,98 956 | Jul 1828,54.2 957 | Aug 1828,76.4 958 | Sep 1828,50.4 959 | Oct 1828,54.7 960 | Nov 1828,57 961 | Dec 1828,46.9 962 | Jan 1829,43 963 | Feb 1829,49.4 964 | Mar 1829,72.3 965 | Apr 1829,95 966 | May 1829,67.4 967 | Jun 1829,73.9 968 | Jul 1829,90.8 969 | Aug 1829,77.6 970 | Sep 1829,52.8 971 | Oct 1829,57.2 972 | Nov 1829,67.6 973 | Dec 1829,56.5 974 | Jan 1830,52.2 975 | Feb 1830,72.1 976 | Mar 1830,84.6 977 | Apr 1830,106.3 978 | May 1830,66.3 979 | Jun 1830,65.1 980 | Jul 1830,43.9 981 | Aug 1830,50.7 982 | Sep 1830,62.1 983 | Oct 1830,84.4 984 | Nov 1830,81.2 985 | Dec 1830,82.1 986 | Jan 1831,47.5 987 | Feb 1831,50.1 988 | Mar 1831,93.4 989 | Apr 1831,54.5 990 | May 1831,38.1 991 | Jun 1831,33.4 992 | Jul 1831,45.2 993 | Aug 1831,55 994 | Sep 1831,37.9 995 | Oct 1831,46.3 996 | Nov 1831,43.5 997 | Dec 1831,28.9 998 | Jan 1832,30.9 999 | Feb 1832,55.6 1000 | Mar 1832,55.1 1001 | Apr 1832,26.9 1002 | May 1832,41.3 1003 | Jun 1832,26.7 1004 | Jul 1832,14 1005 | Aug 1832,8.9 1006 | Sep 1832,8.2 1007 | Oct 1832,21.1 1008 | Nov 1832,14.3 1009 | Dec 1832,27.5 1010 | Jan 1833,11.3 1011 | Feb 1833,14.9 1012 | Mar 1833,11.8 1013 | Apr 1833,2.8 1014 | May 1833,12.9 1015 | Jun 1833,1 1016 | Jul 1833,7 1017 | Aug 1833,5.7 1018 | Sep 1833,11.6 1019 | Oct 1833,7.5 1020 | Nov 1833,5.9 1021 | Dec 1833,9.9 1022 | Jan 1834,4.9 1023 | Feb 1834,18.1 1024 | Mar 1834,3.9 1025 | Apr 1834,1.4 1026 | May 1834,8.8 1027 | Jun 1834,7.8 1028 | Jul 1834,8.7 1029 | Aug 1834,4 1030 | Sep 1834,11.5 1031 | Oct 1834,24.8 1032 | Nov 1834,30.5 1033 | Dec 1834,34.5 1034 | Jan 1835,7.5 1035 | Feb 1835,24.5 1036 | Mar 1835,19.7 1037 | Apr 1835,61.5 1038 | May 1835,43.6 1039 | Jun 1835,33.2 1040 | Jul 1835,59.8 1041 | Aug 1835,59 1042 | Sep 1835,100.8 1043 | Oct 1835,95.2 1044 | Nov 1835,100 1045 | Dec 1835,77.5 1046 | Jan 1836,88.6 1047 | Feb 1836,107.6 1048 | Mar 1836,98.2 1049 | Apr 1836,142.9 1050 | May 1836,111.4 1051 | Jun 1836,124.7 1052 | Jul 1836,116.7 1053 | Aug 1836,107.8 1054 | Sep 1836,95.1 1055 | Oct 1836,137.4 1056 | Nov 1836,120.9 1057 | Dec 1836,206.2 1058 | Jan 1837,188 1059 | Feb 1837,175.6 1060 | Mar 1837,134.6 1061 | Apr 1837,138.2 1062 | May 1837,111.7 1063 | Jun 1837,158 1064 | Jul 1837,162.8 1065 | Aug 1837,134 1066 | Sep 1837,96.3 1067 | Oct 1837,123.7 1068 | Nov 1837,107 1069 | Dec 1837,129.8 1070 | Jan 1838,144.9 1071 | Feb 1838,84.8 1072 | Mar 1838,140.8 1073 | Apr 1838,126.6 1074 | May 1838,137.6 1075 | Jun 1838,94.5 1076 | Jul 1838,108.2 1077 | Aug 1838,78.8 1078 | Sep 1838,73.6 1079 | Oct 1838,90.8 1080 | Nov 1838,77.4 1081 | Dec 1838,79.8 1082 | Jan 1839,105.6 1083 | Feb 1839,102.5 1084 | Mar 1839,77.7 1085 | Apr 1839,61.8 1086 | May 1839,53.8 1087 | Jun 1839,54.6 1088 | Jul 1839,84.8 1089 | Aug 1839,131.2 1090 | Sep 1839,132.7 1091 | Oct 1839,90.9 1092 | Nov 1839,68.8 1093 | Dec 1839,63.7 1094 | Jan 1840,81.2 1095 | Feb 1840,87.7 1096 | Mar 1840,67.8 1097 | Apr 1840,65.9 1098 | May 1840,69.2 1099 | Jun 1840,48.5 1100 | Jul 1840,60.7 1101 | Aug 1840,57.8 1102 | Sep 1840,74 1103 | Oct 1840,55 1104 | Nov 1840,54.3 1105 | Dec 1840,53.7 1106 | Jan 1841,24.1 1107 | Feb 1841,29.9 1108 | Mar 1841,29.7 1109 | Apr 1841,40.2 1110 | May 1841,67.5 1111 | Jun 1841,55.7 1112 | Jul 1841,30.8 1113 | Aug 1841,39.3 1114 | Sep 1841,36.5 1115 | Oct 1841,28.5 1116 | Nov 1841,19.8 1117 | Dec 1841,38.8 1118 | Jan 1842,20.4 1119 | Feb 1842,22.1 1120 | Mar 1842,21.7 1121 | Apr 1842,26.9 1122 | May 1842,24.9 1123 | Jun 1842,20.5 1124 | Jul 1842,12.6 1125 | Aug 1842,26.6 1126 | Sep 1842,18.4 1127 | Oct 1842,38.1 1128 | Nov 1842,40.5 1129 | Dec 1842,17.6 1130 | Jan 1843,13.3 1131 | Feb 1843,3.5 1132 | Mar 1843,8.3 1133 | Apr 1843,9.5 1134 | May 1843,21.1 1135 | Jun 1843,10.5 1136 | Jul 1843,9.5 1137 | Aug 1843,11.8 1138 | Sep 1843,4.2 1139 | Oct 1843,5.3 1140 | Nov 1843,19.1 1141 | Dec 1843,12.7 1142 | Jan 1844,9.4 1143 | Feb 1844,14.7 1144 | Mar 1844,13.6 1145 | Apr 1844,20.8 1146 | May 1844,11.6 1147 | Jun 1844,3.7 1148 | Jul 1844,21.2 1149 | Aug 1844,23.9 1150 | Sep 1844,7 1151 | Oct 1844,21.5 1152 | Nov 1844,10.7 1153 | Dec 1844,21.6 1154 | Jan 1845,25.7 1155 | Feb 1845,43.6 1156 | Mar 1845,43.3 1157 | Apr 1845,57 1158 | May 1845,47.8 1159 | Jun 1845,31.1 1160 | Jul 1845,30.6 1161 | Aug 1845,32.3 1162 | Sep 1845,29.6 1163 | Oct 1845,40.7 1164 | Nov 1845,39.4 1165 | Dec 1845,59.7 1166 | Jan 1846,38.7 1167 | Feb 1846,51 1168 | Mar 1846,63.9 1169 | Apr 1846,69.3 1170 | May 1846,59.9 1171 | Jun 1846,65.1 1172 | Jul 1846,46.5 1173 | Aug 1846,54.8 1174 | Sep 1846,107.1 1175 | Oct 1846,55.9 1176 | Nov 1846,60.4 1177 | Dec 1846,65.5 1178 | Jan 1847,62.6 1179 | Feb 1847,44.9 1180 | Mar 1847,85.7 1181 | Apr 1847,44.7 1182 | May 1847,75.4 1183 | Jun 1847,85.3 1184 | Jul 1847,52.2 1185 | Aug 1847,140.6 1186 | Sep 1847,160.9 1187 | Oct 1847,180.4 1188 | Nov 1847,138.9 1189 | Dec 1847,109.6 1190 | Jan 1848,159.1 1191 | Feb 1848,111.8 1192 | Mar 1848,108.6 1193 | Apr 1848,107.1 1194 | May 1848,102.2 1195 | Jun 1848,129 1196 | Jul 1848,139.2 1197 | Aug 1848,132.6 1198 | Sep 1848,100.3 1199 | Oct 1848,132.4 1200 | Nov 1848,114.6 1201 | Dec 1848,159.5 1202 | Jan 1849,157 1203 | Feb 1849,131.8 1204 | Mar 1849,96.2 1205 | Apr 1849,102.5 1206 | May 1849,80.6 1207 | Jun 1849,81.1 1208 | Jul 1849,78 1209 | Aug 1849,67.7 1210 | Sep 1849,93.7 1211 | Oct 1849,71.5 1212 | Nov 1849,99 1213 | Dec 1849,97 1214 | Jan 1850,78 1215 | Feb 1850,89.4 1216 | Mar 1850,82.6 1217 | Apr 1850,44.1 1218 | May 1850,61.6 1219 | Jun 1850,70 1220 | Jul 1850,39.1 1221 | Aug 1850,61.6 1222 | Sep 1850,86.2 1223 | Oct 1850,71 1224 | Nov 1850,54.8 1225 | Dec 1850,61 1226 | Jan 1851,75.5 1227 | Feb 1851,105.4 1228 | Mar 1851,64.6 1229 | Apr 1851,56.5 1230 | May 1851,62.6 1231 | Jun 1851,63.2 1232 | Jul 1851,36.1 1233 | Aug 1851,57.4 1234 | Sep 1851,67.9 1235 | Oct 1851,62.5 1236 | Nov 1851,51 1237 | Dec 1851,71.4 1238 | Jan 1852,68.4 1239 | Feb 1852,66.4 1240 | Mar 1852,61.2 1241 | Apr 1852,65.4 1242 | May 1852,54.9 1243 | Jun 1852,46.9 1244 | Jul 1852,42.1 1245 | Aug 1852,39.7 1246 | Sep 1852,37.5 1247 | Oct 1852,67.3 1248 | Nov 1852,54.3 1249 | Dec 1852,45.4 1250 | Jan 1853,41.1 1251 | Feb 1853,42.9 1252 | Mar 1853,37.7 1253 | Apr 1853,47.6 1254 | May 1853,34.7 1255 | Jun 1853,40 1256 | Jul 1853,45.9 1257 | Aug 1853,50.5 1258 | Sep 1853,33.5 1259 | Oct 1853,42.4 1260 | Nov 1853,28.8 1261 | Dec 1853,23.4 1262 | Jan 1854,15.4 1263 | Feb 1854,20 1264 | Mar 1854,20.7 1265 | Apr 1854,26.5 1266 | May 1854,24 1267 | Jun 1854,21.1 1268 | Jul 1854,18.7 1269 | Aug 1854,15.8 1270 | Sep 1854,22.4 1271 | Oct 1854,12.6 1272 | Nov 1854,28.2 1273 | Dec 1854,21.6 1274 | Jan 1855,12.3 1275 | Feb 1855,11.4 1276 | Mar 1855,17.4 1277 | Apr 1855,4.4 1278 | May 1855,9.1 1279 | Jun 1855,5.3 1280 | Jul 1855,0.4 1281 | Aug 1855,3.1 1282 | Sep 1855,0 1283 | Oct 1855,9.6 1284 | Nov 1855,4.2 1285 | Dec 1855,3.1 1286 | Jan 1856,0.5 1287 | Feb 1856,4.9 1288 | Mar 1856,0.4 1289 | Apr 1856,6.5 1290 | May 1856,0 1291 | Jun 1856,5.2 1292 | Jul 1856,4.6 1293 | Aug 1856,5.9 1294 | Sep 1856,4.4 1295 | Oct 1856,4.5 1296 | Nov 1856,7.7 1297 | Dec 1856,7.2 1298 | Jan 1857,13.7 1299 | Feb 1857,7.4 1300 | Mar 1857,5.2 1301 | Apr 1857,11.1 1302 | May 1857,28.5 1303 | Jun 1857,16 1304 | Jul 1857,22.2 1305 | Aug 1857,16.9 1306 | Sep 1857,42.4 1307 | Oct 1857,40.6 1308 | Nov 1857,31.4 1309 | Dec 1857,37.2 1310 | Jan 1858,39 1311 | Feb 1858,34.9 1312 | Mar 1858,57.5 1313 | Apr 1858,38.3 1314 | May 1858,41.4 1315 | Jun 1858,44.5 1316 | Jul 1858,56.7 1317 | Aug 1858,55.3 1318 | Sep 1858,80.1 1319 | Oct 1858,91.2 1320 | Nov 1858,51.9 1321 | Dec 1858,66.9 1322 | Jan 1859,83.7 1323 | Feb 1859,87.6 1324 | Mar 1859,90.3 1325 | Apr 1859,85.7 1326 | May 1859,91 1327 | Jun 1859,87.1 1328 | Jul 1859,95.2 1329 | Aug 1859,106.8 1330 | Sep 1859,105.8 1331 | Oct 1859,114.6 1332 | Nov 1859,97.2 1333 | Dec 1859,81 1334 | Jan 1860,82.4 1335 | Feb 1860,88.3 1336 | Mar 1860,98.9 1337 | Apr 1860,71.4 1338 | May 1860,107.1 1339 | Jun 1860,108.6 1340 | Jul 1860,116.7 1341 | Aug 1860,100.3 1342 | Sep 1860,92.2 1343 | Oct 1860,90.1 1344 | Nov 1860,97.9 1345 | Dec 1860,95.6 1346 | Jan 1861,62.3 1347 | Feb 1861,77.7 1348 | Mar 1861,101 1349 | Apr 1861,98.5 1350 | May 1861,56.8 1351 | Jun 1861,88.1 1352 | Jul 1861,78 1353 | Aug 1861,82.5 1354 | Sep 1861,79.9 1355 | Oct 1861,67.2 1356 | Nov 1861,53.7 1357 | Dec 1861,80.5 1358 | Jan 1862,63.1 1359 | Feb 1862,64.5 1360 | Mar 1862,43.6 1361 | Apr 1862,53.7 1362 | May 1862,64.4 1363 | Jun 1862,84 1364 | Jul 1862,73.4 1365 | Aug 1862,62.5 1366 | Sep 1862,66.6 1367 | Oct 1862,41.9 1368 | Nov 1862,50.6 1369 | Dec 1862,40.9 1370 | Jan 1863,48.3 1371 | Feb 1863,56.7 1372 | Mar 1863,66.4 1373 | Apr 1863,40.6 1374 | May 1863,53.8 1375 | Jun 1863,40.8 1376 | Jul 1863,32.7 1377 | Aug 1863,48.1 1378 | Sep 1863,22 1379 | Oct 1863,39.9 1380 | Nov 1863,37.7 1381 | Dec 1863,41.2 1382 | Jan 1864,57.7 1383 | Feb 1864,47.1 1384 | Mar 1864,66.3 1385 | Apr 1864,35.8 1386 | May 1864,40.6 1387 | Jun 1864,57.8 1388 | Jul 1864,54.7 1389 | Aug 1864,54.8 1390 | Sep 1864,28.5 1391 | Oct 1864,33.9 1392 | Nov 1864,57.6 1393 | Dec 1864,28.6 1394 | Jan 1865,48.7 1395 | Feb 1865,39.3 1396 | Mar 1865,39.5 1397 | Apr 1865,29.4 1398 | May 1865,34.5 1399 | Jun 1865,33.6 1400 | Jul 1865,26.8 1401 | Aug 1865,37.8 1402 | Sep 1865,21.6 1403 | Oct 1865,17.1 1404 | Nov 1865,24.6 1405 | Dec 1865,12.8 1406 | Jan 1866,31.6 1407 | Feb 1866,38.4 1408 | Mar 1866,24.5 1409 | Apr 1866,17.6 1410 | May 1866,12.9 1411 | Jun 1866,16.5 1412 | Jul 1866,9.3 1413 | Aug 1866,12.7 1414 | Sep 1866,7.3 1415 | Oct 1866,14.1 1416 | Nov 1866,9 1417 | Dec 1866,1.5 1418 | Jan 1867,0 1419 | Feb 1867,0.7 1420 | Mar 1867,9.2 1421 | Apr 1867,5.1 1422 | May 1867,2.9 1423 | Jun 1867,1.5 1424 | Jul 1867,5 1425 | Aug 1867,4.8 1426 | Sep 1867,9.8 1427 | Oct 1867,13.5 1428 | Nov 1867,9.6 1429 | Dec 1867,25.2 1430 | Jan 1868,15.5 1431 | Feb 1868,15.7 1432 | Mar 1868,26.5 1433 | Apr 1868,36.6 1434 | May 1868,26.7 1435 | Jun 1868,31.1 1436 | Jul 1868,29 1437 | Aug 1868,34.4 1438 | Sep 1868,47.2 1439 | Oct 1868,61.6 1440 | Nov 1868,59.1 1441 | Dec 1868,67.6 1442 | Jan 1869,60.9 1443 | Feb 1869,59.9 1444 | Mar 1869,52.7 1445 | Apr 1869,41 1446 | May 1869,103.9 1447 | Jun 1869,108.4 1448 | Jul 1869,59.2 1449 | Aug 1869,79.6 1450 | Sep 1869,80.6 1451 | Oct 1869,59.3 1452 | Nov 1869,78.1 1453 | Dec 1869,104.4 1454 | Jan 1870,77.3 1455 | Feb 1870,114.9 1456 | Mar 1870,157.5 1457 | Apr 1870,160 1458 | May 1870,176 1459 | Jun 1870,135.6 1460 | Jul 1870,132.4 1461 | Aug 1870,153.8 1462 | Sep 1870,136 1463 | Oct 1870,146.4 1464 | Nov 1870,147.5 1465 | Dec 1870,130 1466 | Jan 1871,88.3 1467 | Feb 1871,125.3 1468 | Mar 1871,143.2 1469 | Apr 1871,162.4 1470 | May 1871,145.5 1471 | Jun 1871,91.7 1472 | Jul 1871,103 1473 | Aug 1871,110.1 1474 | Sep 1871,80.3 1475 | Oct 1871,89 1476 | Nov 1871,105.4 1477 | Dec 1871,90.4 1478 | Jan 1872,79.5 1479 | Feb 1872,120.1 1480 | Mar 1872,88.4 1481 | Apr 1872,102.1 1482 | May 1872,107.6 1483 | Jun 1872,109.9 1484 | Jul 1872,105.5 1485 | Aug 1872,92.9 1486 | Sep 1872,114.6 1487 | Oct 1872,102.6 1488 | Nov 1872,112 1489 | Dec 1872,83.9 1490 | Jan 1873,86.7 1491 | Feb 1873,107 1492 | Mar 1873,98.3 1493 | Apr 1873,76.2 1494 | May 1873,47.9 1495 | Jun 1873,44.8 1496 | Jul 1873,66.9 1497 | Aug 1873,68.2 1498 | Sep 1873,47.1 1499 | Oct 1873,47.1 1500 | Nov 1873,55.4 1501 | Dec 1873,49.2 1502 | Jan 1874,60.8 1503 | Feb 1874,64.2 1504 | Mar 1874,46.4 1505 | Apr 1874,32 1506 | May 1874,44.6 1507 | Jun 1874,38.2 1508 | Jul 1874,67.8 1509 | Aug 1874,61.3 1510 | Sep 1874,28 1511 | Oct 1874,34.3 1512 | Nov 1874,28.9 1513 | Dec 1874,29.3 1514 | Jan 1875,14.6 1515 | Feb 1875,21.5 1516 | Mar 1875,33.8 1517 | Apr 1875,29.1 1518 | May 1875,11.5 1519 | Jun 1875,23.9 1520 | Jul 1875,12.5 1521 | Aug 1875,14.6 1522 | Sep 1875,2.4 1523 | Oct 1875,12.7 1524 | Nov 1875,17.7 1525 | Dec 1875,9.9 1526 | Jan 1876,14.3 1527 | Feb 1876,15 1528 | Mar 1876,30.6 1529 | Apr 1876,2.3 1530 | May 1876,5.1 1531 | Jun 1876,1.6 1532 | Jul 1876,15.2 1533 | Aug 1876,8.8 1534 | Sep 1876,9.9 1535 | Oct 1876,14.3 1536 | Nov 1876,9.9 1537 | Dec 1876,8.2 1538 | Jan 1877,24.4 1539 | Feb 1877,8.7 1540 | Mar 1877,11.9 1541 | Apr 1877,15.8 1542 | May 1877,21.6 1543 | Jun 1877,14.2 1544 | Jul 1877,6 1545 | Aug 1877,6.3 1546 | Sep 1877,16.9 1547 | Oct 1877,6.7 1548 | Nov 1877,14.2 1549 | Dec 1877,2.2 1550 | Jan 1878,3.3 1551 | Feb 1878,6.6 1552 | Mar 1878,7.8 1553 | Apr 1878,0.1 1554 | May 1878,5.9 1555 | Jun 1878,6.4 1556 | Jul 1878,0.1 1557 | Aug 1878,0 1558 | Sep 1878,5.3 1559 | Oct 1878,1.1 1560 | Nov 1878,4.1 1561 | Dec 1878,0.5 1562 | Jan 1879,1 1563 | Feb 1879,0.6 1564 | Mar 1879,0 1565 | Apr 1879,6.2 1566 | May 1879,2.4 1567 | Jun 1879,4.8 1568 | Jul 1879,7.5 1569 | Aug 1879,10.7 1570 | Sep 1879,6.1 1571 | Oct 1879,12.3 1572 | Nov 1879,13.1 1573 | Dec 1879,7.3 1574 | Jan 1880,24 1575 | Feb 1880,27.2 1576 | Mar 1880,19.3 1577 | Apr 1880,19.5 1578 | May 1880,23.5 1579 | Jun 1880,34.1 1580 | Jul 1880,21.9 1581 | Aug 1880,48.1 1582 | Sep 1880,66 1583 | Oct 1880,43 1584 | Nov 1880,30.7 1585 | Dec 1880,29.6 1586 | Jan 1881,36.4 1587 | Feb 1881,53.2 1588 | Mar 1881,51.5 1589 | Apr 1881,51.6 1590 | May 1881,43.5 1591 | Jun 1881,60.5 1592 | Jul 1881,76.9 1593 | Aug 1881,58.4 1594 | Sep 1881,53.2 1595 | Oct 1881,64.4 1596 | Nov 1881,54.8 1597 | Dec 1881,47.3 1598 | Jan 1882,45 1599 | Feb 1882,69.5 1600 | Mar 1882,66.8 1601 | Apr 1882,95.8 1602 | May 1882,64.1 1603 | Jun 1882,45.2 1604 | Jul 1882,45.4 1605 | Aug 1882,40.4 1606 | Sep 1882,57.7 1607 | Oct 1882,59.2 1608 | Nov 1882,84.4 1609 | Dec 1882,41.8 1610 | Jan 1883,60.6 1611 | Feb 1883,46.9 1612 | Mar 1883,42.8 1613 | Apr 1883,82.1 1614 | May 1883,31.5 1615 | Jun 1883,76.3 1616 | Jul 1883,80.6 1617 | Aug 1883,46 1618 | Sep 1883,52.6 1619 | Oct 1883,83.8 1620 | Nov 1883,84.5 1621 | Dec 1883,75.9 1622 | Jan 1884,91.5 1623 | Feb 1884,86.9 1624 | Mar 1884,87.5 1625 | Apr 1884,76.1 1626 | May 1884,66.5 1627 | Jun 1884,51.2 1628 | Jul 1884,53.1 1629 | Aug 1884,55.8 1630 | Sep 1884,61.9 1631 | Oct 1884,47.8 1632 | Nov 1884,36.6 1633 | Dec 1884,47.2 1634 | Jan 1885,42.8 1635 | Feb 1885,71.8 1636 | Mar 1885,49.8 1637 | Apr 1885,55 1638 | May 1885,73 1639 | Jun 1885,83.7 1640 | Jul 1885,66.5 1641 | Aug 1885,50 1642 | Sep 1885,39.6 1643 | Oct 1885,38.7 1644 | Nov 1885,30.9 1645 | Dec 1885,21.7 1646 | Jan 1886,29.9 1647 | Feb 1886,25.9 1648 | Mar 1886,57.3 1649 | Apr 1886,43.7 1650 | May 1886,30.7 1651 | Jun 1886,27.1 1652 | Jul 1886,30.3 1653 | Aug 1886,16.9 1654 | Sep 1886,21.4 1655 | Oct 1886,8.6 1656 | Nov 1886,0.3 1657 | Dec 1886,13 1658 | Jan 1887,10.3 1659 | Feb 1887,13.2 1660 | Mar 1887,4.2 1661 | Apr 1887,6.9 1662 | May 1887,20 1663 | Jun 1887,15.7 1664 | Jul 1887,23.4 1665 | Aug 1887,21.4 1666 | Sep 1887,7.4 1667 | Oct 1887,6.6 1668 | Nov 1887,6.9 1669 | Dec 1887,20.7 1670 | Jan 1888,12.7 1671 | Feb 1888,7.1 1672 | Mar 1888,7.8 1673 | Apr 1888,5.1 1674 | May 1888,7 1675 | Jun 1888,7.1 1676 | Jul 1888,3.1 1677 | Aug 1888,2.8 1678 | Sep 1888,8.8 1679 | Oct 1888,2.1 1680 | Nov 1888,10.7 1681 | Dec 1888,6.7 1682 | Jan 1889,0.8 1683 | Feb 1889,8.5 1684 | Mar 1889,6.7 1685 | Apr 1889,4.3 1686 | May 1889,2.4 1687 | Jun 1889,6.4 1688 | Jul 1889,9.4 1689 | Aug 1889,20.6 1690 | Sep 1889,6.5 1691 | Oct 1889,2.1 1692 | Nov 1889,0.2 1693 | Dec 1889,6.7 1694 | Jan 1890,5.3 1695 | Feb 1890,0.6 1696 | Mar 1890,5.1 1697 | Apr 1890,1.6 1698 | May 1890,4.8 1699 | Jun 1890,1.3 1700 | Jul 1890,11.6 1701 | Aug 1890,8.5 1702 | Sep 1890,17.2 1703 | Oct 1890,11.2 1704 | Nov 1890,9.6 1705 | Dec 1890,7.8 1706 | Jan 1891,13.5 1707 | Feb 1891,22.2 1708 | Mar 1891,10.4 1709 | Apr 1891,20.5 1710 | May 1891,41.1 1711 | Jun 1891,48.3 1712 | Jul 1891,58.8 1713 | Aug 1891,33 1714 | Sep 1891,53.8 1715 | Oct 1891,51.5 1716 | Nov 1891,41.9 1717 | Dec 1891,32.5 1718 | Jan 1892,69.1 1719 | Feb 1892,75.6 1720 | Mar 1892,49.9 1721 | Apr 1892,69.6 1722 | May 1892,79.6 1723 | Jun 1892,76.3 1724 | Jul 1892,76.5 1725 | Aug 1892,101.4 1726 | Sep 1892,62.8 1727 | Oct 1892,70.5 1728 | Nov 1892,65.4 1729 | Dec 1892,78.6 1730 | Jan 1893,75 1731 | Feb 1893,73 1732 | Mar 1893,65.7 1733 | Apr 1893,88.1 1734 | May 1893,84.7 1735 | Jun 1893,89.9 1736 | Jul 1893,88.6 1737 | Aug 1893,129.2 1738 | Sep 1893,77.9 1739 | Oct 1893,80 1740 | Nov 1893,75.1 1741 | Dec 1893,93.8 1742 | Jan 1894,83.2 1743 | Feb 1894,84.6 1744 | Mar 1894,52.3 1745 | Apr 1894,81.6 1746 | May 1894,101.2 1747 | Jun 1894,98.9 1748 | Jul 1894,106 1749 | Aug 1894,70.3 1750 | Sep 1894,65.9 1751 | Oct 1894,75.5 1752 | Nov 1894,56.6 1753 | Dec 1894,60 1754 | Jan 1895,63.3 1755 | Feb 1895,67.2 1756 | Mar 1895,61 1757 | Apr 1895,76.9 1758 | May 1895,67.5 1759 | Jun 1895,71.5 1760 | Jul 1895,47.8 1761 | Aug 1895,68.9 1762 | Sep 1895,57.7 1763 | Oct 1895,67.9 1764 | Nov 1895,47.2 1765 | Dec 1895,70.7 1766 | Jan 1896,29 1767 | Feb 1896,57.4 1768 | Mar 1896,52 1769 | Apr 1896,43.8 1770 | May 1896,27.7 1771 | Jun 1896,49 1772 | Jul 1896,45 1773 | Aug 1896,27.2 1774 | Sep 1896,61.3 1775 | Oct 1896,28.7 1776 | Nov 1896,38 1777 | Dec 1896,42.6 1778 | Jan 1897,40.6 1779 | Feb 1897,29.4 1780 | Mar 1897,29.1 1781 | Apr 1897,31 1782 | May 1897,20 1783 | Jun 1897,11.3 1784 | Jul 1897,27.6 1785 | Aug 1897,21.8 1786 | Sep 1897,48.1 1787 | Oct 1897,14.3 1788 | Nov 1897,8.4 1789 | Dec 1897,33.3 1790 | Jan 1898,30.2 1791 | Feb 1898,36.4 1792 | Mar 1898,38.3 1793 | Apr 1898,14.5 1794 | May 1898,25.8 1795 | Jun 1898,22.3 1796 | Jul 1898,9 1797 | Aug 1898,31.4 1798 | Sep 1898,34.8 1799 | Oct 1898,34.4 1800 | Nov 1898,30.9 1801 | Dec 1898,12.6 1802 | Jan 1899,19.5 1803 | Feb 1899,9.2 1804 | Mar 1899,18.1 1805 | Apr 1899,14.2 1806 | May 1899,7.7 1807 | Jun 1899,20.5 1808 | Jul 1899,13.5 1809 | Aug 1899,2.9 1810 | Sep 1899,8.4 1811 | Oct 1899,13 1812 | Nov 1899,7.8 1813 | Dec 1899,10.5 1814 | Jan 1900,9.4 1815 | Feb 1900,13.6 1816 | Mar 1900,8.6 1817 | Apr 1900,16 1818 | May 1900,15.2 1819 | Jun 1900,12.1 1820 | Jul 1900,8.3 1821 | Aug 1900,4.3 1822 | Sep 1900,8.3 1823 | Oct 1900,12.9 1824 | Nov 1900,4.5 1825 | Dec 1900,0.3 1826 | Jan 1901,0.2 1827 | Feb 1901,2.4 1828 | Mar 1901,4.5 1829 | Apr 1901,0 1830 | May 1901,10.2 1831 | Jun 1901,5.8 1832 | Jul 1901,0.7 1833 | Aug 1901,1 1834 | Sep 1901,0.6 1835 | Oct 1901,3.7 1836 | Nov 1901,3.8 1837 | Dec 1901,0 1838 | Jan 1902,5.5 1839 | Feb 1902,0 1840 | Mar 1902,12.4 1841 | Apr 1902,0 1842 | May 1902,2.8 1843 | Jun 1902,1.4 1844 | Jul 1902,0.9 1845 | Aug 1902,2.3 1846 | Sep 1902,7.6 1847 | Oct 1902,16.3 1848 | Nov 1902,10.3 1849 | Dec 1902,1.1 1850 | Jan 1903,8.3 1851 | Feb 1903,17 1852 | Mar 1903,13.5 1853 | Apr 1903,26.1 1854 | May 1903,14.6 1855 | Jun 1903,16.3 1856 | Jul 1903,27.9 1857 | Aug 1903,28.8 1858 | Sep 1903,11.1 1859 | Oct 1903,38.9 1860 | Nov 1903,44.5 1861 | Dec 1903,45.6 1862 | Jan 1904,31.6 1863 | Feb 1904,24.5 1864 | Mar 1904,37.2 1865 | Apr 1904,43 1866 | May 1904,39.5 1867 | Jun 1904,41.9 1868 | Jul 1904,50.6 1869 | Aug 1904,58.2 1870 | Sep 1904,30.1 1871 | Oct 1904,54.2 1872 | Nov 1904,38 1873 | Dec 1904,54.6 1874 | Jan 1905,54.8 1875 | Feb 1905,85.8 1876 | Mar 1905,56.5 1877 | Apr 1905,39.3 1878 | May 1905,48 1879 | Jun 1905,49 1880 | Jul 1905,73 1881 | Aug 1905,58.8 1882 | Sep 1905,55 1883 | Oct 1905,78.7 1884 | Nov 1905,107.2 1885 | Dec 1905,55.5 1886 | Jan 1906,45.5 1887 | Feb 1906,31.3 1888 | Mar 1906,64.5 1889 | Apr 1906,55.3 1890 | May 1906,57.7 1891 | Jun 1906,63.2 1892 | Jul 1906,103.6 1893 | Aug 1906,47.7 1894 | Sep 1906,56.1 1895 | Oct 1906,17.8 1896 | Nov 1906,38.9 1897 | Dec 1906,64.7 1898 | Jan 1907,76.4 1899 | Feb 1907,108.2 1900 | Mar 1907,60.7 1901 | Apr 1907,52.6 1902 | May 1907,42.9 1903 | Jun 1907,40.4 1904 | Jul 1907,49.7 1905 | Aug 1907,54.3 1906 | Sep 1907,85 1907 | Oct 1907,65.4 1908 | Nov 1907,61.5 1909 | Dec 1907,47.3 1910 | Jan 1908,39.2 1911 | Feb 1908,33.9 1912 | Mar 1908,28.7 1913 | Apr 1908,57.6 1914 | May 1908,40.8 1915 | Jun 1908,48.1 1916 | Jul 1908,39.5 1917 | Aug 1908,90.5 1918 | Sep 1908,86.9 1919 | Oct 1908,32.3 1920 | Nov 1908,45.5 1921 | Dec 1908,39.5 1922 | Jan 1909,56.7 1923 | Feb 1909,46.6 1924 | Mar 1909,66.3 1925 | Apr 1909,32.3 1926 | May 1909,36 1927 | Jun 1909,22.6 1928 | Jul 1909,35.8 1929 | Aug 1909,23.1 1930 | Sep 1909,38.8 1931 | Oct 1909,58.4 1932 | Nov 1909,55.8 1933 | Dec 1909,54.2 1934 | Jan 1910,26.4 1935 | Feb 1910,31.5 1936 | Mar 1910,21.4 1937 | Apr 1910,8.4 1938 | May 1910,22.2 1939 | Jun 1910,12.3 1940 | Jul 1910,14.1 1941 | Aug 1910,11.5 1942 | Sep 1910,26.2 1943 | Oct 1910,38.3 1944 | Nov 1910,4.9 1945 | Dec 1910,5.8 1946 | Jan 1911,3.4 1947 | Feb 1911,9 1948 | Mar 1911,7.8 1949 | Apr 1911,16.5 1950 | May 1911,9 1951 | Jun 1911,2.2 1952 | Jul 1911,3.5 1953 | Aug 1911,4 1954 | Sep 1911,4 1955 | Oct 1911,2.6 1956 | Nov 1911,4.2 1957 | Dec 1911,2.2 1958 | Jan 1912,0.3 1959 | Feb 1912,0 1960 | Mar 1912,4.9 1961 | Apr 1912,4.5 1962 | May 1912,4.4 1963 | Jun 1912,4.1 1964 | Jul 1912,3 1965 | Aug 1912,0.3 1966 | Sep 1912,9.5 1967 | Oct 1912,4.6 1968 | Nov 1912,1.1 1969 | Dec 1912,6.4 1970 | Jan 1913,2.3 1971 | Feb 1913,2.9 1972 | Mar 1913,0.5 1973 | Apr 1913,0.9 1974 | May 1913,0 1975 | Jun 1913,0 1976 | Jul 1913,1.7 1977 | Aug 1913,0.2 1978 | Sep 1913,1.2 1979 | Oct 1913,3.1 1980 | Nov 1913,0.7 1981 | Dec 1913,3.8 1982 | Jan 1914,2.8 1983 | Feb 1914,2.6 1984 | Mar 1914,3.1 1985 | Apr 1914,17.3 1986 | May 1914,5.2 1987 | Jun 1914,11.4 1988 | Jul 1914,5.4 1989 | Aug 1914,7.7 1990 | Sep 1914,12.7 1991 | Oct 1914,8.2 1992 | Nov 1914,16.4 1993 | Dec 1914,22.3 1994 | Jan 1915,23 1995 | Feb 1915,42.3 1996 | Mar 1915,38.8 1997 | Apr 1915,41.3 1998 | May 1915,33 1999 | Jun 1915,68.8 2000 | Jul 1915,71.6 2001 | Aug 1915,69.6 2002 | Sep 1915,49.5 2003 | Oct 1915,53.5 2004 | Nov 1915,42.5 2005 | Dec 1915,34.5 2006 | Jan 1916,45.3 2007 | Feb 1916,55.4 2008 | Mar 1916,67 2009 | Apr 1916,71.8 2010 | May 1916,74.5 2011 | Jun 1916,67.7 2012 | Jul 1916,53.5 2013 | Aug 1916,35.2 2014 | Sep 1916,45.1 2015 | Oct 1916,50.7 2016 | Nov 1916,65.6 2017 | Dec 1916,53 2018 | Jan 1917,74.7 2019 | Feb 1917,71.9 2020 | Mar 1917,94.8 2021 | Apr 1917,74.7 2022 | May 1917,114.1 2023 | Jun 1917,114.9 2024 | Jul 1917,119.8 2025 | Aug 1917,154.5 2026 | Sep 1917,129.4 2027 | Oct 1917,72.2 2028 | Nov 1917,96.4 2029 | Dec 1917,129.3 2030 | Jan 1918,96 2031 | Feb 1918,65.3 2032 | Mar 1918,72.2 2033 | Apr 1918,80.5 2034 | May 1918,76.7 2035 | Jun 1918,59.4 2036 | Jul 1918,107.6 2037 | Aug 1918,101.7 2038 | Sep 1918,79.9 2039 | Oct 1918,85 2040 | Nov 1918,83.4 2041 | Dec 1918,59.2 2042 | Jan 1919,48.1 2043 | Feb 1919,79.5 2044 | Mar 1919,66.5 2045 | Apr 1919,51.8 2046 | May 1919,88.1 2047 | Jun 1919,111.2 2048 | Jul 1919,64.7 2049 | Aug 1919,69 2050 | Sep 1919,54.7 2051 | Oct 1919,52.8 2052 | Nov 1919,42 2053 | Dec 1919,34.9 2054 | Jan 1920,51.1 2055 | Feb 1920,53.9 2056 | Mar 1920,70.2 2057 | Apr 1920,14.8 2058 | May 1920,33.3 2059 | Jun 1920,38.7 2060 | Jul 1920,27.5 2061 | Aug 1920,19.2 2062 | Sep 1920,36.3 2063 | Oct 1920,49.6 2064 | Nov 1920,27.2 2065 | Dec 1920,29.9 2066 | Jan 1921,31.5 2067 | Feb 1921,28.3 2068 | Mar 1921,26.7 2069 | Apr 1921,32.4 2070 | May 1921,22.2 2071 | Jun 1921,33.7 2072 | Jul 1921,41.9 2073 | Aug 1921,22.8 2074 | Sep 1921,17.8 2075 | Oct 1921,18.2 2076 | Nov 1921,17.8 2077 | Dec 1921,20.3 2078 | Jan 1922,11.8 2079 | Feb 1922,26.4 2080 | Mar 1922,54.7 2081 | Apr 1922,11 2082 | May 1922,8 2083 | Jun 1922,5.8 2084 | Jul 1922,10.9 2085 | Aug 1922,6.5 2086 | Sep 1922,4.7 2087 | Oct 1922,6.2 2088 | Nov 1922,7.4 2089 | Dec 1922,17.5 2090 | Jan 1923,4.5 2091 | Feb 1923,1.5 2092 | Mar 1923,3.3 2093 | Apr 1923,6.1 2094 | May 1923,3.2 2095 | Jun 1923,9.1 2096 | Jul 1923,3.5 2097 | Aug 1923,0.5 2098 | Sep 1923,13.2 2099 | Oct 1923,11.6 2100 | Nov 1923,10 2101 | Dec 1923,2.8 2102 | Jan 1924,0.5 2103 | Feb 1924,5.1 2104 | Mar 1924,1.8 2105 | Apr 1924,11.3 2106 | May 1924,20.8 2107 | Jun 1924,24 2108 | Jul 1924,28.1 2109 | Aug 1924,19.3 2110 | Sep 1924,25.1 2111 | Oct 1924,25.6 2112 | Nov 1924,22.5 2113 | Dec 1924,16.5 2114 | Jan 1925,5.5 2115 | Feb 1925,23.2 2116 | Mar 1925,18 2117 | Apr 1925,31.7 2118 | May 1925,42.8 2119 | Jun 1925,47.5 2120 | Jul 1925,38.5 2121 | Aug 1925,37.9 2122 | Sep 1925,60.2 2123 | Oct 1925,69.2 2124 | Nov 1925,58.6 2125 | Dec 1925,98.6 2126 | Jan 1926,71.8 2127 | Feb 1926,69.9 2128 | Mar 1926,62.5 2129 | Apr 1926,38.5 2130 | May 1926,64.3 2131 | Jun 1926,73.5 2132 | Jul 1926,52.3 2133 | Aug 1926,61.6 2134 | Sep 1926,60.8 2135 | Oct 1926,71.5 2136 | Nov 1926,60.5 2137 | Dec 1926,79.4 2138 | Jan 1927,81.6 2139 | Feb 1927,93 2140 | Mar 1927,69.6 2141 | Apr 1927,93.5 2142 | May 1927,79.1 2143 | Jun 1927,59.1 2144 | Jul 1927,54.9 2145 | Aug 1927,53.8 2146 | Sep 1927,68.4 2147 | Oct 1927,63.1 2148 | Nov 1927,67.2 2149 | Dec 1927,45.2 2150 | Jan 1928,83.5 2151 | Feb 1928,73.5 2152 | Mar 1928,85.5 2153 | Apr 1928,80.6 2154 | May 1928,77 2155 | Jun 1928,91.4 2156 | Jul 1928,98 2157 | Aug 1928,83.8 2158 | Sep 1928,89.7 2159 | Oct 1928,61.4 2160 | Nov 1928,50.3 2161 | Dec 1928,59 2162 | Jan 1929,68.9 2163 | Feb 1929,62.8 2164 | Mar 1929,50.2 2165 | Apr 1929,52.8 2166 | May 1929,58.2 2167 | Jun 1929,71.9 2168 | Jul 1929,70.2 2169 | Aug 1929,65.8 2170 | Sep 1929,34.4 2171 | Oct 1929,54 2172 | Nov 1929,81.1 2173 | Dec 1929,108 2174 | Jan 1930,65.3 2175 | Feb 1930,49.9 2176 | Mar 1930,35 2177 | Apr 1930,38.2 2178 | May 1930,36.8 2179 | Jun 1930,28.8 2180 | Jul 1930,21.9 2181 | Aug 1930,24.9 2182 | Sep 1930,32.1 2183 | Oct 1930,34.4 2184 | Nov 1930,35.6 2185 | Dec 1930,25.8 2186 | Jan 1931,14.6 2187 | Feb 1931,43.1 2188 | Mar 1931,30 2189 | Apr 1931,31.2 2190 | May 1931,24.6 2191 | Jun 1931,15.3 2192 | Jul 1931,17.4 2193 | Aug 1931,13 2194 | Sep 1931,19 2195 | Oct 1931,10 2196 | Nov 1931,18.7 2197 | Dec 1931,17.8 2198 | Jan 1932,12.1 2199 | Feb 1932,10.6 2200 | Mar 1932,11.2 2201 | Apr 1932,11.2 2202 | May 1932,17.9 2203 | Jun 1932,22.2 2204 | Jul 1932,9.6 2205 | Aug 1932,6.8 2206 | Sep 1932,4 2207 | Oct 1932,8.9 2208 | Nov 1932,8.2 2209 | Dec 1932,11 2210 | Jan 1933,12.3 2211 | Feb 1933,22.2 2212 | Mar 1933,10.1 2213 | Apr 1933,2.9 2214 | May 1933,3.2 2215 | Jun 1933,5.2 2216 | Jul 1933,2.8 2217 | Aug 1933,0.2 2218 | Sep 1933,5.1 2219 | Oct 1933,3 2220 | Nov 1933,0.6 2221 | Dec 1933,0.3 2222 | Jan 1934,3.4 2223 | Feb 1934,7.8 2224 | Mar 1934,4.3 2225 | Apr 1934,11.3 2226 | May 1934,19.7 2227 | Jun 1934,6.7 2228 | Jul 1934,9.3 2229 | Aug 1934,8.3 2230 | Sep 1934,4 2231 | Oct 1934,5.7 2232 | Nov 1934,8.7 2233 | Dec 1934,15.4 2234 | Jan 1935,18.6 2235 | Feb 1935,20.5 2236 | Mar 1935,23.1 2237 | Apr 1935,12.2 2238 | May 1935,27.3 2239 | Jun 1935,45.7 2240 | Jul 1935,33.9 2241 | Aug 1935,30.1 2242 | Sep 1935,42.1 2243 | Oct 1935,53.2 2244 | Nov 1935,64.2 2245 | Dec 1935,61.5 2246 | Jan 1936,62.8 2247 | Feb 1936,74.3 2248 | Mar 1936,77.1 2249 | Apr 1936,74.9 2250 | May 1936,54.6 2251 | Jun 1936,70 2252 | Jul 1936,52.3 2253 | Aug 1936,87 2254 | Sep 1936,76 2255 | Oct 1936,89 2256 | Nov 1936,115.4 2257 | Dec 1936,123.4 2258 | Jan 1937,132.5 2259 | Feb 1937,128.5 2260 | Mar 1937,83.9 2261 | Apr 1937,109.3 2262 | May 1937,116.7 2263 | Jun 1937,130.3 2264 | Jul 1937,145.1 2265 | Aug 1937,137.7 2266 | Sep 1937,100.7 2267 | Oct 1937,124.9 2268 | Nov 1937,74.4 2269 | Dec 1937,88.8 2270 | Jan 1938,98.4 2271 | Feb 1938,119.2 2272 | Mar 1938,86.5 2273 | Apr 1938,101 2274 | May 1938,127.4 2275 | Jun 1938,97.5 2276 | Jul 1938,165.3 2277 | Aug 1938,115.7 2278 | Sep 1938,89.6 2279 | Oct 1938,99.1 2280 | Nov 1938,122.2 2281 | Dec 1938,92.7 2282 | Jan 1939,80.3 2283 | Feb 1939,77.4 2284 | Mar 1939,64.6 2285 | Apr 1939,109.1 2286 | May 1939,118.3 2287 | Jun 1939,101 2288 | Jul 1939,97.6 2289 | Aug 1939,105.8 2290 | Sep 1939,112.6 2291 | Oct 1939,88.1 2292 | Nov 1939,68.1 2293 | Dec 1939,42.1 2294 | Jan 1940,50.5 2295 | Feb 1940,59.4 2296 | Mar 1940,83.3 2297 | Apr 1940,60.7 2298 | May 1940,54.4 2299 | Jun 1940,83.9 2300 | Jul 1940,67.5 2301 | Aug 1940,105.5 2302 | Sep 1940,66.5 2303 | Oct 1940,55 2304 | Nov 1940,58.4 2305 | Dec 1940,68.3 2306 | Jan 1941,45.6 2307 | Feb 1941,44.5 2308 | Mar 1941,46.4 2309 | Apr 1941,32.8 2310 | May 1941,29.5 2311 | Jun 1941,59.8 2312 | Jul 1941,66.9 2313 | Aug 1941,60 2314 | Sep 1941,65.9 2315 | Oct 1941,46.3 2316 | Nov 1941,38.4 2317 | Dec 1941,33.7 2318 | Jan 1942,35.6 2319 | Feb 1942,52.8 2320 | Mar 1942,54.2 2321 | Apr 1942,60.7 2322 | May 1942,25 2323 | Jun 1942,11.4 2324 | Jul 1942,17.7 2325 | Aug 1942,20.2 2326 | Sep 1942,17.2 2327 | Oct 1942,19.2 2328 | Nov 1942,30.7 2329 | Dec 1942,22.5 2330 | Jan 1943,12.5 2331 | Feb 1943,28.9 2332 | Mar 1943,27.4 2333 | Apr 1943,26.1 2334 | May 1943,14.1 2335 | Jun 1943,7.6 2336 | Jul 1943,13.2 2337 | Aug 1943,19.4 2338 | Sep 1943,10 2339 | Oct 1943,7.8 2340 | Nov 1943,10.2 2341 | Dec 1943,18.8 2342 | Jan 1944,3.7 2343 | Feb 1944,0.5 2344 | Mar 1944,11 2345 | Apr 1944,0.3 2346 | May 1944,2.5 2347 | Jun 1944,5 2348 | Jul 1944,5 2349 | Aug 1944,16.7 2350 | Sep 1944,14.3 2351 | Oct 1944,16.9 2352 | Nov 1944,10.8 2353 | Dec 1944,28.4 2354 | Jan 1945,18.5 2355 | Feb 1945,12.7 2356 | Mar 1945,21.5 2357 | Apr 1945,32 2358 | May 1945,30.6 2359 | Jun 1945,36.2 2360 | Jul 1945,42.6 2361 | Aug 1945,25.9 2362 | Sep 1945,34.9 2363 | Oct 1945,68.8 2364 | Nov 1945,46 2365 | Dec 1945,27.4 2366 | Jan 1946,47.6 2367 | Feb 1946,86.2 2368 | Mar 1946,76.6 2369 | Apr 1946,75.7 2370 | May 1946,84.9 2371 | Jun 1946,73.5 2372 | Jul 1946,116.2 2373 | Aug 1946,107.2 2374 | Sep 1946,94.4 2375 | Oct 1946,102.3 2376 | Nov 1946,123.8 2377 | Dec 1946,121.7 2378 | Jan 1947,115.7 2379 | Feb 1947,133.4 2380 | Mar 1947,129.8 2381 | Apr 1947,149.8 2382 | May 1947,201.3 2383 | Jun 1947,163.9 2384 | Jul 1947,157.9 2385 | Aug 1947,188.8 2386 | Sep 1947,169.4 2387 | Oct 1947,163.6 2388 | Nov 1947,128 2389 | Dec 1947,116.5 2390 | Jan 1948,108.5 2391 | Feb 1948,86.1 2392 | Mar 1948,94.8 2393 | Apr 1948,189.7 2394 | May 1948,174 2395 | Jun 1948,167.8 2396 | Jul 1948,142.2 2397 | Aug 1948,157.9 2398 | Sep 1948,143.3 2399 | Oct 1948,136.3 2400 | Nov 1948,95.8 2401 | Dec 1948,138 2402 | Jan 1949,119.1 2403 | Feb 1949,182.3 2404 | Mar 1949,157.5 2405 | Apr 1949,147 2406 | May 1949,106.2 2407 | Jun 1949,121.7 2408 | Jul 1949,125.8 2409 | Aug 1949,123.8 2410 | Sep 1949,145.3 2411 | Oct 1949,131.6 2412 | Nov 1949,143.5 2413 | Dec 1949,117.6 2414 | Jan 1950,101.6 2415 | Feb 1950,94.8 2416 | Mar 1950,109.7 2417 | Apr 1950,113.4 2418 | May 1950,106.2 2419 | Jun 1950,83.6 2420 | Jul 1950,91 2421 | Aug 1950,85.2 2422 | Sep 1950,51.3 2423 | Oct 1950,61.4 2424 | Nov 1950,54.8 2425 | Dec 1950,54.1 2426 | Jan 1951,59.9 2427 | Feb 1951,59.9 2428 | Mar 1951,55.9 2429 | Apr 1951,92.9 2430 | May 1951,108.5 2431 | Jun 1951,100.6 2432 | Jul 1951,61.5 2433 | Aug 1951,61 2434 | Sep 1951,83.1 2435 | Oct 1951,51.6 2436 | Nov 1951,52.4 2437 | Dec 1951,45.8 2438 | Jan 1952,40.7 2439 | Feb 1952,22.7 2440 | Mar 1952,22 2441 | Apr 1952,29.1 2442 | May 1952,23.4 2443 | Jun 1952,36.4 2444 | Jul 1952,39.3 2445 | Aug 1952,54.9 2446 | Sep 1952,28.2 2447 | Oct 1952,23.8 2448 | Nov 1952,22.1 2449 | Dec 1952,34.3 2450 | Jan 1953,26.5 2451 | Feb 1953,3.9 2452 | Mar 1953,10 2453 | Apr 1953,27.8 2454 | May 1953,12.5 2455 | Jun 1953,21.8 2456 | Jul 1953,8.6 2457 | Aug 1953,23.5 2458 | Sep 1953,19.3 2459 | Oct 1953,8.2 2460 | Nov 1953,1.6 2461 | Dec 1953,2.5 2462 | Jan 1954,0.2 2463 | Feb 1954,0.5 2464 | Mar 1954,10.9 2465 | Apr 1954,1.8 2466 | May 1954,0.8 2467 | Jun 1954,0.2 2468 | Jul 1954,4.8 2469 | Aug 1954,8.4 2470 | Sep 1954,1.5 2471 | Oct 1954,7 2472 | Nov 1954,9.2 2473 | Dec 1954,7.6 2474 | Jan 1955,23.1 2475 | Feb 1955,20.8 2476 | Mar 1955,4.9 2477 | Apr 1955,11.3 2478 | May 1955,28.9 2479 | Jun 1955,31.7 2480 | Jul 1955,26.7 2481 | Aug 1955,40.7 2482 | Sep 1955,42.7 2483 | Oct 1955,58.5 2484 | Nov 1955,89.2 2485 | Dec 1955,76.9 2486 | Jan 1956,73.6 2487 | Feb 1956,124 2488 | Mar 1956,118.4 2489 | Apr 1956,110.7 2490 | May 1956,136.6 2491 | Jun 1956,116.6 2492 | Jul 1956,129.1 2493 | Aug 1956,169.6 2494 | Sep 1956,173.2 2495 | Oct 1956,155.3 2496 | Nov 1956,201.3 2497 | Dec 1956,192.1 2498 | Jan 1957,165 2499 | Feb 1957,130.3 2500 | Mar 1957,157.4 2501 | Apr 1957,175.2 2502 | May 1957,164.6 2503 | Jun 1957,200.7 2504 | Jul 1957,187.2 2505 | Aug 1957,158 2506 | Sep 1957,235.8 2507 | Oct 1957,253.8 2508 | Nov 1957,210.9 2509 | Dec 1957,239.4 2510 | Jan 1958,202.5 2511 | Feb 1958,164.9 2512 | Mar 1958,190.7 2513 | Apr 1958,196 2514 | May 1958,175.3 2515 | Jun 1958,171.5 2516 | Jul 1958,191.4 2517 | Aug 1958,200.2 2518 | Sep 1958,201.2 2519 | Oct 1958,181.5 2520 | Nov 1958,152.3 2521 | Dec 1958,187.6 2522 | Jan 1959,217.4 2523 | Feb 1959,143.1 2524 | Mar 1959,185.7 2525 | Apr 1959,163.3 2526 | May 1959,172 2527 | Jun 1959,168.7 2528 | Jul 1959,149.6 2529 | Aug 1959,199.6 2530 | Sep 1959,145.2 2531 | Oct 1959,111.4 2532 | Nov 1959,124 2533 | Dec 1959,125 2534 | Jan 1960,146.3 2535 | Feb 1960,106 2536 | Mar 1960,102.2 2537 | Apr 1960,122 2538 | May 1960,119.6 2539 | Jun 1960,110.2 2540 | Jul 1960,121.7 2541 | Aug 1960,134.1 2542 | Sep 1960,127.2 2543 | Oct 1960,82.8 2544 | Nov 1960,89.6 2545 | Dec 1960,85.6 2546 | Jan 1961,57.9 2547 | Feb 1961,46.1 2548 | Mar 1961,53 2549 | Apr 1961,61.4 2550 | May 1961,51 2551 | Jun 1961,77.4 2552 | Jul 1961,70.2 2553 | Aug 1961,55.8 2554 | Sep 1961,63.6 2555 | Oct 1961,37.7 2556 | Nov 1961,32.6 2557 | Dec 1961,39.9 2558 | Jan 1962,38.7 2559 | Feb 1962,50.3 2560 | Mar 1962,45.6 2561 | Apr 1962,46.4 2562 | May 1962,43.7 2563 | Jun 1962,42 2564 | Jul 1962,21.8 2565 | Aug 1962,21.8 2566 | Sep 1962,51.3 2567 | Oct 1962,39.5 2568 | Nov 1962,26.9 2569 | Dec 1962,23.2 2570 | Jan 1963,19.8 2571 | Feb 1963,24.4 2572 | Mar 1963,17.1 2573 | Apr 1963,29.3 2574 | May 1963,43 2575 | Jun 1963,35.9 2576 | Jul 1963,19.6 2577 | Aug 1963,33.2 2578 | Sep 1963,38.8 2579 | Oct 1963,35.3 2580 | Nov 1963,23.4 2581 | Dec 1963,14.9 2582 | Jan 1964,15.3 2583 | Feb 1964,17.7 2584 | Mar 1964,16.5 2585 | Apr 1964,8.6 2586 | May 1964,9.5 2587 | Jun 1964,9.1 2588 | Jul 1964,3.1 2589 | Aug 1964,9.3 2590 | Sep 1964,4.7 2591 | Oct 1964,6.1 2592 | Nov 1964,7.4 2593 | Dec 1964,15.1 2594 | Jan 1965,17.5 2595 | Feb 1965,14.3 2596 | Mar 1965,11.7 2597 | Apr 1965,6.8 2598 | May 1965,24.1 2599 | Jun 1965,15.9 2600 | Jul 1965,11.9 2601 | Aug 1965,8.9 2602 | Sep 1965,16.8 2603 | Oct 1965,20.1 2604 | Nov 1965,15.8 2605 | Dec 1965,17 2606 | Jan 1966,28.2 2607 | Feb 1966,24.4 2608 | Mar 1966,25.3 2609 | Apr 1966,48.7 2610 | May 1966,45.3 2611 | Jun 1966,47.7 2612 | Jul 1966,56.7 2613 | Aug 1966,51.2 2614 | Sep 1966,50.2 2615 | Oct 1966,57.2 2616 | Nov 1966,57.2 2617 | Dec 1966,70.4 2618 | Jan 1967,110.9 2619 | Feb 1967,93.6 2620 | Mar 1967,111.8 2621 | Apr 1967,69.5 2622 | May 1967,86.5 2623 | Jun 1967,67.3 2624 | Jul 1967,91.5 2625 | Aug 1967,107.2 2626 | Sep 1967,76.8 2627 | Oct 1967,88.2 2628 | Nov 1967,94.3 2629 | Dec 1967,126.4 2630 | Jan 1968,121.8 2631 | Feb 1968,111.9 2632 | Mar 1968,92.2 2633 | Apr 1968,81.2 2634 | May 1968,127.2 2635 | Jun 1968,110.3 2636 | Jul 1968,96.1 2637 | Aug 1968,109.3 2638 | Sep 1968,117.2 2639 | Oct 1968,107.7 2640 | Nov 1968,86 2641 | Dec 1968,109.8 2642 | Jan 1969,104.4 2643 | Feb 1969,120.5 2644 | Mar 1969,135.8 2645 | Apr 1969,106.8 2646 | May 1969,120 2647 | Jun 1969,106 2648 | Jul 1969,96.8 2649 | Aug 1969,98 2650 | Sep 1969,91.3 2651 | Oct 1969,95.7 2652 | Nov 1969,93.5 2653 | Dec 1969,97.9 2654 | Jan 1970,111.5 2655 | Feb 1970,127.8 2656 | Mar 1970,102.9 2657 | Apr 1970,109.5 2658 | May 1970,127.5 2659 | Jun 1970,106.8 2660 | Jul 1970,112.5 2661 | Aug 1970,93 2662 | Sep 1970,99.5 2663 | Oct 1970,86.6 2664 | Nov 1970,95.2 2665 | Dec 1970,83.5 2666 | Jan 1971,91.3 2667 | Feb 1971,79 2668 | Mar 1971,60.7 2669 | Apr 1971,71.8 2670 | May 1971,57.5 2671 | Jun 1971,49.8 2672 | Jul 1971,81 2673 | Aug 1971,61.4 2674 | Sep 1971,50.2 2675 | Oct 1971,51.7 2676 | Nov 1971,63.2 2677 | Dec 1971,82.2 2678 | Jan 1972,61.5 2679 | Feb 1972,88.4 2680 | Mar 1972,80.1 2681 | Apr 1972,63.2 2682 | May 1972,80.5 2683 | Jun 1972,88 2684 | Jul 1972,76.5 2685 | Aug 1972,76.8 2686 | Sep 1972,64 2687 | Oct 1972,61.3 2688 | Nov 1972,41.6 2689 | Dec 1972,45.3 2690 | Jan 1973,43.4 2691 | Feb 1973,42.9 2692 | Mar 1973,46 2693 | Apr 1973,57.7 2694 | May 1973,42.4 2695 | Jun 1973,39.5 2696 | Jul 1973,23.1 2697 | Aug 1973,25.6 2698 | Sep 1973,59.3 2699 | Oct 1973,30.7 2700 | Nov 1973,23.9 2701 | Dec 1973,23.3 2702 | Jan 1974,27.6 2703 | Feb 1974,26 2704 | Mar 1974,21.3 2705 | Apr 1974,40.3 2706 | May 1974,39.5 2707 | Jun 1974,36 2708 | Jul 1974,55.8 2709 | Aug 1974,33.6 2710 | Sep 1974,40.2 2711 | Oct 1974,47.1 2712 | Nov 1974,25 2713 | Dec 1974,20.5 2714 | Jan 1975,18.9 2715 | Feb 1975,11.5 2716 | Mar 1975,11.5 2717 | Apr 1975,5.1 2718 | May 1975,9 2719 | Jun 1975,11.4 2720 | Jul 1975,28.2 2721 | Aug 1975,39.7 2722 | Sep 1975,13.9 2723 | Oct 1975,9.1 2724 | Nov 1975,19.4 2725 | Dec 1975,7.8 2726 | Jan 1976,8.1 2727 | Feb 1976,4.3 2728 | Mar 1976,21.9 2729 | Apr 1976,18.8 2730 | May 1976,12.4 2731 | Jun 1976,12.2 2732 | Jul 1976,1.9 2733 | Aug 1976,16.4 2734 | Sep 1976,13.5 2735 | Oct 1976,20.6 2736 | Nov 1976,5.2 2737 | Dec 1976,15.3 2738 | Jan 1977,16.4 2739 | Feb 1977,23.1 2740 | Mar 1977,8.7 2741 | Apr 1977,12.9 2742 | May 1977,18.6 2743 | Jun 1977,38.5 2744 | Jul 1977,21.4 2745 | Aug 1977,30.1 2746 | Sep 1977,44 2747 | Oct 1977,43.8 2748 | Nov 1977,29.1 2749 | Dec 1977,43.2 2750 | Jan 1978,51.9 2751 | Feb 1978,93.6 2752 | Mar 1978,76.5 2753 | Apr 1978,99.7 2754 | May 1978,82.7 2755 | Jun 1978,95.1 2756 | Jul 1978,70.4 2757 | Aug 1978,58.1 2758 | Sep 1978,138.2 2759 | Oct 1978,125.1 2760 | Nov 1978,97.9 2761 | Dec 1978,122.7 2762 | Jan 1979,166.6 2763 | Feb 1979,137.5 2764 | Mar 1979,138 2765 | Apr 1979,101.5 2766 | May 1979,134.4 2767 | Jun 1979,149.5 2768 | Jul 1979,159.4 2769 | Aug 1979,142.2 2770 | Sep 1979,188.4 2771 | Oct 1979,186.2 2772 | Nov 1979,183.3 2773 | Dec 1979,176.3 2774 | Jan 1980,159.6 2775 | Feb 1980,155 2776 | Mar 1980,126.2 2777 | Apr 1980,164.1 2778 | May 1980,179.9 2779 | Jun 1980,157.3 2780 | Jul 1980,136.3 2781 | Aug 1980,135.4 2782 | Sep 1980,155 2783 | Oct 1980,164.7 2784 | Nov 1980,147.9 2785 | Dec 1980,174.4 2786 | Jan 1981,114 2787 | Feb 1981,141.3 2788 | Mar 1981,135.5 2789 | Apr 1981,156.4 2790 | May 1981,127.5 2791 | Jun 1981,90.9 2792 | Jul 1981,143.8 2793 | Aug 1981,158.7 2794 | Sep 1981,167.3 2795 | Oct 1981,162.4 2796 | Nov 1981,137.5 2797 | Dec 1981,150.1 2798 | Jan 1982,111.2 2799 | Feb 1982,163.6 2800 | Mar 1982,153.8 2801 | Apr 1982,122 2802 | May 1982,82.2 2803 | Jun 1982,110.4 2804 | Jul 1982,106.1 2805 | Aug 1982,107.6 2806 | Sep 1982,118.8 2807 | Oct 1982,94.7 2808 | Nov 1982,98.1 2809 | Dec 1982,127 2810 | Jan 1983,84.3 2811 | Feb 1983,51 2812 | Mar 1983,66.5 2813 | Apr 1983,80.7 2814 | May 1983,99.2 2815 | Jun 1983,91.1 2816 | Jul 1983,82.2 2817 | Aug 1983,71.8 2818 | Sep 1983,50.3 2819 | Oct 1983,55.8 2820 | Nov 1983,33.4 2821 | Dec 1983,33.4 2822 | Jan 1984,57 2823 | Feb 1984,85.4 2824 | Mar 1984,83.5 2825 | Apr 1984,69.7 2826 | May 1984,76.4 2827 | Jun 1984,46.1 2828 | Jul 1984,37.4 2829 | Aug 1984,25.5 2830 | Sep 1984,15.7 2831 | Oct 1984,12 2832 | Nov 1984,22.8 2833 | Dec 1984,18.7 2834 | Jan 1985,16.5 2835 | Feb 1985,15.9 2836 | Mar 1985,17.2 2837 | Apr 1985,16.2 2838 | May 1985,27.5 2839 | Jun 1985,24.2 2840 | Jul 1985,30.7 2841 | Aug 1985,11.1 2842 | Sep 1985,3.9 2843 | Oct 1985,18.6 2844 | Nov 1985,16.2 2845 | Dec 1985,17.3 2846 | Jan 1986,2.5 2847 | Feb 1986,23.2 2848 | Mar 1986,15.1 2849 | Apr 1986,18.5 2850 | May 1986,13.7 2851 | Jun 1986,1.1 2852 | Jul 1986,18.1 2853 | Aug 1986,7.4 2854 | Sep 1986,3.8 2855 | Oct 1986,35.4 2856 | Nov 1986,15.2 2857 | Dec 1986,6.8 2858 | Jan 1987,10.4 2859 | Feb 1987,2.4 2860 | Mar 1987,14.7 2861 | Apr 1987,39.6 2862 | May 1987,33 2863 | Jun 1987,17.4 2864 | Jul 1987,33 2865 | Aug 1987,38.7 2866 | Sep 1987,33.9 2867 | Oct 1987,60.6 2868 | Nov 1987,39.9 2869 | Dec 1987,27.1 2870 | Jan 1988,59 2871 | Feb 1988,40 2872 | Mar 1988,76.2 2873 | Apr 1988,88 2874 | May 1988,60.1 2875 | Jun 1988,101.8 2876 | Jul 1988,113.8 2877 | Aug 1988,111.6 2878 | Sep 1988,120.1 2879 | Oct 1988,125.1 2880 | Nov 1988,125.1 2881 | Dec 1988,179.2 2882 | Jan 1989,161.3 2883 | Feb 1989,165.1 2884 | Mar 1989,131.4 2885 | Apr 1989,130.6 2886 | May 1989,138.5 2887 | Jun 1989,196.2 2888 | Jul 1989,126.9 2889 | Aug 1989,168.9 2890 | Sep 1989,176.7 2891 | Oct 1989,159.4 2892 | Nov 1989,173 2893 | Dec 1989,165.5 2894 | Jan 1990,177.3 2895 | Feb 1990,130.5 2896 | Mar 1990,140.3 2897 | Apr 1990,140.3 2898 | May 1990,132.2 2899 | Jun 1990,105.4 2900 | Jul 1990,149.4 2901 | Aug 1990,200.3 2902 | Sep 1990,125.2 2903 | Oct 1990,145.5 2904 | Nov 1990,131.4 2905 | Dec 1990,129.7 2906 | Jan 1991,136.9 2907 | Feb 1991,167.5 2908 | Mar 1991,141.9 2909 | Apr 1991,140 2910 | May 1991,121.3 2911 | Jun 1991,169.7 2912 | Jul 1991,173.7 2913 | Aug 1991,176.3 2914 | Sep 1991,125.3 2915 | Oct 1991,144.1 2916 | Nov 1991,108.2 2917 | Dec 1991,144.4 2918 | Jan 1992,150 2919 | Feb 1992,161.1 2920 | Mar 1992,106.7 2921 | Apr 1992,99.8 2922 | May 1992,73.8 2923 | Jun 1992,65.2 2924 | Jul 1992,85.7 2925 | Aug 1992,64.5 2926 | Sep 1992,63.9 2927 | Oct 1992,88.7 2928 | Nov 1992,91.8 2929 | Dec 1992,82.6 2930 | Jan 1993,59.3 2931 | Feb 1993,91 2932 | Mar 1993,69.8 2933 | Apr 1993,62.2 2934 | May 1993,61.3 2935 | Jun 1993,49.8 2936 | Jul 1993,57.9 2937 | Aug 1993,42.2 2938 | Sep 1993,22.4 2939 | Oct 1993,56.4 2940 | Nov 1993,35.6 2941 | Dec 1993,48.9 2942 | Jan 1994,57.8 2943 | Feb 1994,35.5 2944 | Mar 1994,31.7 2945 | Apr 1994,16.1 2946 | May 1994,17.8 2947 | Jun 1994,28 2948 | Jul 1994,35.1 2949 | Aug 1994,22.5 2950 | Sep 1994,25.7 2951 | Oct 1994,44 2952 | Nov 1994,18 2953 | Dec 1994,26.2 2954 | Jan 1995,24.2 2955 | Feb 1995,29.9 2956 | Mar 1995,31.1 2957 | Apr 1995,14 2958 | May 1995,14.5 2959 | Jun 1995,15.6 2960 | Jul 1995,14.5 2961 | Aug 1995,14.3 2962 | Sep 1995,11.8 2963 | Oct 1995,21.1 2964 | Nov 1995,9 2965 | Dec 1995,10 2966 | Jan 1996,11.5 2967 | Feb 1996,4.4 2968 | Mar 1996,9.2 2969 | Apr 1996,4.8 2970 | May 1996,5.5 2971 | Jun 1996,11.8 2972 | Jul 1996,8.2 2973 | Aug 1996,14.4 2974 | Sep 1996,1.6 2975 | Oct 1996,0.9 2976 | Nov 1996,17.9 2977 | Dec 1996,13.3 2978 | Jan 1997,5.7 2979 | Feb 1997,7.6 2980 | Mar 1997,8.7 2981 | Apr 1997,15.5 2982 | May 1997,18.5 2983 | Jun 1997,12.7 2984 | Jul 1997,10.4 2985 | Aug 1997,24.4 2986 | Sep 1997,51.3 2987 | Oct 1997,22.8 2988 | Nov 1997,39 2989 | Dec 1997,41.2 2990 | Jan 1998,31.9 2991 | Feb 1998,40.3 2992 | Mar 1998,54.8 2993 | Apr 1998,53.4 2994 | May 1998,56.3 2995 | Jun 1998,70.7 2996 | Jul 1998,66.6 2997 | Aug 1998,92.2 2998 | Sep 1998,92.9 2999 | Oct 1998,55.5 3000 | Nov 1998,74 3001 | Dec 1998,81.9 3002 | Jan 1999,62 3003 | Feb 1999,66.3 3004 | Mar 1999,68.8 3005 | Apr 1999,63.7 3006 | May 1999,106.4 3007 | Jun 1999,137.7 3008 | Jul 1999,113.5 3009 | Aug 1999,93.7 3010 | Sep 1999,71.5 3011 | Oct 1999,116.7 3012 | Nov 1999,133.2 3013 | Dec 1999,84.6 3014 | Jan 2000,90.1 3015 | Feb 2000,112.9 3016 | Mar 2000,138.5 3017 | Apr 2000,125.5 3018 | May 2000,121.6 3019 | Jun 2000,124.9 3020 | Jul 2000,170.1 3021 | Aug 2000,130.5 3022 | Sep 2000,109.7 3023 | Oct 2000,99.4 3024 | Nov 2000,106.8 3025 | Dec 2000,104.4 3026 | Jan 2001,95.6 3027 | Feb 2001,80.6 3028 | Mar 2001,113.5 3029 | Apr 2001,107.7 3030 | May 2001,96.6 3031 | Jun 2001,134 3032 | Jul 2001,81.8 3033 | Aug 2001,106.4 3034 | Sep 2001,150.7 3035 | Oct 2001,125.5 3036 | Nov 2001,106.5 3037 | Dec 2001,132.2 3038 | Jan 2002,114.1 3039 | Feb 2002,107.4 3040 | Mar 2002,98.4 3041 | Apr 2002,120.7 3042 | May 2002,120.8 3043 | Jun 2002,88.3 3044 | Jul 2002,99.6 3045 | Aug 2002,116.4 3046 | Sep 2002,109.6 3047 | Oct 2002,97.5 3048 | Nov 2002,95.5 3049 | Dec 2002,80.8 3050 | Jan 2003,79.7 3051 | Feb 2003,46 3052 | Mar 2003,61.1 3053 | Apr 2003,60 3054 | May 2003,54.6 3055 | Jun 2003,77.4 3056 | Jul 2003,83.3 3057 | Aug 2003,72.7 3058 | Sep 2003,48.7 3059 | Oct 2003,65.5 3060 | Nov 2003,67.3 3061 | Dec 2003,46.5 3062 | Jan 2004,37.3 3063 | Feb 2004,45.8 3064 | Mar 2004,49.1 3065 | Apr 2004,39.3 3066 | May 2004,41.5 3067 | Jun 2004,43.2 3068 | Jul 2004,51.1 3069 | Aug 2004,40.9 3070 | Sep 2004,27.7 3071 | Oct 2004,48 3072 | Nov 2004,43.5 3073 | Dec 2004,17.9 3074 | Jan 2005,31.3 3075 | Feb 2005,29.2 3076 | Mar 2005,24.5 3077 | Apr 2005,24.2 3078 | May 2005,42.7 3079 | Jun 2005,39.3 3080 | Jul 2005,40.1 3081 | Aug 2005,36.4 3082 | Sep 2005,21.9 3083 | Oct 2005,8.7 3084 | Nov 2005,18 3085 | Dec 2005,41.1 3086 | Jan 2006,15.3 3087 | Feb 2006,4.9 3088 | Mar 2006,10.6 3089 | Apr 2006,30.2 3090 | May 2006,22.3 3091 | Jun 2006,13.9 3092 | Jul 2006,12.2 3093 | Aug 2006,12.9 3094 | Sep 2006,14.4 3095 | Oct 2006,10.5 3096 | Nov 2006,21.4 3097 | Dec 2006,13.6 3098 | Jan 2007,16.8 3099 | Feb 2007,10.7 3100 | Mar 2007,4.5 3101 | Apr 2007,3.4 3102 | May 2007,11.7 3103 | Jun 2007,12.1 3104 | Jul 2007,9.7 3105 | Aug 2007,6 3106 | Sep 2007,2.4 3107 | Oct 2007,0.9 3108 | Nov 2007,1.7 3109 | Dec 2007,10.1 3110 | Jan 2008,3.3 3111 | Feb 2008,2.1 3112 | Mar 2008,9.3 3113 | Apr 2008,2.9 3114 | May 2008,3.2 3115 | Jun 2008,3.4 3116 | Jul 2008,0.8 3117 | Aug 2008,0.5 3118 | Sep 2008,1.1 3119 | Oct 2008,2.9 3120 | Nov 2008,4.1 3121 | Dec 2008,0.8 3122 | Jan 2009,1.3 3123 | Feb 2009,1.4 3124 | Mar 2009,0.7 3125 | Apr 2009,0.8 3126 | May 2009,2.9 3127 | Jun 2009,2.9 3128 | Jul 2009,3.2 3129 | Aug 2009,0 3130 | Sep 2009,4.3 3131 | Oct 2009,4.8 3132 | Nov 2009,4.1 3133 | Dec 2009,10.8 3134 | Jan 2010,13.2 3135 | Feb 2010,18.8 3136 | Mar 2010,15.4 3137 | Apr 2010,8 3138 | May 2010,8.7 3139 | Jun 2010,13.6 3140 | Jul 2010,16.1 3141 | Aug 2010,19.6 3142 | Sep 2010,25.2 3143 | Oct 2010,23.5 3144 | Nov 2010,21.5 3145 | Dec 2010,14.4 3146 | Jan 2011,18.8 3147 | Feb 2011,29.6 3148 | Mar 2011,55.8 3149 | Apr 2011,54.4 3150 | May 2011,41.6 3151 | Jun 2011,37 3152 | Jul 2011,43.8 3153 | Aug 2011,50.6 3154 | Sep 2011,78 3155 | Oct 2011,88 3156 | Nov 2011,96.7 3157 | Dec 2011,73 3158 | Jan 2012,58.3 3159 | Feb 2012,32.9 3160 | Mar 2012,64.3 3161 | Apr 2012,55.2 3162 | May 2012,69 3163 | Jun 2012,64.5 3164 | Jul 2012,66.5 3165 | Aug 2012,63 3166 | Sep 2012,61.4 3167 | Oct 2012,53.3 3168 | Nov 2012,61.8 3169 | Dec 2012,40.8 3170 | Jan 2013,62.9 3171 | Feb 2013,38.1 3172 | Mar 2013,57.9 3173 | Apr 2013,72.4 3174 | May 2013,78.7 3175 | Jun 2013,52.5 3176 | Jul 2013,57 3177 | Aug 2013,66 3178 | Sep 2013,37 3179 | -------------------------------------------------------------------------------- /PlottingWithPytonTools/Automobile price data.csv: -------------------------------------------------------------------------------- 1 | symboling,normalized-losses,make,fuel-type,aspiration,num-of-doors,body-style,drive-wheels,engine-location,wheel-base,length,width,height,curb-weight,engine-type,num-of-cylinders,engine-size,fuel-system,bore,stroke,compression-ratio,horsepower,peak-rpm,city-mpg,highway-mpg,price 2 | 3,?,alfa-romero,gas,std,two,convertible,rwd,front,88.60,168.80,64.10,48.80,2548,dohc,four,130,mpfi,3.47,2.68,9.00,111,5000,21,27,13495 3 | 3,?,alfa-romero,gas,std,two,convertible,rwd,front,88.60,168.80,64.10,48.80,2548,dohc,four,130,mpfi,3.47,2.68,9.00,111,5000,21,27,16500 4 | 1,?,alfa-romero,gas,std,two,hatchback,rwd,front,94.50,171.20,65.50,52.40,2823,ohcv,six,152,mpfi,2.68,3.47,9.00,154,5000,19,26,16500 5 | 2,164,audi,gas,std,four,sedan,fwd,front,99.80,176.60,66.20,54.30,2337,ohc,four,109,mpfi,3.19,3.40,10.00,102,5500,24,30,13950 6 | 2,164,audi,gas,std,four,sedan,4wd,front,99.40,176.60,66.40,54.30,2824,ohc,five,136,mpfi,3.19,3.40,8.00,115,5500,18,22,17450 7 | 2,?,audi,gas,std,two,sedan,fwd,front,99.80,177.30,66.30,53.10,2507,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,15250 8 | 1,158,audi,gas,std,four,sedan,fwd,front,105.80,192.70,71.40,55.70,2844,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,17710 9 | 1,?,audi,gas,std,four,wagon,fwd,front,105.80,192.70,71.40,55.70,2954,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,25,18920 10 | 1,158,audi,gas,turbo,four,sedan,fwd,front,105.80,192.70,71.40,55.90,3086,ohc,five,131,mpfi,3.13,3.40,8.30,140,5500,17,20,23875 11 | 0,?,audi,gas,turbo,two,hatchback,4wd,front,99.50,178.20,67.90,52.00,3053,ohc,five,131,mpfi,3.13,3.40,7.00,160,5500,16,22,? 12 | 2,192,bmw,gas,std,two,sedan,rwd,front,101.20,176.80,64.80,54.30,2395,ohc,four,108,mpfi,3.50,2.80,8.80,101,5800,23,29,16430 13 | 0,192,bmw,gas,std,four,sedan,rwd,front,101.20,176.80,64.80,54.30,2395,ohc,four,108,mpfi,3.50,2.80,8.80,101,5800,23,29,16925 14 | 0,188,bmw,gas,std,two,sedan,rwd,front,101.20,176.80,64.80,54.30,2710,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,21,28,20970 15 | 0,188,bmw,gas,std,four,sedan,rwd,front,101.20,176.80,64.80,54.30,2765,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,21,28,21105 16 | 1,?,bmw,gas,std,four,sedan,rwd,front,103.50,189.00,66.90,55.70,3055,ohc,six,164,mpfi,3.31,3.19,9.00,121,4250,20,25,24565 17 | 0,?,bmw,gas,std,four,sedan,rwd,front,103.50,189.00,66.90,55.70,3230,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,16,22,30760 18 | 0,?,bmw,gas,std,two,sedan,rwd,front,103.50,193.80,67.90,53.70,3380,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,16,22,41315 19 | 0,?,bmw,gas,std,four,sedan,rwd,front,110.00,197.00,70.90,56.30,3505,ohc,six,209,mpfi,3.62,3.39,8.00,182,5400,15,20,36880 20 | 2,121,chevrolet,gas,std,two,hatchback,fwd,front,88.40,141.10,60.30,53.20,1488,l,three,61,2bbl,2.91,3.03,9.50,48,5100,47,53,5151 21 | 1,98,chevrolet,gas,std,two,hatchback,fwd,front,94.50,155.90,63.60,52.00,1874,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,6295 22 | 0,81,chevrolet,gas,std,four,sedan,fwd,front,94.50,158.80,63.60,52.00,1909,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,6575 23 | 1,118,dodge,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1876,ohc,four,90,2bbl,2.97,3.23,9.41,68,5500,37,41,5572 24 | 1,118,dodge,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1876,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6377 25 | 1,118,dodge,gas,turbo,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,2128,ohc,four,98,mpfi,3.03,3.39,7.60,102,5500,24,30,7957 26 | 1,148,dodge,gas,std,four,hatchback,fwd,front,93.70,157.30,63.80,50.60,1967,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6229 27 | 1,148,dodge,gas,std,four,sedan,fwd,front,93.70,157.30,63.80,50.60,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6692 28 | 1,148,dodge,gas,std,four,sedan,fwd,front,93.70,157.30,63.80,50.60,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,7609 29 | 1,148,dodge,gas,turbo,?,sedan,fwd,front,93.70,157.30,63.80,50.60,2191,ohc,four,98,mpfi,3.03,3.39,7.60,102,5500,24,30,8558 30 | -1,110,dodge,gas,std,four,wagon,fwd,front,103.30,174.60,64.60,59.80,2535,ohc,four,122,2bbl,3.34,3.46,8.50,88,5000,24,30,8921 31 | 3,145,dodge,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2811,ohc,four,156,mfi,3.60,3.90,7.00,145,5000,19,24,12964 32 | 2,137,honda,gas,std,two,hatchback,fwd,front,86.60,144.60,63.90,50.80,1713,ohc,four,92,1bbl,2.91,3.41,9.60,58,4800,49,54,6479 33 | 2,137,honda,gas,std,two,hatchback,fwd,front,86.60,144.60,63.90,50.80,1819,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,31,38,6855 34 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1837,ohc,four,79,1bbl,2.91,3.07,10.10,60,5500,38,42,5399 35 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1940,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,6529 36 | 1,101,honda,gas,std,two,hatchback,fwd,front,93.70,150.00,64.00,52.60,1956,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,7129 37 | 0,110,honda,gas,std,four,sedan,fwd,front,96.50,163.40,64.00,54.50,2010,ohc,four,92,1bbl,2.91,3.41,9.20,76,6000,30,34,7295 38 | 0,78,honda,gas,std,four,wagon,fwd,front,96.50,157.10,63.90,58.30,2024,ohc,four,92,1bbl,2.92,3.41,9.20,76,6000,30,34,7295 39 | 0,106,honda,gas,std,two,hatchback,fwd,front,96.50,167.50,65.20,53.30,2236,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,7895 40 | 0,106,honda,gas,std,two,hatchback,fwd,front,96.50,167.50,65.20,53.30,2289,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,9095 41 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,65.20,54.10,2304,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,8845 42 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,62.50,54.10,2372,ohc,four,110,1bbl,3.15,3.58,9.00,86,5800,27,33,10295 43 | 0,85,honda,gas,std,four,sedan,fwd,front,96.50,175.40,65.20,54.10,2465,ohc,four,110,mpfi,3.15,3.58,9.00,101,5800,24,28,12945 44 | 1,107,honda,gas,std,two,sedan,fwd,front,96.50,169.10,66.00,51.00,2293,ohc,four,110,2bbl,3.15,3.58,9.10,100,5500,25,31,10345 45 | 0,?,isuzu,gas,std,four,sedan,rwd,front,94.30,170.70,61.80,53.50,2337,ohc,four,111,2bbl,3.31,3.23,8.50,78,4800,24,29,6785 46 | 1,?,isuzu,gas,std,two,sedan,fwd,front,94.50,155.90,63.60,52.00,1874,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,? 47 | 0,?,isuzu,gas,std,four,sedan,fwd,front,94.50,155.90,63.60,52.00,1909,ohc,four,90,2bbl,3.03,3.11,9.60,70,5400,38,43,? 48 | 2,?,isuzu,gas,std,two,hatchback,rwd,front,96.00,172.60,65.20,51.40,2734,ohc,four,119,spfi,3.43,3.23,9.20,90,5000,24,29,11048 49 | 0,145,jaguar,gas,std,four,sedan,rwd,front,113.00,199.60,69.60,52.80,4066,dohc,six,258,mpfi,3.63,4.17,8.10,176,4750,15,19,32250 50 | 0,?,jaguar,gas,std,four,sedan,rwd,front,113.00,199.60,69.60,52.80,4066,dohc,six,258,mpfi,3.63,4.17,8.10,176,4750,15,19,35550 51 | 0,?,jaguar,gas,std,two,sedan,rwd,front,102.00,191.70,70.60,47.80,3950,ohcv,twelve,326,mpfi,3.54,2.76,11.50,262,5000,13,17,36000 52 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1890,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,30,31,5195 53 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1900,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6095 54 | 1,104,mazda,gas,std,two,hatchback,fwd,front,93.10,159.10,64.20,54.10,1905,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6795 55 | 1,113,mazda,gas,std,four,sedan,fwd,front,93.10,166.80,64.20,54.10,1945,ohc,four,91,2bbl,3.03,3.15,9.00,68,5000,31,38,6695 56 | 1,113,mazda,gas,std,four,sedan,fwd,front,93.10,166.80,64.20,54.10,1950,ohc,four,91,2bbl,3.08,3.15,9.00,68,5000,31,38,7395 57 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2380,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,10945 58 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2380,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,11845 59 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2385,rotor,two,70,4bbl,?,?,9.40,101,6000,17,23,13645 60 | 3,150,mazda,gas,std,two,hatchback,rwd,front,95.30,169.00,65.70,49.60,2500,rotor,two,80,mpfi,?,?,9.40,135,6000,16,23,15645 61 | 1,129,mazda,gas,std,two,hatchback,fwd,front,98.80,177.80,66.50,53.70,2385,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,8845 62 | 0,115,mazda,gas,std,four,sedan,fwd,front,98.80,177.80,66.50,55.50,2410,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,8495 63 | 1,129,mazda,gas,std,two,hatchback,fwd,front,98.80,177.80,66.50,53.70,2385,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,10595 64 | 0,115,mazda,gas,std,four,sedan,fwd,front,98.80,177.80,66.50,55.50,2410,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,10245 65 | 0,?,mazda,diesel,std,?,sedan,fwd,front,98.80,177.80,66.50,55.50,2443,ohc,four,122,idi,3.39,3.39,22.70,64,4650,36,42,10795 66 | 0,115,mazda,gas,std,four,hatchback,fwd,front,98.80,177.80,66.50,55.50,2425,ohc,four,122,2bbl,3.39,3.39,8.60,84,4800,26,32,11245 67 | 0,118,mazda,gas,std,four,sedan,rwd,front,104.90,175.00,66.10,54.40,2670,ohc,four,140,mpfi,3.76,3.16,8.00,120,5000,19,27,18280 68 | 0,?,mazda,diesel,std,four,sedan,rwd,front,104.90,175.00,66.10,54.40,2700,ohc,four,134,idi,3.43,3.64,22.00,72,4200,31,39,18344 69 | -1,93,mercedes-benz,diesel,turbo,four,sedan,rwd,front,110.00,190.90,70.30,56.50,3515,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,25552 70 | -1,93,mercedes-benz,diesel,turbo,four,wagon,rwd,front,110.00,190.90,70.30,58.70,3750,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,28248 71 | 0,93,mercedes-benz,diesel,turbo,two,hardtop,rwd,front,106.70,187.50,70.30,54.90,3495,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,28176 72 | -1,93,mercedes-benz,diesel,turbo,four,sedan,rwd,front,115.60,202.60,71.70,56.30,3770,ohc,five,183,idi,3.58,3.64,21.50,123,4350,22,25,31600 73 | -1,?,mercedes-benz,gas,std,four,sedan,rwd,front,115.60,202.60,71.70,56.50,3740,ohcv,eight,234,mpfi,3.46,3.10,8.30,155,4750,16,18,34184 74 | 3,142,mercedes-benz,gas,std,two,convertible,rwd,front,96.60,180.30,70.50,50.80,3685,ohcv,eight,234,mpfi,3.46,3.10,8.30,155,4750,16,18,35056 75 | 0,?,mercedes-benz,gas,std,four,sedan,rwd,front,120.90,208.10,71.70,56.70,3900,ohcv,eight,308,mpfi,3.80,3.35,8.00,184,4500,14,16,40960 76 | 1,?,mercedes-benz,gas,std,two,hardtop,rwd,front,112.00,199.20,72.00,55.40,3715,ohcv,eight,304,mpfi,3.80,3.35,8.00,184,4500,14,16,45400 77 | 1,?,mercury,gas,turbo,two,hatchback,rwd,front,102.70,178.40,68.00,54.80,2910,ohc,four,140,mpfi,3.78,3.12,8.00,175,5000,19,24,16503 78 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,1918,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,37,41,5389 79 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,1944,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,31,38,6189 80 | 2,161,mitsubishi,gas,std,two,hatchback,fwd,front,93.70,157.30,64.40,50.80,2004,ohc,four,92,2bbl,2.97,3.23,9.40,68,5500,31,38,6669 81 | 1,161,mitsubishi,gas,turbo,two,hatchback,fwd,front,93,157.30,63.80,50.80,2145,ohc,four,98,spdi,3.03,3.39,7.60,102,5500,24,30,7689 82 | 3,153,mitsubishi,gas,turbo,two,hatchback,fwd,front,96.30,173.00,65.40,49.40,2370,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9959 83 | 3,153,mitsubishi,gas,std,two,hatchback,fwd,front,96.30,173.00,65.40,49.40,2328,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,8499 84 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2833,ohc,four,156,spdi,3.58,3.86,7.00,145,5000,19,24,12629 85 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2921,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,14869 86 | 3,?,mitsubishi,gas,turbo,two,hatchback,fwd,front,95.90,173.20,66.30,50.20,2926,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,14489 87 | 1,125,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2365,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,6989 88 | 1,125,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2405,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,25,32,8189 89 | 1,125,mitsubishi,gas,turbo,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2403,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9279 90 | -1,137,mitsubishi,gas,std,four,sedan,fwd,front,96.30,172.40,65.40,51.60,2403,ohc,four,110,spdi,3.17,3.46,7.50,116,5500,23,30,9279 91 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1889,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,5499 92 | 1,128,nissan,diesel,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,2017,ohc,four,103,idi,2.99,3.47,21.90,55,4800,45,50,7099 93 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1918,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,6649 94 | 1,122,nissan,gas,std,four,sedan,fwd,front,94.50,165.30,63.80,54.50,1938,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,6849 95 | 1,103,nissan,gas,std,four,wagon,fwd,front,94.50,170.20,63.80,53.50,2024,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7349 96 | 1,128,nissan,gas,std,two,sedan,fwd,front,94.50,165.30,63.80,54.50,1951,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7299 97 | 1,128,nissan,gas,std,two,hatchback,fwd,front,94.50,165.60,63.80,53.30,2028,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7799 98 | 1,122,nissan,gas,std,four,sedan,fwd,front,94.50,165.30,63.80,54.50,1971,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7499 99 | 1,103,nissan,gas,std,four,wagon,fwd,front,94.50,170.20,63.80,53.50,2037,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,7999 100 | 2,168,nissan,gas,std,two,hardtop,fwd,front,95.10,162.40,63.80,53.30,2008,ohc,four,97,2bbl,3.15,3.29,9.40,69,5200,31,37,8249 101 | 0,106,nissan,gas,std,four,hatchback,fwd,front,97.20,173.40,65.20,54.70,2324,ohc,four,120,2bbl,3.33,3.47,8.50,97,5200,27,34,8949 102 | 0,106,nissan,gas,std,four,sedan,fwd,front,97.20,173.40,65.20,54.70,2302,ohc,four,120,2bbl,3.33,3.47,8.50,97,5200,27,34,9549 103 | 0,128,nissan,gas,std,four,sedan,fwd,front,100.40,181.70,66.50,55.10,3095,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,17,22,13499 104 | 0,108,nissan,gas,std,four,wagon,fwd,front,100.40,184.60,66.50,56.10,3296,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,17,22,14399 105 | 0,108,nissan,gas,std,four,sedan,fwd,front,100.40,184.60,66.50,55.10,3060,ohcv,six,181,mpfi,3.43,3.27,9.00,152,5200,19,25,13499 106 | 3,194,nissan,gas,std,two,hatchback,rwd,front,91.30,170.70,67.90,49.70,3071,ohcv,six,181,mpfi,3.43,3.27,9.00,160,5200,19,25,17199 107 | 3,194,nissan,gas,turbo,two,hatchback,rwd,front,91.30,170.70,67.90,49.70,3139,ohcv,six,181,mpfi,3.43,3.27,7.80,200,5200,17,23,19699 108 | 1,231,nissan,gas,std,two,hatchback,rwd,front,99.20,178.50,67.90,49.70,3139,ohcv,six,181,mpfi,3.43,3.27,9.00,160,5200,19,25,18399 109 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3020,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,11900 110 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3197,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,13200 111 | 0,?,peugot,gas,std,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3230,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,12440 112 | 0,?,peugot,diesel,turbo,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3430,l,four,152,idi,3.70,3.52,21.00,95,4150,25,25,13860 113 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3075,l,four,120,mpfi,3.46,2.19,8.40,95,5000,19,24,15580 114 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3252,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,16900 115 | 0,?,peugot,gas,std,four,wagon,rwd,front,114.20,198.90,68.40,56.70,3285,l,four,120,mpfi,3.46,2.19,8.40,95,5000,19,24,16695 116 | 0,?,peugot,diesel,turbo,four,wagon,rwd,front,114.20,198.90,68.40,58.70,3485,l,four,152,idi,3.70,3.52,21.00,95,4150,25,25,17075 117 | 0,161,peugot,gas,std,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3075,l,four,120,mpfi,3.46,3.19,8.40,97,5000,19,24,16630 118 | 0,161,peugot,diesel,turbo,four,sedan,rwd,front,107.90,186.70,68.40,56.70,3252,l,four,152,idi,3.70,3.52,21.00,95,4150,28,33,17950 119 | 0,161,peugot,gas,turbo,four,sedan,rwd,front,108.00,186.70,68.30,56.00,3130,l,four,134,mpfi,3.61,3.21,7.00,142,5600,18,24,18150 120 | 1,119,plymouth,gas,std,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,1918,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,37,41,5572 121 | 1,119,plymouth,gas,turbo,two,hatchback,fwd,front,93.70,157.30,63.80,50.80,2128,ohc,four,98,spdi,3.03,3.39,7.60,102,5500,24,30,7957 122 | 1,154,plymouth,gas,std,four,hatchback,fwd,front,93.70,157.30,63.80,50.60,1967,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6229 123 | 1,154,plymouth,gas,std,four,sedan,fwd,front,93.70,167.30,63.80,50.80,1989,ohc,four,90,2bbl,2.97,3.23,9.40,68,5500,31,38,6692 124 | 1,154,plymouth,gas,std,four,sedan,fwd,front,93.70,167.30,63.80,50.80,2191,ohc,four,98,2bbl,2.97,3.23,9.40,68,5500,31,38,7609 125 | -1,74,plymouth,gas,std,four,wagon,fwd,front,103.30,174.60,64.60,59.80,2535,ohc,four,122,2bbl,3.35,3.46,8.50,88,5000,24,30,8921 126 | 3,?,plymouth,gas,turbo,two,hatchback,rwd,front,95.90,173.20,66.30,50.20,2818,ohc,four,156,spdi,3.59,3.86,7.00,145,5000,19,24,12764 127 | 3,186,porsche,gas,std,two,hatchback,rwd,front,94.50,168.90,68.30,50.20,2778,ohc,four,151,mpfi,3.94,3.11,9.50,143,5500,19,27,22018 128 | 3,?,porsche,gas,std,two,hardtop,rwd,rear,89.50,168.90,65.00,51.60,2756,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,32528 129 | 3,?,porsche,gas,std,two,hardtop,rwd,rear,89.50,168.90,65.00,51.60,2756,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,34028 130 | 3,?,porsche,gas,std,two,convertible,rwd,rear,89.50,168.90,65.00,51.60,2800,ohcf,six,194,mpfi,3.74,2.90,9.50,207,5900,17,25,37028 131 | 1,?,porsche,gas,std,two,hatchback,rwd,front,98.40,175.70,72.30,50.50,3366,dohcv,eight,203,mpfi,3.94,3.11,10.00,288,5750,17,28,? 132 | 0,?,renault,gas,std,four,wagon,fwd,front,96.10,181.50,66.50,55.20,2579,ohc,four,132,mpfi,3.46,3.90,8.70,?,?,23,31,9295 133 | 2,?,renault,gas,std,two,hatchback,fwd,front,96.10,176.80,66.60,50.50,2460,ohc,four,132,mpfi,3.46,3.90,8.70,?,?,23,31,9895 134 | 3,150,saab,gas,std,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2658,ohc,four,121,mpfi,3.54,3.07,9.31,110,5250,21,28,11850 135 | 2,104,saab,gas,std,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2695,ohc,four,121,mpfi,3.54,3.07,9.30,110,5250,21,28,12170 136 | 3,150,saab,gas,std,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2707,ohc,four,121,mpfi,2.54,2.07,9.30,110,5250,21,28,15040 137 | 2,104,saab,gas,std,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2758,ohc,four,121,mpfi,3.54,3.07,9.30,110,5250,21,28,15510 138 | 3,150,saab,gas,turbo,two,hatchback,fwd,front,99.10,186.60,66.50,56.10,2808,dohc,four,121,mpfi,3.54,3.07,9.00,160,5500,19,26,18150 139 | 2,104,saab,gas,turbo,four,sedan,fwd,front,99.10,186.60,66.50,56.10,2847,dohc,four,121,mpfi,3.54,3.07,9.00,160,5500,19,26,18620 140 | 2,83,subaru,gas,std,two,hatchback,fwd,front,93.70,156.90,63.40,53.70,2050,ohcf,four,97,2bbl,3.62,2.36,9.00,69,4900,31,36,5118 141 | 2,83,subaru,gas,std,two,hatchback,fwd,front,93.70,157.90,63.60,53.70,2120,ohcf,four,108,2bbl,3.62,2.64,8.70,73,4400,26,31,7053 142 | 2,83,subaru,gas,std,two,hatchback,4wd,front,93.30,157.30,63.80,55.70,2240,ohcf,four,108,2bbl,3.62,2.64,8.70,73,4400,26,31,7603 143 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2145,ohcf,four,108,2bbl,3.62,2.64,9.50,82,4800,32,37,7126 144 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2190,ohcf,four,108,2bbl,3.62,2.64,9.50,82,4400,28,33,7775 145 | 0,102,subaru,gas,std,four,sedan,fwd,front,97.20,172.00,65.40,52.50,2340,ohcf,four,108,mpfi,3.62,2.64,9.00,94,5200,26,32,9960 146 | 0,102,subaru,gas,std,four,sedan,4wd,front,97.00,172.00,65.40,54.30,2385,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,24,25,9233 147 | 0,102,subaru,gas,turbo,four,sedan,4wd,front,97.00,172.00,65.40,54.30,2510,ohcf,four,108,mpfi,3.62,2.64,7.70,111,4800,24,29,11259 148 | 0,89,subaru,gas,std,four,wagon,fwd,front,97.00,173.50,65.40,53.00,2290,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,28,32,7463 149 | 0,89,subaru,gas,std,four,wagon,fwd,front,97.00,173.50,65.40,53.00,2455,ohcf,four,108,mpfi,3.62,2.64,9.00,94,5200,25,31,10198 150 | 0,85,subaru,gas,std,four,wagon,4wd,front,96.90,173.60,65.40,54.90,2420,ohcf,four,108,2bbl,3.62,2.64,9.00,82,4800,23,29,8013 151 | 0,85,subaru,gas,turbo,four,wagon,4wd,front,96.90,173.60,65.40,54.90,2650,ohcf,four,108,mpfi,3.62,2.64,7.70,111,4800,23,23,11694 152 | 1,87,toyota,gas,std,two,hatchback,fwd,front,95.70,158.70,63.60,54.50,1985,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,35,39,5348 153 | 1,87,toyota,gas,std,two,hatchback,fwd,front,95.70,158.70,63.60,54.50,2040,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,38,6338 154 | 1,74,toyota,gas,std,four,hatchback,fwd,front,95.70,158.70,63.60,54.50,2015,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,38,6488 155 | 0,77,toyota,gas,std,four,wagon,fwd,front,95.70,169.70,63.60,59.10,2280,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,31,37,6918 156 | 0,81,toyota,gas,std,four,wagon,4wd,front,95.70,169.70,63.60,59.10,2290,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,27,32,7898 157 | 0,91,toyota,gas,std,four,wagon,4wd,front,95.70,169.70,63.60,59.10,3110,ohc,four,92,2bbl,3.05,3.03,9.00,62,4800,27,32,8778 158 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2081,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,30,37,6938 159 | 0,91,toyota,gas,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2109,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,30,37,7198 160 | 0,91,toyota,diesel,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2275,ohc,four,110,idi,3.27,3.35,22.50,56,4500,34,36,7898 161 | 0,91,toyota,diesel,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2275,ohc,four,110,idi,3.27,3.35,22.50,56,4500,38,47,7788 162 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,53.00,2094,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,38,47,7738 163 | 0,91,toyota,gas,std,four,hatchback,fwd,front,95.70,166.30,64.40,52.80,2122,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,28,34,8358 164 | 0,91,toyota,gas,std,four,sedan,fwd,front,95.70,166.30,64.40,52.80,2140,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,28,34,9258 165 | 1,168,toyota,gas,std,two,sedan,rwd,front,94.50,168.70,64.00,52.60,2169,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,29,34,8058 166 | 1,168,toyota,gas,std,two,hatchback,rwd,front,94.50,168.70,64.00,52.60,2204,ohc,four,98,2bbl,3.19,3.03,9.00,70,4800,29,34,8238 167 | 1,168,toyota,gas,std,two,sedan,rwd,front,94.50,168.70,64.00,52.60,2265,dohc,four,98,mpfi,3.24,3.08,9.40,112,6600,26,29,9298 168 | 1,168,toyota,gas,std,two,hatchback,rwd,front,94.50,168.70,64.00,52.60,2300,dohc,four,98,mpfi,3.24,3.08,9.40,112,6600,26,29,9538 169 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2540,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,8449 170 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2536,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,9639 171 | 2,134,toyota,gas,std,two,hatchback,rwd,front,98.40,176.20,65.60,52.00,2551,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,9989 172 | 2,134,toyota,gas,std,two,hardtop,rwd,front,98.40,176.20,65.60,52.00,2679,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,11199 173 | 2,134,toyota,gas,std,two,hatchback,rwd,front,98.40,176.20,65.60,52.00,2714,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,11549 174 | 2,134,toyota,gas,std,two,convertible,rwd,front,98.40,176.20,65.60,53.00,2975,ohc,four,146,mpfi,3.62,3.50,9.30,116,4800,24,30,17669 175 | -1,65,toyota,gas,std,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2326,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,29,34,8948 176 | -1,65,toyota,diesel,turbo,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2480,ohc,four,110,idi,3.27,3.35,22.50,73,4500,30,33,10698 177 | -1,65,toyota,gas,std,four,hatchback,fwd,front,102.40,175.60,66.50,53.90,2414,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,9988 178 | -1,65,toyota,gas,std,four,sedan,fwd,front,102.40,175.60,66.50,54.90,2414,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,10898 179 | -1,65,toyota,gas,std,four,hatchback,fwd,front,102.40,175.60,66.50,53.90,2458,ohc,four,122,mpfi,3.31,3.54,8.70,92,4200,27,32,11248 180 | 3,197,toyota,gas,std,two,hatchback,rwd,front,102.90,183.50,67.70,52.00,2976,dohc,six,171,mpfi,3.27,3.35,9.30,161,5200,20,24,16558 181 | 3,197,toyota,gas,std,two,hatchback,rwd,front,102.90,183.50,67.70,52.00,3016,dohc,six,171,mpfi,3.27,3.35,9.30,161,5200,19,24,15998 182 | -1,90,toyota,gas,std,four,sedan,rwd,front,104.50,187.80,66.50,54.10,3131,dohc,six,171,mpfi,3.27,3.35,9.20,156,5200,20,24,15690 183 | -1,?,toyota,gas,std,four,wagon,rwd,front,104.50,187.80,66.50,54.10,3151,dohc,six,161,mpfi,3.27,3.35,9.20,156,5200,19,24,15750 184 | 2,122,volkswagen,diesel,std,two,sedan,fwd,front,97.30,171.70,65.50,55.70,2261,ohc,four,97,idi,3.01,3.40,23.00,52,4800,37,46,7775 185 | 2,122,volkswagen,gas,std,two,sedan,fwd,front,97.30,171.70,65.50,55.70,2209,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,7975 186 | 2,94,volkswagen,diesel,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2264,ohc,four,97,idi,3.01,3.40,23.00,52,4800,37,46,7995 187 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2212,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,8195 188 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2275,ohc,four,109,mpfi,3.19,3.40,9.00,85,5250,27,34,8495 189 | 2,94,volkswagen,diesel,turbo,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2319,ohc,four,97,idi,3.01,3.40,23.00,68,4500,37,42,9495 190 | 2,94,volkswagen,gas,std,four,sedan,fwd,front,97.30,171.70,65.50,55.70,2300,ohc,four,109,mpfi,3.19,3.40,10.00,100,5500,26,32,9995 191 | 3,?,volkswagen,gas,std,two,convertible,fwd,front,94.50,159.30,64.20,55.60,2254,ohc,four,109,mpfi,3.19,3.40,8.50,90,5500,24,29,11595 192 | 3,256,volkswagen,gas,std,two,hatchback,fwd,front,94.50,165.70,64.00,51.40,2221,ohc,four,109,mpfi,3.19,3.40,8.50,90,5500,24,29,9980 193 | 0,?,volkswagen,gas,std,four,sedan,fwd,front,100.40,180.20,66.90,55.10,2661,ohc,five,136,mpfi,3.19,3.40,8.50,110,5500,19,24,13295 194 | 0,?,volkswagen,diesel,turbo,four,sedan,fwd,front,100.40,180.20,66.90,55.10,2579,ohc,four,97,idi,3.01,3.40,23.00,68,4500,33,38,13845 195 | 0,?,volkswagen,gas,std,four,wagon,fwd,front,100.40,183.10,66.90,55.10,2563,ohc,four,109,mpfi,3.19,3.40,9.00,88,5500,25,31,12290 196 | -2,103,volvo,gas,std,four,sedan,rwd,front,104.30,188.80,67.20,56.20,2912,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,12940 197 | -1,74,volvo,gas,std,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3034,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,13415 198 | -2,103,volvo,gas,std,four,sedan,rwd,front,104.30,188.80,67.20,56.20,2935,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,24,28,15985 199 | -1,74,volvo,gas,std,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3042,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,24,28,16515 200 | -2,103,volvo,gas,turbo,four,sedan,rwd,front,104.30,188.80,67.20,56.20,3045,ohc,four,130,mpfi,3.62,3.15,7.50,162,5100,17,22,18420 201 | -1,74,volvo,gas,turbo,four,wagon,rwd,front,104.30,188.80,67.20,57.50,3157,ohc,four,130,mpfi,3.62,3.15,7.50,162,5100,17,22,18950 202 | -1,95,volvo,gas,std,four,sedan,rwd,front,109.10,188.80,68.90,55.50,2952,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,23,28,16845 203 | -1,95,volvo,gas,turbo,four,sedan,rwd,front,109.10,188.80,68.80,55.50,3049,ohc,four,141,mpfi,3.78,3.15,8.70,160,5300,19,25,19045 204 | -1,95,volvo,gas,std,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3012,ohcv,six,173,mpfi,3.58,2.87,8.80,134,5500,18,23,21485 205 | -1,95,volvo,diesel,turbo,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3217,ohc,six,145,idi,3.01,3.40,23.00,106,4800,26,27,22470 206 | -1,95,volvo,gas,turbo,four,sedan,rwd,front,109.10,188.80,68.90,55.50,3062,ohc,four,141,mpfi,3.78,3.15,9.50,114,5400,19,25,22625 -------------------------------------------------------------------------------- /PlottingWithPytonTools/img/Cleveland.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PlottingWithPytonTools/img/Cleveland.jpg -------------------------------------------------------------------------------- /PlottingWithPytonTools/img/Tufte.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PlottingWithPytonTools/img/Tufte.jpg -------------------------------------------------------------------------------- /PlottingWithPytonTools/img/Tukey.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenElston/ExploringDataWithPython/c6e62fa4921f5c88b55aea461ebf459ef6a1a231/PlottingWithPytonTools/img/Tukey.jpg -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Exploration and Visualization of Data With Python 2 | 3 | ## Tutorial presented at PyData Seattle, July 2016 4 | 5 | This Jupyter notebook introduces you to some basic principles data exploration and visualization using the Python language. The lessons contained in the notebook, revolve around exploration of the characteristics of a number of automobiles. The ultimate goal is to build a model for predicting the price of a car from its characteristics. The goal is to understand the relationships in these data using visualization methods. 6 | 7 | ## About this Jupyter Notebook 8 | The Jupyter notebook contains material to help you 9 | 10 | ``pip install seaborn`` 11 | 12 | 13 | 14 | ## About the author 15 | 16 | These lessons have been prepared by **Steve Elston**, co-founder and principle consultant at Quantia Analytics, LLC. Steve is a long time data geek and analytical software pioneer, having lead R&D at the SPlus companies and co-fou learn how to explore data visually. This notebook and the data set can be downloaded from GitHub: 17 | 18 | **https://github.com/StephenElston/ExploringDataWithPython** 19 | 20 | This notebook was constructed using the Anaconda 3.5 Python distribution. If you are not running version Anaconda 3.5 or higher, we suggest you update your Anaconda distribution now. You can download the Python 3 Anaconda distribution for your operating system from the [Continum Analytics web site](https://www.continuum.i 21 | 22 | ``conda install seaborn`` 23 | 24 | or nding FinAnalytica, among other positions. He assists clients with staff training and analytics problems in a number of areas. A summary of his activities include: 25 | 26 | - Instructor, University of Washington and Harvard University data science programs 27 | - O'Reilly author and creator of four edX data science courses 28 | - Decades of experience in predictive analytics and machine learning 29 | - Microsoft Data Most Valued Professional, MVP 30 | - Experience in several industries: payment, telecom, capital markets, logistics, energy 31 | - PhD, MS in Geophysics from Princeton University 32 | 33 | ## Why visualization? 34 | 35 | Visualization is an essential method in any data scientist’s toolbox. Visualization is a key first step in the exploration of most data sets. As a general rule, you should never start creating models until you have an understanding of the relationships in your data. 36 | 37 | To run this notebook you need the Seaborn graphics packages. If you have not done so, you will need to install Seaborn as it is not in the Anaconda distribution as of now. From a command prompt on your computer type the following command. If no errors occur, you will have installed Seaborn. 38 | 39 | ``pip install seaborn`` 40 | 41 | or you have examined the data and understand the relationships. Otherwise, you risk wasting your time creating models blindly. Visualization is also a powerful tool for presentation of results and for determining sources of problems with analytics. 42 | 43 | The concepts of exploring a data set visually were pioneered by John Tukey in the 1960s and 1970s. Tukey consolidated his many ideas on data exploration into a book in the late 1970s, ***John Tukey, Exploratory Data Analysis, 1977, Addison-Westley***. 44 | 45 | Bill Cleveland documented his seminal work in visualization of complex data sets in his book, ***William S. Cleveland, Visualizing Data, 1993, Hobart Press***. 46 | 47 | The key concept of exploratory data analysis (EDA) or visual exploration of data is to understand the relationships in the data set. Specifically using visualization when you approach a new data set you can: 48 | 49 | - Explore complex data sets, using visualization to develop understanding of the inherent relationships. 50 | - Use different chart types to create multiple views of data to highlight different aspects of the inherent relationships. 51 | - Use plot aesthetics to project multiple dimensions. 52 | - Apply conditioning or faceting methods to project multiple dimensions. 53 | 54 | 55 | 56 | These lessons are divided into three parts. In each part you will learn how to use Python visualization tools. 57 | 58 | - **Overview of plot types** is a review of creating basic plot types used to construct visualizations. 59 | - **Using Aesthetics** is an overview of how to project additional plot dimensions using plot aesthetics. 60 | - **Facetted plotting** also know as conditioned plotting or lattice plotting introduces a powerful method for visualizing higher dimensional data. 61 | 62 | In these exercises, you will use both Pandas plotting and the Seaborn package. We assume you have at least a bit of experience using Pandas and Jupyter notebooks. 63 | 64 | 65 | ## Resources 66 | 67 | In this tutorial we will work with two powerful Python packages, Pandas and Seaborn. Both packages have extensive online documentation. There is an extensive tutorial on [**Visualizaton with Pandas**](http://pandas.pydata.org/pandas-docs/version/0.18.0/visualization.html). The [**Seaborn tutorial**](https://stanford.edu/~mwaskom/software/seaborn/tutorial.html) contains many examples of data visualization. The matplotlib web site has addition [**resources for learning plotting with Python tools**](http://matplotlib.org/resources/index.html). 68 | 69 | --------------------------------------------------------------------------------