第五次作业
习题1:读入文件pmi_days.csv,完成以下操作:
1.统计质量等级对应的天数,例如:
优:5天
良:3天
中度污染:2天
2.找出PMI2.5的最大值和最小值,分别指出是哪一天。
import csv filename = 'pmi_days.csv' a=0 b=0 c=0 d=0 e=0 list = [] list1 = [] with open(filename,'r') as f: reader = csv.reader(f) fieldnames = next(reader) csv_reader = csv.DictReader(f,fieldnames=fieldnames) for i in csv_reader: dict = {} for key, value in i.items(): dict[key] = value list.append(int(dict.get("PM2.5"))) list1.append(dict.get("日期")) if dict['质量等级'] == "优": a += 1 if dict['质量等级'] == "良": b += 1 if dict['质量等级'] == "中度污染": c += 1 for i in range(0,len(list)): if list[i]==max(list): d=list1[i] if list[i]==min(list): e=list1[i] print("优:{}\n良:{}\n中度污染:{}".format(a,b,c)) print("PM2.5最大值:{}\n日期:{}".format(max(list),d )) print("PM2.5最小值:{}\n日期:{}".format(min(list),e ))
码云地址:https://gitee.com/zhhzb/codes/3nbaxq1zr5u6h8yfcvow219
习题2:读入文件1980-2018GDP.csv,完成以下操作:
1.按行输出每年GDP数据,表头列名如文件第1行所示。
2.将各年GDP数据转换成字典格式,以年份为keys,其它值为values(数据类型为列表方式),例如:
{
2017:[827121.7,6.8%,60989]
........
}
3.遍历字典数据,求出GDP的最小值与最大值,并输出数据与对应的年份。
import pandas as p path = open(r"1980-2018GDP.csv") list = p.read_csv(path) print(list, "\t\t\n") GDP = list.set_index('年份').T.to_dict('list') print("字典:\n", GDP, "\n") year_max = max(GDP, key=GDP.get) year_min = min(GDP, key=GDP.get) print("GDP最大值:", year_max, GDP[year_max], "\n") print("GDP最小值:", year_min, GDP[year_min])
码云:https://gitee.com/zhhzb/codes/ios8lc5y0x7qwbv3hdazp39