The Crappiest Winter.


In [121]:
import pandas as pd
import matplotlib.pyplot as plt

% matplotlib inline

In [122]:
#I'm grabbing a year's worth of data for each year, from November 1 of the prior year to October 31 of the "named" year.
url11 = "http://www.wunderground.com/history/airport/KMDW/2010/11/1/CustomHistory.html?dayend=31&monthend=10&yearend=2011&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1"
url12 = "http://www.wunderground.com/history/airport/KMDW/2011/11/1/CustomHistory.html?dayend=31&monthend=10&yearend=2012&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1"
url13 = "http://www.wunderground.com/history/airport/KMDW/2012/11/1/CustomHistory.html?dayend=31&monthend=10&yearend=2013&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1"
url14 = "http://www.wunderground.com/history/airport/KMDW/2013/11/1/CustomHistory.html?dayend=31&monthend=10&yearend=2014&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1"
url15 = "http://www.wunderground.com/history/airport/KMDW/2014/11/1/CustomHistory.html?dayend=31&monthend=10&yearend=2015&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1"

In [123]:
df_2011 = pd.read_csv(url11)
df_2012 = pd.read_csv(url12)
df_2013 = pd.read_csv(url13)
df_2014 = pd.read_csv(url14)
df_2015 = pd.read_csv(url15)

In [124]:
#Check to make sure all our columns are in the same format. 
print (df_2011.columns == df_2012.columns)
print (df_2011.columns == df_2013.columns)
print (df_2011.columns == df_2014.columns)
print (df_2011.columns == df_2015.columns)


[ True  True  True  True  True  True  True  True  True  True  True  True
  True  True  True  True  True  True  True  True  True  True  True]
[ True  True  True  True  True  True  True  True  True  True  True  True
  True  True  True  True  True  True  True  True  True  True  True]
[ True  True  True  True  True  True  True  True  True  True  True  True
  True  True  True  True  True  True  True  True  True  True  True]
[ True  True  True  True  True  True  True  True  True  True  True  True
  True  True  True  True  True  True  True  True  True  True  True]

In [125]:
#Now let's check to see if the columns all contain the same object types. 
print ("2011 data types")
print (df_2011.dtypes)
print ()
print ("2012 data types compared to 2011")
print (df_2011.dtypes == df_2012.dtypes)
print ()
print ("2013 data types compared to 2011")
print (df_2011.dtypes == df_2013.dtypes)
print ()
print ("2014 data types compared to 2011")
print (df_2011.dtypes == df_2014.dtypes)
print ()
print ("2015 data types compared to 2011")
print (df_2011.dtypes == df_2015.dtypes)


2011 data types
CDT                            object
Max TemperatureF                int64
Mean TemperatureF               int64
Min TemperatureF                int64
Max Dew PointF                  int64
MeanDew PointF                  int64
Min DewpointF                   int64
Max Humidity                    int64
 Mean Humidity                  int64
 Min Humidity                   int64
 Max Sea Level PressureIn     float64
 Mean Sea Level PressureIn    float64
 Min Sea Level PressureIn     float64
 Max VisibilityMiles            int64
 Mean VisibilityMiles           int64
 Min VisibilityMiles            int64
 Max Wind SpeedMPH              int64
 Mean Wind SpeedMPH             int64
 Max Gust SpeedMPH            float64
PrecipitationIn               float64
 CloudCover                     int64
 Events                        object
 WindDirDegrees<br />          object
dtype: object

2012 data types compared to 2011
CDT                            True
Max TemperatureF               True
Mean TemperatureF              True
Min TemperatureF               True
Max Dew PointF                 True
MeanDew PointF                 True
Min DewpointF                  True
Max Humidity                   True
 Mean Humidity                 True
 Min Humidity                  True
 Max Sea Level PressureIn      True
 Mean Sea Level PressureIn     True
 Min Sea Level PressureIn      True
 Max VisibilityMiles           True
 Mean VisibilityMiles          True
 Min VisibilityMiles           True
 Max Wind SpeedMPH             True
 Mean Wind SpeedMPH            True
 Max Gust SpeedMPH             True
PrecipitationIn               False
 CloudCover                    True
 Events                        True
 WindDirDegrees<br />          True
dtype: bool

2013 data types compared to 2011
CDT                            True
Max TemperatureF               True
Mean TemperatureF              True
Min TemperatureF               True
Max Dew PointF                 True
MeanDew PointF                 True
Min DewpointF                  True
Max Humidity                   True
 Mean Humidity                 True
 Min Humidity                  True
 Max Sea Level PressureIn      True
 Mean Sea Level PressureIn     True
 Min Sea Level PressureIn      True
 Max VisibilityMiles           True
 Mean VisibilityMiles          True
 Min VisibilityMiles           True
 Max Wind SpeedMPH             True
 Mean Wind SpeedMPH            True
 Max Gust SpeedMPH             True
PrecipitationIn               False
 CloudCover                    True
 Events                        True
 WindDirDegrees<br />          True
dtype: bool

2014 data types compared to 2011
CDT                            True
Max TemperatureF               True
Mean TemperatureF              True
Min TemperatureF               True
Max Dew PointF                 True
MeanDew PointF                 True
Min DewpointF                  True
Max Humidity                   True
 Mean Humidity                 True
 Min Humidity                  True
 Max Sea Level PressureIn      True
 Mean Sea Level PressureIn     True
 Min Sea Level PressureIn      True
 Max VisibilityMiles           True
 Mean VisibilityMiles          True
 Min VisibilityMiles           True
 Max Wind SpeedMPH             True
 Mean Wind SpeedMPH            True
 Max Gust SpeedMPH             True
PrecipitationIn               False
 CloudCover                    True
 Events                        True
 WindDirDegrees<br />          True
dtype: bool

2015 data types compared to 2011
CDT                            True
Max TemperatureF               True
Mean TemperatureF              True
Min TemperatureF               True
Max Dew PointF                 True
MeanDew PointF                 True
Min DewpointF                  True
Max Humidity                   True
 Mean Humidity                 True
 Min Humidity                  True
 Max Sea Level PressureIn      True
 Mean Sea Level PressureIn     True
 Min Sea Level PressureIn      True
 Max VisibilityMiles           True
 Mean VisibilityMiles          True
 Min VisibilityMiles           True
 Max Wind SpeedMPH             True
 Mean Wind SpeedMPH            True
 Max Gust SpeedMPH            False
PrecipitationIn               False
 CloudCover                    True
 Events                        True
 WindDirDegrees<br />          True
dtype: bool

In [126]:
#Now before we go any further, let's clean up the damn leading spaces. (1/2)
print (df_2011.columns)


Index(['CDT', 'Max TemperatureF', 'Mean TemperatureF', 'Min TemperatureF', 'Max Dew PointF', 'MeanDew PointF', 'Min DewpointF', 'Max Humidity', ' Mean Humidity', ' Min Humidity', ' Max Sea Level PressureIn', ' Mean Sea Level PressureIn', ' Min Sea Level PressureIn', ' Max VisibilityMiles', ' Mean VisibilityMiles', ' Min VisibilityMiles', ' Max Wind SpeedMPH', ' Mean Wind SpeedMPH', ' Max Gust SpeedMPH', 'PrecipitationIn', ' CloudCover', ' Events', ' WindDirDegrees<br />'], dtype='object')

In [127]:
df_2011.columns = ['CDT', 'MaxTempF', 'MeanTempF', 'MinTempF', 'Max_DewPointF', 'Mean_DewPointF', 'Min_DewpointF', 'Max_Humidity', 'Mean_Humidity', 'Min_Humidity', 'Max_PressureIn', 'Mean_PressureIn', 'Min_PressureIn', 'Max_VisibilityMiles', 'Mean_VisibilityMiles', 'Min_VisibilityMiles', 'Max_Wind_SpeedMPH', 'Mean_Wind_SpeedMPH', 'Max_Gust_MPH', 'PrecipitationIn', 'CloudCover', 'Events', 'WindDirDegrees']
df_2012.columns = ['CDT', 'MaxTempF', 'MeanTempF', 'MinTempF', 'Max_DewPointF', 'Mean_DewPointF', 'Min_DewpointF', 'Max_Humidity', 'Mean_Humidity', 'Min_Humidity', 'Max_PressureIn', 'Mean_PressureIn', 'Min_PressureIn', 'Max_VisibilityMiles', 'Mean_VisibilityMiles', 'Min_VisibilityMiles', 'Max_Wind_SpeedMPH', 'Mean_Wind_SpeedMPH', 'Max_Gust_MPH', 'PrecipitationIn', 'CloudCover', 'Events', 'WindDirDegrees']
df_2013.columns = ['CDT', 'MaxTempF', 'MeanTempF', 'MinTempF', 'Max_DewPointF', 'Mean_DewPointF', 'Min_DewpointF', 'Max_Humidity', 'Mean_Humidity', 'Min_Humidity', 'Max_PressureIn', 'Mean_PressureIn', 'Min_PressureIn', 'Max_VisibilityMiles', 'Mean_VisibilityMiles', 'Min_VisibilityMiles', 'Max_Wind_SpeedMPH', 'Mean_Wind_SpeedMPH', 'Max_Gust_MPH', 'PrecipitationIn', 'CloudCover', 'Events', 'WindDirDegrees']
df_2014.columns = ['CDT', 'MaxTempF', 'MeanTempF', 'MinTempF', 'Max_DewPointF', 'Mean_DewPointF', 'Min_DewpointF', 'Max_Humidity', 'Mean_Humidity', 'Min_Humidity', 'Max_PressureIn', 'Mean_PressureIn', 'Min_PressureIn', 'Max_VisibilityMiles', 'Mean_VisibilityMiles', 'Min_VisibilityMiles', 'Max_Wind_SpeedMPH', 'Mean_Wind_SpeedMPH', 'Max_Gust_MPH', 'PrecipitationIn', 'CloudCover', 'Events', 'WindDirDegrees']
df_2015.columns = ['CDT', 'MaxTempF', 'MeanTempF', 'MinTempF', 'Max_DewPointF', 'Mean_DewPointF', 'Min_DewpointF', 'Max_Humidity', 'Mean_Humidity', 'Min_Humidity', 'Max_PressureIn', 'Mean_PressureIn', 'Min_PressureIn', 'Max_VisibilityMiles', 'Mean_VisibilityMiles', 'Min_VisibilityMiles', 'Max_Wind_SpeedMPH', 'Mean_Wind_SpeedMPH', 'Max_Gust_MPH', 'PrecipitationIn', 'CloudCover', 'Events', 'WindDirDegrees']

In [120]:
#now let's clean up the T-for-trace in the Precipitation column. 
df_2011.dtypes


Out[120]:
CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH            float64
PrecipitationIn         float64
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object

In [134]:
allyears = [df_2011,df_2012,df_2013,df_2014,df_2015]

#THIS ISN'T WORKING AND I DON'T KNOW WHY.
for yr in allyears:
    for i in yr["PrecipitationIn"]: 
        if "T" in str(i):
            i = "0.01"
        i = float(i)

In [135]:
for yr in allyears:
    print(yr.dtypes)


CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH            float64
PrecipitationIn         float64
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object
CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH            float64
PrecipitationIn          object
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object
CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH            float64
PrecipitationIn          object
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object
CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH            float64
PrecipitationIn          object
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object
CDT                      object
MaxTempF                  int64
MeanTempF                 int64
MinTempF                  int64
Max_DewPointF             int64
Mean_DewPointF            int64
Min_DewpointF             int64
Max_Humidity              int64
Mean_Humidity             int64
Min_Humidity              int64
Max_PressureIn          float64
Mean_PressureIn         float64
Min_PressureIn          float64
Max_VisibilityMiles       int64
Mean_VisibilityMiles      int64
Min_VisibilityMiles       int64
Max_Wind_SpeedMPH         int64
Mean_Wind_SpeedMPH        int64
Max_Gust_MPH              int64
PrecipitationIn          object
CloudCover                int64
Events                   object
WindDirDegrees           object
dtype: object

In [136]:
df_2012["PrecipitationIn"].head


Out[136]:
<bound method Series.head of 0      0.00
1      0.00
2      0.33
3      0.00
4      0.00
5      0.00
6      0.21
7      1.17
8      0.29
9      0.02
10     0.00
11     0.00
12     0.00
13     0.01
14     0.00
15     0.00
16     0.00
17     0.00
18     0.00
19     0.00
20     0.00
21     0.24
22     0.00
23     0.00
24     0.00
25     0.80
26     0.09
27     0.00
28     0.00
29     0.00
       ... 
336    0.00
337    0.03
338    0.10
339       T
340    0.00
341    0.00
342    0.00
343    0.18
344    0.00
345       T
346       T
347    0.48
348    0.54
349    0.00
350    0.00
351    0.43
352    0.13
353    0.15
354    0.00
355    0.00
356    0.28
357    0.03
358    0.00
359    0.45
360    0.00
361    0.00
362       T
363    0.00
364    0.00
365    0.00
Name: PrecipitationIn, dtype: object>

In [ ]:


In [ ]:


In [114]:
df_2011[' CloudCover'].plot(kind="line")
df_2012[' CloudCover'].plot(kind="line")
df_2013[' CloudCover'].plot(kind="line")
df_2014[' CloudCover'].plot(kind="line")
df_2015[' CloudCover'].plot(kind="line")


Out[114]:
<matplotlib.axes._subplots.AxesSubplot at 0x110e40588>

This is a MarkDown cell

Text looks like this

ital

underline

http://cnn.com


In [74]:
df_2011["misery"]=df_2011["Min TemperatureF"]*df_2011[" CloudCover"]

In [76]:
df_2011['misery'].plot(kind="line", color = 'red')


Out[76]:
<matplotlib.axes._subplots.AxesSubplot at 0x111813a58>

In [77]:
df_2011.head()


Out[77]:
CST Max TemperatureF Mean TemperatureF Min TemperatureF Max Dew PointF MeanDew PointF Min DewpointF Max Humidity Mean Humidity Min Humidity ... Mean VisibilityMiles Min VisibilityMiles Max Wind SpeedMPH Mean Wind SpeedMPH Max Gust SpeedMPH PrecipitationIn CloudCover Events WindDirDegrees<br /> misery
0 2010-11-1 53 47 41 37 33 26 80 62 35 ... 10 10 12 5 NaN 0.00 3 NaN 90<br /> 123
1 2010-11-2 52 44 37 34 29 26 79 58 41 ... 10 10 12 5 NaN 0.00 1 NaN 120<br /> 37
2 2010-11-3 53 44 36 36 32 28 79 65 50 ... 10 8 13 5 16 0.01 4 Rain 221<br /> 144
3 2010-11-4 50 46 39 37 33 29 81 65 44 ... 10 8 24 14 38 0.04 6 Rain 341<br /> 234
4 2010-11-5 41 36 32 30 19 15 68 50 38 ... 10 10 21 15 24 0.00 3 NaN 333<br /> 96

5 rows × 24 columns


In [100]:
sum(df_2012["PrecipitationIn"])


---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-100-447398a586a8> in <module>()
----> 1 sum(df_2012["PrecipitationIn"])

TypeError: unsupported operand type(s) for +: 'int' and 'str'

In [99]:
[i for i in df_2012["PrecipitationIn"] if type(i) in [str]]


Out[99]:
['0.00',
 '0.00',
 '0.33',
 '0.00',
 '0.00',
 '0.00',
 '0.21',
 '1.17',
 '0.29',
 '0.02',
 '0.00',
 '0.00',
 '0.00',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.24',
 '0.00',
 '0.00',
 '0.00',
 '0.80',
 '0.09',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.19',
 '0.05',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.05',
 '1.01',
 '0.02',
 '0.00',
 '0.02',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.04',
 '0.00',
 '0.00',
 '0.00',
 '0.03',
 '0.10',
 '0.00',
 '0.00',
 '0.36',
 '0.00',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.05',
 'T',
 'T',
 'T',
 '0.04',
 '0.07',
 '0.00',
 'T',
 '0.34',
 'T',
 '0.44',
 '0.25',
 '0.00',
 '0.00',
 'T',
 '0.02',
 '0.03',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 'T',
 '0.03',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.02',
 '0.00',
 '0.00',
 '0.01',
 'T',
 '0.13',
 '0.08',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.07',
 'T',
 '0.11',
 '0.24',
 '0.00',
 '0.00',
 '0.00',
 '0.08',
 '0.19',
 'T',
 '0.19',
 'T',
 'T',
 'T',
 '0.00',
 'T',
 '0.21',
 '0.00',
 '0.00',
 'T',
 '0.28',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.04',
 '0.89',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.25',
 '0.00',
 '0.20',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 'T',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 'T',
 '0.87',
 '0.82',
 '0.02',
 '0.00',
 '0.04',
 'T',
 '0.02',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.05',
 '0.00',
 'T',
 '0.20',
 '0.11',
 '0.39',
 '0.32',
 'T',
 '0.07',
 '0.27',
 '0.00',
 '0.40',
 '0.04',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.25',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.14',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.02',
 'T',
 '0.00',
 '0.97',
 '0.03',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.16',
 '0.15',
 '0.00',
 '0.00',
 '0.00',
 '0.03',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.16',
 '0.28',
 'T',
 '0.56',
 '0.00',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 'T',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.55',
 '1.24',
 'T',
 '0.00',
 '0.01',
 '0.01',
 '0.37',
 '0.00',
 '0.07',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.17',
 '0.00',
 '0.00',
 '0.00',
 '1.02',
 '0.00',
 '0.00',
 '0.00',
 '0.01',
 'T',
 '0.40',
 '0.00',
 '0.00',
 '0.34',
 'T',
 'T',
 '0.31',
 '0.00',
 '0.00',
 '0.00',
 '0.53',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '3.66',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.25',
 '0.00',
 '0.00',
 '0.33',
 '0.18',
 '0.00',
 '0.20',
 '0.23',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.13',
 'T',
 '0.00',
 '0.00',
 '0.17',
 '0.00',
 '0.00',
 '0.00',
 '0.13',
 '0.01',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.03',
 '0.10',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.18',
 '0.00',
 'T',
 'T',
 '0.48',
 '0.54',
 '0.00',
 '0.00',
 '0.43',
 '0.13',
 '0.15',
 '0.00',
 '0.00',
 '0.28',
 '0.03',
 '0.00',
 '0.45',
 '0.00',
 '0.00',
 'T',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.11',
 '0.01',
 '0.00',
 '0.00',
 '0.36',
 '0.29',
 '0.03',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.04',
 'T',
 '0.00',
 '0.17',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.00',
 '0.01']

In [89]:
[i for i in df_2012["PrecipitationIn"] if "T" in str(i)]


Out[89]:
['T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T',
 'T']

In [88]:
df_2011["PrecipitationIn"].value_counts()


Out[88]:
0.00    259
0.01     19
0.02     10
0.03      9
0.14      6
0.04      6
0.10      5
0.09      4
0.06      3
0.28      3
0.05      3
0.08      3
0.29      3
0.25      3
0.11      3
0.13      3
0.49      2
0.30      2
0.24      2
0.12      2
0.26      2
0.07      2
0.76      2
0.20      2
0.84      2
0.69      2
0.19      2
0.15      2
0.27      1
0.45      1
1.53      1
1.17      1
0.54      1
1.57      1
1.23      1
0.42      1
0.73      1
0.71      1
0.50      1
0.63      1
0.38      1
0.22      1
0.60      1
2.61      1
0.40      1
0.37      1
0.36      1
0.18      1
0.33      1
0.21      1
0.41      1
0.80      1
1.05      1
0.23      1
0.34      1
0.51      1
0.17      1
0.44      1
0.61      1
0.90      1
dtype: int64

In [ ]: