第五次作业

习题1:读入文件pmi_days.csv,完成以下操作:
1.统计质量等级对应的天数,例如:
优:5天
良:3天
中度污染:2天
2.找出PMI2.5的最大值和最小值,分别指出是哪一天。
import csv
z1 = 0
z2 = 0
z3 = 0
z4 = 0
listp = []
listd = []
d1 = 0
with open("pmi_days .csv", 'r') as f:
    reader = csv.reader(f)
    fieldnames = next(reader)  
    csv_reader = csv.DictReader(f,fieldnames=fieldnames)  
    for row in csv_reader:
        dict = {}
        for key, value in row.items():
            dict[key] = value
            if value == '优':
                z1 = z1 + 1
            if value == '良':
                z2 = z2 + 1
            if value == '轻度污染':
                z3 = z3 + 1
            if value == '中度污染':
                z4 = z4 + 1
            if key == 'PM2.5':
                listp.append(int(dict.get("PM2.5")))
                listd.append(dict.get("日期"))
    for j in range(0, len(listp)):
        if listp[j] == max(listp):
            d1 = listd[j]
        if listp[j] == min(listp):
            x1 = listd[j]
print("优:{}天".format(z1))
print("良:{}天".format(z2))
print("轻度污染:{}天".format(z3))
print("中度污染:{}天".format(z4))
print("PM2.5最高:{} PM2.5的值:{}".format(d1,max(listp)))
print("PM2.5最低:{} PM2.5的值:{}".format(x1,min(listp)))
习题2:读入文件1980-2018GDP.csv,完成以下操作:
1.按行输出每年GDP数据,表头列名如文件第1行所示。
import csv
with open("1980-2018GDP.csv" ,'r') as f:
    reader = csv.reader(f)   #默认返回list 每行类型
    for row in reader:
        print(row)
2.将各年GDP数据转换成字典格式,以年份为keys,其它值为values(数据类型为列表方式),例如:
{
2017:[827121.7,6.8%,60989]
........
}
import pandas as pd
path = open("1980-2018GDP.csv")
data = pd.read_csv(path)
dict = data.set_index('年份').T.to_dict('list')
print("第二题:\n")
print("字典:", end="")
print(format(dict),end="\n\n")
3.遍历字典数据,求出GDP的最小值与最大值,并输出数据与对应的年份。
import pandas as pd
path = open("1980-2018GDP.csv")
data = pd.read_csv(path)
max = max(dict, key=dict.get)
min = min(dict, key=dict.get)
print("第三题:\n")
print("GDP最大值:{}\t它所对应的年份:{}".format(dict[max][0],max))
print("GDP最小值:{}\t它所对应的年份:{}".format(dict[min][0],min))
习题3:本题为选作内容,可以不做,有兴趣的同学可以做为扩展练习。
1.绘制每年的GDP数据的条形图,横坐标为年份,纵坐标为GDP值。
2.绘制每年的GDP数据的折线图,横坐标为年份,纵坐标为GDP值。

  

posted @ 2019-05-24 21:00  大谢  阅读(81)  评论(0)    收藏  举报