python第五次作业——潘芊睿

习题1:读入文件pmi_days.csv,完成以下操作:
1.统计质量等级对应的天数,例如:
优:5天
良:3天
中度污染:2天

2.找出PMI2.5的最大值和最小值,分别指出是哪一天。

import csv
import pandas as pd
import numpy as np

days_path = open(r"C:\Users\asus\pmi_days.csv")
days_df = pd.read_csv(days_path)

data = days_df.groupby('质量等级')
you = dict([x for x in data])['优']
liang = dict([x for x in data])['良']
qing = dict([x for x in data])['轻度污染']
zhong = dict([x for x in data])['中度污染']
print("优:{}天\n良:{}天\n轻度污染:{}天\n中度污染:{}天".format(len(you.index),len(liang.index),len(qing.index),len(zhong.index)))

with open(r"C:\Users\asus\pmi_days.csv") as f:
    reader = csv.reader(f)
    header_row=next(reader)
    salary=[]
    for row in reader:
         salary.append(int(row[3]))
    print("pm2.5最高的一天为:"+str(max(salary)))
    print("pm2.5最低的一天为:"+str(min(salary)))

 

习题2:读入文件1980-2018GDP.csv,完成以下操作:
1.按行输出每年GDP数据,表头列名如文件第1行所示。

2.将各年GDP数据转换成字典格式,以年份为keys,其它值为values(数据类型为列表方式),例如:
{
2017:[827121.7,6.8%,60989]
........
}

3.遍历字典数据,求出GDP的最小值与最大值,并输出数据与对应的年份。

import pandas as pd

days_path = open(r"C:\Users\asus\1980-2018GDP.csv")
days_list = pd.read_csv(days_path)

print(days_list, "\t\t\n")
dict_GDP = days_list.set_index('年份').T.to_dict('list')
print("字典:", dict_GDP, "\t\n")

data_max = max(dict_GDP, key=dict_GDP.get)
data_min = min(dict_GDP, key=dict_GDP.get)
print("GDP最大值:", data_max, dict_GDP[data_max], "\n")
print("GDP最小值:", data_min, dict_GDP[data_min])

 

 

posted on 2019-05-23 23:13  潘杲杲  阅读(231)  评论(1编辑  收藏  举报