Python Forum
Applied Data Science with Python - homework 2.2 (Weather plotting)
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Applied Data Science with Python - homework 2.2 (Weather plotting)
#2
Hey all,

I have the following code below:

from datetime import datetime
import pandas as pd
import matplotlib.pyplot as plt

pd.set_option("display.max_rows",None,"display.max_columns",None)
data = pd.read_csv('data/C2A2_data/BinnedCsvs_d400/fb441e62df2d58994928907a91895ec62c2c42e6cd075c2700843b89.csv') 
newdata = data[(data['Date'] >= '2005-01-01') & (data['Date'] <= '2014-12-12')]
datamax = newdata[newdata['Element']=='TMAX']
datamin = newdata[newdata['Element']=='TMIN']
datamax['Date'] = pd.to_datetime(datamax['Date'])
datamin['Date'] = pd.to_datetime(datamin['Date'])
datamax["day_of_year"] = datamax["Date"].dt.dayofyear
datamax = datamax.groupby('day_of_year').max()
datamin["day_of_year"] = datamin["Date"].dt.dayofyear
datamin = datamin.groupby('day_of_year').min()
datamax = datamax.reset_index()
datamin = datamin.reset_index()
datamax['Date'] = datamax['Date'].map(lambda x: x.strftime("%d/%m/%Y"))
datamin['Date'] = datamin['Date'].map(lambda x: x.strftime("%d/%m/%Y")) 
datamax = datamax[~datamax['Date'].str.contains("02-29")]
datamin = datamin[~datamin['Date'].str.contains("02-29")]

breakoutdata = data[(data['Date']  > '2014-12-31')]
datamax2015 = breakoutdata[breakoutdata['Element']=='TMAX']
datamin2015 = breakoutdata[breakoutdata['Element']=='TMIN']
datamax2015['Date'] = pd.to_datetime(datamax2015['Date'])
datamin2015['Date'] = pd.to_datetime(datamin2015['Date'])
datamax2015["day_of_year"] = datamax2015["Date"].dt.dayofyear
datamax2015 = datamax2015.groupby('day_of_year').max()
datamin2015["day_of_year"] = datamin2015["Date"].dt.dayofyear
datamin2015 = datamin2015.groupby('day_of_year').min()
datamax2015 = datamax2015.reset_index()
datamin2015 = datamin2015.reset_index()
datamax2015['Date'] = datamax2015['Date'].map(lambda x: x.strftime("%d/%m/%Y"))
datamin2015['Date'] = datamin2015['Date'].map(lambda x: x.strftime("%d/%m/%Y")) 
datamax2015 = datamax2015[~datamax2015['Date'].str.contains("02-29")]
datamin2015 = datamin2015[~datamin2015['Date'].str.contains("02-29")]

dataminappend = datamin2015.join(datamin,on="day_of_year",rsuffix="_new")
lower = dataminappend.loc[dataminappend["Data_Value_new"]>dataminappend["Data_Value"]]
datamaxappend = datamax2015.join(datamax,on="day_of_year",rsuffix="_new")
upper = datamaxappend.loc[datamaxappend["Data_Value_new"]<datamaxappend["Data_Value"]]
print(upper.head())
datamax['Date'] = datamax['Date'].astype(float)    
datamin['Date'] = datamin['Date'].astype(float)
upper['Date'] = upper['Date'].astype(float)
lower['Date'] = lower['Date'].astype(float)
    
ax = plt.gca()
plt.plot(datamax['Date'],datamax['Data_Value'],color='red')
plt.plot(datamin['Date'],datamin['Data_Value'], color='blue')
plt.scatter(upper['Date'],upper['Data_Value'],color='red')
plt.scatter(lower['Date'],lower['Data_Value'], color='blue')

plt.ylabel("Temperature (degrees C)",color='navy')
plt.xlabel("Date",color='navy',labelpad=15)
plt.title('Record high and low temperatures by day (2005-2014)', alpha=1.0,color='brown',y=1.08)
ax.legend(loc='upper center', bbox_to_anchor=(0.5, -0.35),fancybox=False,labels=['Record high','Record low'])
plt.xticks(rotation=30)
plt.fill_between(range(len(datamax['Date'])), datamax['Data_Value'], datamin['Data_Value'],color='yellow',alpha=0.8)
plt.show()
However, I keep getting the error:
ValueError: could not convert string to float: '31/12/2012'

And I'm struggling to understand why?
Reply


Messages In This Thread
Applied Data Science with Python - homework 2.2 (Weather plotting) - by eyavuz21 - May-31-2020, 12:21 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  AI Techniques applied to a Game insignia47 0 1,010 Jun-10-2022, 07:33 PM
Last Post: insignia47
  HELP in python homework makashito 4 4,041 Oct-12-2021, 10:12 AM
Last Post: buran
  CyperSecurity Using Python HomeWork ward1995 1 2,025 Jul-08-2021, 03:55 PM
Last Post: buran
Exclamation urgent , Python homework alm 2 2,399 May-09-2021, 11:19 AM
Last Post: Yoriz
  Homework with python Johnsonmfw 1 1,750 Sep-20-2020, 04:03 AM
Last Post: ndc85430
  Displaying selected information from XML file in the Spyder console(weather forecast) JohnN_pl 6 3,570 Jun-20-2020, 01:36 PM
Last Post: JohnN_pl
  Python Assignment 3 - Applied Data Science - 2.3 eyavuz21 8 5,123 Jun-06-2020, 08:59 AM
Last Post: eyavuz21
  Python Homework Help *Urgent GS31 2 2,656 Nov-24-2019, 01:41 PM
Last Post: ichabod801
  Python Homework Question OrcDroid123 1 2,439 Sep-01-2019, 08:44 AM
Last Post: buran
  Python homework / functions sunhyunshine 1 2,517 May-11-2019, 05:37 PM
Last Post: MrTheOne

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020