pandas處理數(shù)據(jù)-浙江省高三信息技術(shù)選考一輪復(fù)考點突破_第1頁
pandas處理數(shù)據(jù)-浙江省高三信息技術(shù)選考一輪復(fù)考點突破_第2頁
pandas處理數(shù)據(jù)-浙江省高三信息技術(shù)選考一輪復(fù)考點突破_第3頁
pandas處理數(shù)據(jù)-浙江省高三信息技術(shù)選考一輪復(fù)考點突破_第4頁
pandas處理數(shù)據(jù)-浙江省高三信息技術(shù)選考一輪復(fù)考點突破_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

pandas處理數(shù)據(jù)1.下列有關(guān)pandasSeries的說法錯誤的是()A.包含一個數(shù)組的數(shù)據(jù)和一個與數(shù)據(jù)關(guān)聯(lián)的索引,是二維數(shù)據(jù)結(jié)構(gòu)B.其索引值默認(rèn)是從0起遞增的整數(shù)C.可用列表、字典等創(chuàng)建Series數(shù)據(jù)結(jié)構(gòu)D.其索引可以指定,類型可以為字符串型2.下列有關(guān)pandasDataFrame的說法錯誤的是()A.是一種二維數(shù)據(jù)結(jié)構(gòu)B.由1個索引列和若干個數(shù)據(jù)列組成C.同一個DataFrame對象的數(shù)據(jù)列類型必須相同D.可看作共享同1個index的Series集合3.不能實現(xiàn)選取df對象前5行數(shù)據(jù)記錄的語句是()A.df.head() B.df.head(5)C.df[0:5] D.df[5]回答下列第4~6題。4.某DataFrame對象df中包含“準(zhǔn)考證號”“班級”“姓名”“文”“數(shù)學(xué)”…“總分”等10個數(shù)據(jù)列、多個數(shù)據(jù)行,能獲取對象df第3個數(shù)據(jù)的“姓名”內(nèi)容的語句有()①df[2,'姓名']②df.at[2,'姓名']③df[2]['姓名']④df['姓名'][2]⑤df.姓名[2]A.①②③ B.①②④C.②④ D.②④⑤5.如第4題對象df,能夠降序排列輸出總分大于等于600分的學(xué)生數(shù)據(jù)的代碼組合是()①df=df.sort_values(″總分″,ascending=True)②df=df.sort_values(″總分″,ascending=False)③df=df[″總分″,>=600]④df=df[df[″總分″]>=600]⑤print(df)A.①③⑤ B.①④⑤C.②③⑤ D.②④⑤6.如第4題對象df1,下列語句中,可以以班級為單位,統(tǒng)計出各班級“總分”的平均值的有()①df.groupby('班級').mean()②df.groupby('總分').mean()③df.groupby('班級')['總分'].mean()④df.groupby('班級').總分.mean()⑤df.groupby('班級').describe()A.①②③④⑤ B.①②③⑤C.①③④⑤ D.①②③7.有如下Python程序段。importpandasaspdlist=[['周欣怡','湖州',15,646],['王培新','杭州',16,598],['張佳明','杭州',16,609],['林逢春','嘉興',15,547],['朱梁棟','湖州',16,588],['陳清瑞','嘉興',15,571]]inf=pd.DataFrame(list,columns=['姓名','地區(qū)','年齡','總分'])print(inf)print('_'20)print(inf.groupby('地區(qū)',as_index=True).mean())執(zhí)行該程序段后,輸出的結(jié)果是(單選,填字母)。

8.模塊用于科學(xué)計算(隨機(jī)數(shù)、數(shù)組運算等);模塊基于numpy實現(xiàn),主要用于數(shù)據(jù)的處理和分析;用于繪圖庫。

9.小明從某網(wǎng)站上收集了2022年4月部分生產(chǎn)資料市場價格變動情況數(shù)據(jù),數(shù)據(jù)集保存在“shuju.xlsx”中,格式如圖a所示。圖a為分析相關(guān)類別生產(chǎn)資料的漲跌幅情況,小明編寫了以下Python程序。importpandasaspdimportmatplotlib.pyplotaspltplt.rcParams['font.sansserif']=['SimHei']#正常顯示中文字體df=pd.read_excel(″shuju.xlsx″)df[″漲跌幅″]=

(1)通過數(shù)據(jù)計算添加漲跌幅列,請在劃線處填寫實現(xiàn)的方式。計算公式為:漲跌幅=(本期價格上期價格)/本期價格100。(2)若要對表格中的數(shù)據(jù)進(jìn)行分類統(tǒng)計,并求其平均漲跌幅。請完善以下代碼:g=df.groupby(″類別″,as_index=False)df1=

df1=df1.sort_values(″漲跌幅″,ascending=False)(3)根據(jù)上述操作結(jié)果,制作一份顯示類別漲跌幅平均值的圖表,其格式如圖b所示。各種類別對比分析圖圖b請完善以下代碼。plt.figure(figsize=(8,4))plt.title(″各種類別對比分析圖″)plt.bar(①,df1[″漲跌幅″],label='漲跌幅')

plt.xlabel(″類別″)plt.ylabel(②)

plt.legend()plt.show()10.某市普通高中選課數(shù)據(jù)如下圖所示,學(xué)生從技術(shù)、化學(xué)、生物等科目中選擇三門作為高考選考科目,“1”表示已選擇的選考科目。圖a各學(xué)校技術(shù)選考人數(shù)對比圖b為分析各學(xué)校的學(xué)生選科數(shù)據(jù),編寫了如下程序:importpandasaspdimportmatplotlib.pyplotaspltplt.rc'font',{'family':'SimHei'}plt.rcParams['axes.unicode_minus']=Falsedf=pd.read_csv(″xk73.csv″)(1)若要了解市里所有選考技術(shù)的學(xué)生情況,請在劃線處給出合適代碼,篩選出有選技術(shù)科目的同學(xué)信息:print()

(2)使用Python編程分析每所學(xué)校各科目選考的人數(shù)(不同的學(xué)校代碼表示不同的學(xué)校)。請在劃線處填入合適的代碼。g=df.groupby(①,asindex=false)#按學(xué)校進(jìn)行分組

s2=②#按學(xué)校分別統(tǒng)計各科目的選考人數(shù)

s2.sort_values(″技術(shù)″,ascending=False)#按技術(shù)選考人數(shù)進(jìn)行降序排序(3)若要做一個各學(xué)校技術(shù)選考人數(shù)的分析,添加如下程序段:plt.figure(figsize=(10,5))a=list(s2.學(xué)校代碼)plt.xticks(range(1en(s2.學(xué)校代碼)),a,rotation=45)#將各學(xué)校代碼按降序順序顯示在x軸上p1t.①(range(len(s2.學(xué)校代碼)),②)#對各學(xué)校及對應(yīng)技術(shù)選考人數(shù)進(jìn)行繪圖

plt.xlabel(″學(xué)?!?plt.ylabel(″技術(shù)選考人數(shù)″)plt.title(″各學(xué)校技術(shù)選考人數(shù)比對″)plt.show()劃線處的代碼應(yīng)為(單選,填字母)。

A.①barh②df.技術(shù)B.①plot②df.技術(shù)C.①bar②s2.技術(shù)D.①scatter②s2.技術(shù)11.黃老師獲取了學(xué)校高三年級學(xué)生某次考試數(shù)據(jù),并使用Excel軟件、Python程序進(jìn)行數(shù)據(jù)處理,如圖所示。(1)Excel文件“exam.xlsx”中的數(shù)據(jù)為(選填:結(jié)構(gòu)化數(shù)據(jù)/半結(jié)構(gòu)化數(shù)據(jù)/非結(jié)構(gòu)化數(shù)據(jù))。

(2)黃老師將文件存儲為“exam.xlsx”,并編寫了如下Python程序?qū)?shù)據(jù)進(jìn)一步分析。請將劃線處代碼補充完整。importpandasaspdimportmatplotlib.pyplotaspltdf=pd.read_excel(″exam.xlsx″)#統(tǒng)計年級物化生政史地技各個科目的選課人數(shù)(本次考試無人缺考)foriindf.columns[5:12]:km=irenshu=df[km].count()print(″選″,km,″的人數(shù)為:″,renshu)#制作年級男女生語文平均分對比圖表df2=df.groupby(″性別″,as_index=False).①

plt.bar(df2.性別,②)

plt.③(″男女生語文平均分比較″)

plt.xlabel(″性別″)plt.ylabel(″語文平均分″)plt.show()12.某地區(qū)要對轄區(qū)內(nèi)高中學(xué)生的高考選科情況進(jìn)行統(tǒng)計,前期先用Excel收集各個學(xué)校每個學(xué)生的選科數(shù)據(jù),界面如圖所示。用Python處理上述Excel文件,統(tǒng)計每個學(xué)校各個學(xué)科的選科情況,并用圖表展示學(xué)生人數(shù)最多的5個學(xué)校的物理學(xué)科與政治學(xué)科人數(shù),代碼如下:importpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltdf=pd.read_excel(″xk73.xlsx″)#讀數(shù)據(jù)到pandas的DataFrame結(jié)構(gòu)中sc=df.groupby(①,as_index=False).count()#按學(xué)校分組計數(shù)

sc=sc.drop('姓名',axis=1)#刪除“姓名”列sc=sc.rename(columns={'學(xué)生編號':'總?cè)藬?shù)'})#修改“學(xué)生編號”為“總?cè)藬?shù)”sc_sort=sc.sort_values(″總?cè)藬?shù)″,ascending=False)#對分組計數(shù)結(jié)果進(jìn)行排序x=np.arange(1,6)#產(chǎn)生列表[1,2,3,4,5]y1=sc_sort.head()[″物理″]②

plt.figure(figsize=(8,4))plt.bar(x0.2,y1,label=″wuli″,width=0.4)plt.bar(x+0.2,y2,label=″zhengzhi″,width=0.4)plt.ylim(50,400)plt.legend()df_sum=pd.DataFrame(data=sc.sum()).Tdf_sum['學(xué)校代碼']='合計'③#顯示圖表

result=sc.append(df_sum)#增加“合計”行result.to_excel(″學(xué)校人數(shù)統(tǒng)計.xlsx″)#保存結(jié)果在劃線處填寫合適代碼,完善程序。1.A解析是一維數(shù)據(jù)結(jié)構(gòu)。2.C解析同一個DataFrame對象的不同數(shù)據(jù)列類型可以不同。3.D解析head(n)函數(shù)返回DataFrame前n行數(shù)據(jù),若不設(shè)置參數(shù)n,則默認(rèn)返回前5行。df[0:5]選取df對象前5行數(shù)據(jù),df[5]選取df對象第6列數(shù)據(jù)。4.D解析可以通過at方法獲取DataFrame對象單個數(shù)據(jù)值,格式為df.at[index,column],所以②正確;或者根據(jù)列標(biāo)題先獲取整列,然后通過行索引獲取單個數(shù)據(jù)值,其中獲取一列數(shù)據(jù)可以通過字典記法或?qū)傩詸z索,第三行數(shù)據(jù)的行索引是2,所以④⑤均正確。5.D解析sort_values()函數(shù)中,參數(shù)ascending,默認(rèn)值為True,表示升序,為False時是降序;對于DataFrame對象,可以通過布爾型數(shù)據(jù)選取滿足條件的行,正確寫法為df[df[″總分″]>=600];最后通過語句⑤輸出結(jié)果。6.C解析統(tǒng)計各班級學(xué)生“總分”平均值需要按照“班級”分組計算。df.groupby('班級').mean()#按“班級”分組,計算各純數(shù)值列平均值。df.groupby('總分').mean()#按“總分”分組,計算各純數(shù)值列平均值。df.groupby('班級')['總分'].mean()#按“班級”分組,并選取“總分”列計算平均值。df.groupby('班級').總分.mean()#按“班級”分組,并選取“總分”列計算平均值。df.groupby('班級').describe()#按“總分”分組,計算各純數(shù)值列的平均值、最大值等統(tǒng)計數(shù)據(jù)。7.B解析as_index:為True時自動把第1列作為了index,為False時默認(rèn)索引0、1、2…。8.numpypandasmatpoltlib9.(1)(df.本期價格df.上期價格)/df.本期價格100(2)g.mean()(3)①df[″類別″]或df.類別②″漲跌幅″解析(1)根據(jù)數(shù)量關(guān)系確定計算公式。(2)計算平均值使用mean()函數(shù)。(3)①觀察題圖b可知需要填橫坐標(biāo)數(shù)據(jù)來源。②此處需要填寫橫坐標(biāo)y的標(biāo)簽(ylabel),由題圖可知應(yīng)該是“漲跌幅”。10.(1)df[df.技術(shù)==1](或df[df[″技術(shù)″]==1])(2)①″學(xué)校代碼″②g.sum()或g.count()(3)D解析本題考查pandas及繪圖模塊知識。(1)Dataframe中,要對某列進(jìn)行篩選(查找并顯示符合條件的值),可以通過df[df[″技術(shù)″]==1]或df[df.技術(shù)==1]來實現(xiàn)。(2)此處考查pandas中分組函數(shù)groupby的用法。依題意,本條語句按學(xué)校進(jìn)行分組,分組的字段名應(yīng)為“學(xué)校代碼”,故①處填″學(xué)校代碼″;①處代碼已將分組后的對象賦值組變量g,②空對其進(jìn)行計數(shù),故填:g.count()。(3)觀察題圖b,可知當(dāng)前是散點圖(scatter),故選D。11.(1)非結(jié)構(gòu)化數(shù)據(jù)(2)①mean()②df2.語文③title解析(1)Excel中的數(shù)據(jù)是屬于結(jié)構(gòu)化數(shù)據(jù)(每列數(shù)據(jù)類型均統(tǒng)一)。(2)①此處求平均值,因此使用mean()函數(shù)。②根據(jù)性別分組后,df2對象中‘語文’列存放了男女生語文成績平均分,創(chuàng)建柱形圖,x軸為性別,y軸為男女生語文成績平均分,故答案為df2.語文。③此處顯示的標(biāo)題,因此答案如上。12.①″學(xué)校代碼″②y2=sc_sort.head()[″政治″](或y2=sc_sort.head(5)[″政治″])③plt.show()解析本題考查數(shù)據(jù)處理知識。(1)①題干說明需要“統(tǒng)計每個學(xué)校各個學(xué)科的選科情況”,所以需要根據(jù)“學(xué)校編號”分類匯總統(tǒng)計各學(xué)校的選科情況,此空填寫分組的關(guān)鍵字,答案為“學(xué)校代碼”。②根據(jù)上下文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論