第五次作业
习题1:读入文件pmi_days.csv,完成以下操作:
1.统计质量等级对应的天数,例如:
优:5天
良:3天
中度污染:2天
2.找出PMI2.5的最大值和最小值,分别指出是哪一天。
import pandas as pd
df = 1980-2018GDP.csv( gdp.csv , encoding= utf-8 )
(values, dates) = ([], [])
for i in df.columns[1:]:
for j, k in zip(df[i]
print(k, j, i)
names.append(k)
values.append(int(j))
dates.append(int(i.replace( 年 , )))
data = {
name : names,
type : ,
value : values,
date : dates
}
for row in csv_reader:
dict={}
for key,value in row.items():
dict[key]=value
if(dict["质量等级"]=="优"):
p=p+1
elif(dict["质量等级"]=="良"):
u=u+1
elif(dict["质量等级"]=="中度污染"):
k=k+1
elif(dict["质量等级"]=="轻度污染"):
d=d+1
s.append(list(dict.values()))
a = date.sort_values(by='PM2.5')
a1 = a.reset_index(drop=True)
print("PM2.5最大的一天是:%s,其PM2.5的数值是:%d" % (a1['日期'][29], a1['PM2.5'][29]),
"\nPM2.5最小的一天是:%s,其PM2.5的数值是:%d" % (a1['日期'][0], a1['PM2.5'][0]))
print("优的天数{}\n良的天数{}\n中度污染的天数{}\n轻度污染的天数{}\n".format(p,u,k,d)) frame = pd.DataFrame(data) frame.to_csv( gdp_last.csv , encoding= utf_8_sig )

习题2:读入文件1980-2018GDP.csv,完成以下操作:
1.按行输出每年GDP数据,表头列名如文件第1行所示。
2.将各年GDP数据转换成字典格式,以年份为keys,其它值为values(数据类型为列表方式),例如:
{
2017:[827121.7,6.8%,60989]
........
}
import pandas as pd
path = open(r"C:\Users\Administrator\1980-2018GDP.csv")
list = pd.read_csv(path)
print(list, "\t\t\n")
GDP = list.set_index('年份').T.to_dict('list')
print("字典:", GDP, "\n")
data_max = max(GDP, key=GDP.get)
data_min = min(GDP, key=GDP.get)
print("GDP最大值及其对应年份分别为:", GDP[data_max],data_max, "\n")
print("GDP最小值及其对应年份分别为:", GDP[data_min],data_min )

习题3:本题为选作内容,可以不做,有兴趣的同学可以做为扩展练习。
1.绘制每年的GDP数据的条形图,横坐标为年份,纵坐标为GDP值。
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
%config InlineBackend.figure_format = 'retina'
data = pd.read_csv('WorldIndex.csv')
data.head()
2.绘制每年的GDP数据的折线图,横坐标为年份,纵坐标为GDP值。
浙公网安备 33010602011771号