資源簡介 數據處理與應用大單元——excel+pandas+matplotlib鞏固練習班級 姓名1.某次測試的excel文件成績表如下圖所示。(1) 已知有200名同學參加了本次測試。小明想把全體同學的信息平均分放在D202單元格,那么在D202單元格輸入的公式為 =average(D2:D201)(2)現在要求用python計算“總分”列數據,然后求每個班總分的平均分(如下左圖所示),最后繪制每班總分平均分的垂直柱形圖(如下右圖所示)。請將空白處填充完整。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #用于顯示中文標簽df=pd.read_excel("test.xlsx")score=[]for i in df.values:js=① i[3]+i[4]score.append(js)df["總分"]=scoredf1=df.groupby("班級",as_index=False)["總分"].mean()plt.title("期中技術平均分")② plt.bar (③ df1.班級 , df1.總分, width=0.5)plt.show()2.小張收集了某超市的經營數據(數據樣例如下圖所示),并對數據進行分析。(1)若利用Excel軟件對這些數據進行處理,打開的文件界面如下圖所示,要計算所有記錄中的銷售金額,可以通過H3單元格中的公式向下自動填充得到,則H3單元格中的公式是_____________ __(2)若利用Python編程對這些數據進行處理,可采用pandas模塊中的 B (填字母:A.Series / B.DataFrame)數據結構來存儲這些數據比較高效。(3)若要用Python編程分析各種商品的銷售金額,繪制前總銷售金額前20名的商品名稱和銷售金額對應條形圖圖表,將下面程序段空白處填充完整。import pandas as pdimport matplotlib.pyplot as pltdf=pd.read_csv("超市銷售數據.csv") #用read_csv函數讀取數據文件df.銷售金額= df.銷售單價 * ① df.銷售數量g= ② df.groupby("商品名稱",as_index=False) #按商品名稱對數據進行分組統計ss=g.銷售金額.sum() #求每個商品的總銷售金額s=ss.sort_values("銷售金額",③ ascending=False ).head(20)plt.rcParams['font.sans-serif']=['SimHei'] #中文顯示問題plt.rcParams['axes.unicode_minus']=Falseplt.figure(num="超市前20名商品銷售金額", figsize=(10,5))plt.title("銷售排行榜", fontsize=20)plt. barh (s.商品名稱, s.銷售金額, width=0.3)plt.xlabel("前20名商品名稱")plt.ylabel("前20名商品銷售金額")plt.legend(['銷售金額'])plt.show()3.小明收集了某超市商品價格數據,存儲在“商品價格表.xlsx”文件中,其存儲格式如圖a 所示。他編寫了Python 程序對數據做了如下整理和分析:(1) 將第 2 條記錄中的單位“廳”改為“聽”,將“總價”列改名為“售價”,并刪除第 4 條記錄,并計算各商品售價(售價=原價*0.8)(2)按“商品類別”分類統計各類商品的品種數量,并按各類商品的“品種數量”降序排序,以柱形圖形式顯示品種最多的 10 類商品,所建立的圖表如圖b 所示。Python 程序如下, 請在劃線處填入合適的代碼。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #用于顯示中文標簽data = pd.read_excel("商品價格表.xlsx")data.① at[1, "單位"]="聽" #將第 2 條記錄的單位“廳”改為“聽”data = data.rename(columns = {"總價":"售價"}) #將“總價”列名稱改為“售價”data = ② data.drop(3) #刪除第 4 條記錄data["售價"] = data["原價"] * 0.8s = data.groupby("商品類別",as_index=False).商品名稱. ③ count()#按商品類別統計商品品種數量s = s.rename(columns = {"商品名稱":"品種數量"})#將分組統計后的 “商品名稱”列改名為 “品種數量”s = s. sort_values('品種數量',ascending=False) #按商品類別的品種數量降序排列s= s.head(10)plt.bar(s.商品類別 , s.品種數量,label="品種數量") #繪制柱形圖plt.title("品種最多的 10 大商品類別", fontsize=16)plt.legend()plt.show ()4.李老師統計了某次考試各班學生的選擇題答題情況(共 12 個小題,每小題答對記 2 分,答錯記 0 分),數據存儲在“score.xlsx”文件中,如下圖所示。為計算每班選擇題平均分(選擇題平均分是指12個小題的平均分之和),同時找出選擇題平均分最高的3個班級,李老師通過 Python 編程進行數據處理,并以圖表的形式呈現結果。(1)實現上述功能的 Python 程序如下,請在劃線處填入合適的代碼。import pandas as pdimport matplotlib.pyplot as pltimport numpy as npplt.rcParams['font.sans-serif']=['SimHei'] #顯示中文字符,字體為黑體df=pd.read_excel(" ① score.xlsx ")pjf=df.groupby("班級",as_index=False).mean()pjf= pjf.drop("考號",axis=1)pjf["選擇題平均分"]= ② pjf.sum(axis=1)y1=pjf.min()["選擇題平均分"]y2=pjf.max()["選擇題平均分"]px=pjf.sort_values("選擇題平均分",ascending=False)print(px)s= px.head(3)plt.figure()plt.bar(s.班級, ③ s.選擇題平均分 或 s["選擇題平均分"] )plt.title("選擇題平均分最高的 3 個班級")plt.ylim(y1-0.2,y2+0.2)plt.yticks(np.linspace(y1-0.2,y2+0.2,20)) #設置 y 坐標軸的刻度plt.show()(2)運行該程序段后,繪制出的圖表下圖所示,則該圖表的類型是 B(填字母:A.線形圖 /B.垂直柱形圖 /C.水平柱形圖 )。數據處理與應用大單元——excel+pandas+matplotlib鞏固練習班級 姓名1. 某次測試的excel文件成績表如下圖所示。(1) 已知有200名同學參加了本次測試。小明想把全體同學的信息平均分放在D202單元格,那么在D202單元格輸入的公式為(2)現在要求用python計算“總分”列數據,然后求每個班總分的平均分(如下左圖所示),最后繪制每班總分平均分的垂直柱形圖(如下右圖所示)。請將空白處填充完整。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #用于顯示中文標簽df=pd.read_excel("test.xlsx")score=[]for i in df.values:js=①score.append(js)df["總分"]=scoredf1=df.groupby("班級",as_index=False)["總分"].mean()plt.title("期中技術平均分")② (③ , df1.總分, width=0.5)plt.show()2.張收集了某超市的經營數據(數據樣例如下圖所示),并對數據進行分析。(1)若利用Excel軟件對這些數據進行處理,打開的文件界面如下圖所示,要計算所有記錄中的銷售金額,可以通過H3單元格中的公式向下自動填充得到,則H3單元格中的公式是_____________ __(2)若利用Python編程對這些數據進行處理,可采用pandas模塊中的 (填字母:A.Series / B.DataFrame)數據結構來存儲這些數據比較高效。(3)若要用Python編程分析各種商品的銷售金額,繪制前總銷售金額前20名的商品名稱和銷售金額對應條形圖圖表,將下面程序段空白處填充完整。import pandas as pdimport matplotlib.pyplot as pltdf=pd.read_csv("超市銷售數據.csv") #用read_csv函數讀取數據文件df.銷售金額= df.銷售單價 * ①g= ② #按商品名稱對數據進行分組統計ss=g.銷售金額.sum() #求每個商品的總銷售金額s=ss.sort_values("銷售金額",③ ).tail(20)plt.title("銷售金額前10名的商品")plt.rcParams['font.sans-serif']=['SimHei'] #中文顯示問題plt.rcParams['axes.unicode_minus']=Falseplt.figure(num="超市前20名商品銷售金額", figsize=(10,5))plt.title("銷售排行榜", fontsize=20)plt. (s.商品名稱, s.銷售金額, width=0.3)plt.xlabel("前20名商品名稱")plt.ylabel("前20名商品銷售金額")plt.legend(['銷售金額'])plt.show()3.小明收集了某超市商品價格數據,存儲在“商品價格表.xlsx”文件中,其存儲格式如圖a 所示。他編寫了Python 程序對數據做了如下整理和分析:(1) 將第 2 條記錄中的單位“廳”改為“聽”,將“總價”列改名為“售價”,并刪除第 4 條記錄,并計算各商品售價(售價=原價*0.8)(2)按“商品類別”分類統計各類商品的品種數量,并按各類商品的“品種數量”降序排序,以柱形圖形式顯示品種最多的 10 類商品,所建立的圖表如圖b 所示。Python 程序如下, 請在劃線處填入合適的代碼。import pandas as pdimport matplotlib.pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #用于顯示中文標簽data = pd.read_excel("商品價格表.xlsx")data.① #將第 2 條記錄的單位“廳”改為“聽”data = data.rename(columns = {"總價":"售價"}) #將“總價”列名稱改為“售價”data = ② #刪除第 4 條記錄data["售價"] = data["原價"] * 0.8s = data.groupby("商品類別",as_index=False).商品名稱. ③#按商品類別統計商品品種數量s = s.rename(columns = {"商品名稱":"品種數量"})#將分組統計后的 “商品名稱”列改名為 “品種數量”s = s. #按商品類別的品種數量降序排列s= s.head(10)plt.bar(s.商品類別 , s.品種數量,label="品種數量") #繪制柱形圖plt.title("品種最多的 10 大商品類別", fontsize=16)plt.legend()plt.show ()4.李老師統計了某次考試各班學生的選擇題答題情況(共 12 個小題,每小題答對記 2 分,答錯記 0 分),數據存儲在“score.xlsx”文件中,如下圖所示。為計算每班選擇題平均分(選擇題平均分是指12個小題的平均分之和),同時找出選擇題平均分最高的3個班級,李老師通過 Python 編程進行數據處理,并以圖表的形式呈現結果。(1)實現上述功能的 Python 程序如下,請在劃線處填入合適的代碼。import pandas as pdimport matplotlib.pyplot as pltimport numpy as npplt.rcParams['font.sans-serif']=['SimHei'] #顯示中文字符,字體為黑體df=pd.read_excel(" ① ")pjf=df.groupby("班級",as_index=False).mean()pjf= pjf.drop("考號",axis=1)pjf["選擇題平均分"]= ②y1=pjf.min()["選擇題平均分"]y2=pjf.max()["選擇題平均分"]px=pjf.sort_values("選擇題平均分",ascending=False)print(px)s= px.head(3)plt.figure()plt.bar(s.班級, ③ )plt.title("選擇題平均分最高的 3 個班級")plt.ylim(y1-0.2,y2+0.2)plt.yticks(np.linspace(y1-0.2,y2+0.2,20)) #設置 y 坐標軸的刻度plt.show()(2)運行該程序段后,繪制出的圖表下圖所示,則該圖表的類型是(填字母:A.線形圖 /B.垂直柱形圖 /C.水平柱形圖 )。 展開更多...... 收起↑ 資源列表 浙教版新教材(2019)《數據與計算》選考一輪復習 學考復習配套練習——excel+pandas+matplotlib鞏固練習答案.docx 浙教版新教材(2019)《數據與計算》選考一輪復習 學考復習配套練習——excel+pandas+matplotlib模塊數據處理與應用鞏固練習.docx 縮略圖、資源來源于二一教育資源庫