習題1:讀入檔案pmi_days.csv,完成以下操作:
1.統計質量等級對應的天數,例如:
優:5天
良:3天
中度汙染:2天
2.找出pmi2.5的最大值和最小值,分別指出是哪一天。
1習題2:讀入檔案1980-2018gdp.csv,完成以下操作:import
pandas as pd
2import
numpy as np
34 days_path = open(r"
c:\users\shinelon\desktop\pmi_days.csv")
5 days_df =pd.read_csv(days_path)67
#統計質量等級對應的天數
8 data = days_df.groupby('
質量等級')
91011 day_you = dict([x for x in data])['優'
]12 day_liang = dict([x for x in data])['良'
]13 day_qing = dict([x for x in data])['
輕度汙染']
14 day_zhong = dict([x for x in data])['
中度汙染']
15print("
優:%d天
" % len(day_you.index), "
\n良:%d天
" %len(day_liang.index),16"
\n輕度汙染:%d天
" % len(day_qing.index), "
\n中度汙染:%d天
" %len(day_zhong.index))
171819#
找出pm2.5的最大值和最小值,分別指出是哪一天
20 sort_pm25 = days_df.sort_values(by='
pm2.5')
21 sort_pm25_2 = sort_pm25.reset_index(drop=true)
22print("
pm2.5最大的一天是:%s。數值:%d
" % (sort_pm25_2['
日期'][29], sort_pm25_2['
pm2.5
'][29]),23"
\npm2.5最小的一天是:%s。數值:%d
" % (sort_pm25_2['
日期'][0], sort_pm25_2['
pm2.5
'][0]))
1.按行輸出每年gdp資料,表頭列名如檔案第1行所示。
2.將各年gdp資料轉換成字典格式,以年份為keys,其它值為values(資料型別為列表方式),例如:
3.遍歷字典資料,求出gdp的最小值與最大值,並輸出資料與對應的年份。
1import
pandas as pd
23 days_path = open(r"
c:\users\shinelon\desktop\1980-2018gdp.csv")
4 days_list =pd.read_csv(days_path)56
#1.按行輸出每年gdp資料
7print(days_list, "
\t\t\n")
8910#
2.將各年gdp資料轉換成字典格式,以年份為keys,其它值為values(資料型別為列表方式)
11 dict_gdp = days_list.set_index('
年份').t.to_dict('
list')
12print("
字典:", dict_gdp, "\n"
)131415
#3.遍歷字典資料,求出gdp的最小值與最大值,並輸出資料與對應的年份。
16 data_max = max(dict_gdp, key=dict_gdp.get)
17 data_min = min(dict_gdp, key=dict_gdp.get)
18print("
gdp最大值:
", data_max, dict_gdp[data_max], "\n"
)19print("
gdp最小值:
*由於字典太長,所以只擷取了其中兩個鍵值對。
習題3:擴充套件(選作,二選一)
1.繪製每年的gdp資料的直方圖,橫座標為年份,縱座標為gdp值。
2.繪製每年的gdp資料的折線圖,橫座標為年份,縱座標為gdp值。
1import
pandas as pd
2import
numpy as np
3import
matplotlib.pyplot as plt
45 days_path = open(r"
c:\users\shinelon\desktop\1980-2018gdp.csv")
6 days_list =pd.read_csv(days_path)78
#print(days_list)
9 plt.rcparams['
font.sans-serif
'] = ['
simhei
'] #
預設字型
10 plt.rcparams['
axes.unicode_minus
'] = false #
」-「負號為方塊問題
1112 plt.figure(figsize=(30, 8))
13 plt.xlim(1978, 2019)
14 plt.ylim(0, 1000000)
15 x_num = np.arange(1978, 2019, 1)
16 y_num = np.arange(0, 1000000, 50000)
17plt.xticks(x_num)
18plt.yticks(y_num)
1920
#1.繪製每年的gdp資料的直方圖
21 plt.bar(days_list['
年份'], days_list['
gdp(億元)
'], label="
gdp值
", color='c'
)22#2.繪製每年的gdp資料的折線圖
23 plt.plot(days_list['
年份'], days_list['
gdp(億元)
'], label="
gdp值
", color='r'
)2425 plt.title('
1980-2023年gdp資料統計圖')
26 plt.xlabel('
年份(年)')
27 plt.ylabel('
gdp值(億元)')
第五次作業
一 問題及 include using namespace std class time void add a minute void add an hour void add seconds int n void add minutes int n void add hours int n voi...
第五次作業
當我們在討論多型性的時候,通常會用過載函式進行舉例,而這次發現的問題主要在過載運算子上,因此我希望通過對過載運算子的測試來得出乙個結論。我們想知道為什麼前置運算子和後置運算子會有區別,因此設計了乙個實驗來證明它 得到最終結果如預期那樣。通過這次作業,我能感受到前置和後置運算子的區別,通過x 和y x...
第五次作業
insert into student sno,sname,s sdept,sage values 201215128 陳冬 男 is 18 建表時規定學號唯一,而在建表時已經加入了該學號,所以不能有兩個相同學號。3.70 insert into student sno,sname,s sdept,...