2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題_第1頁
2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題_第2頁
2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題_第3頁
2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題_第4頁
2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2025年大數(shù)據(jù)分析師職業(yè)技能測試卷:Python數(shù)據(jù)分析與數(shù)據(jù)清洗技巧試題考試時(shí)間:______分鐘總分:______分姓名:______一、Python基礎(chǔ)語法與變量要求:請根據(jù)Python基礎(chǔ)語法,完成以下編程題目,包括變量定義、數(shù)據(jù)類型轉(zhuǎn)換、運(yùn)算符使用等。1.定義一個(gè)變量,存儲你的姓名,并打印出來。2.定義一個(gè)變量,存儲你的年齡,并打印出來。3.定義一個(gè)變量,存儲你的身高(單位:米),并打印出來。4.定義一個(gè)變量,存儲你的體重(單位:千克),并打印出來。5.將你的身高和體重轉(zhuǎn)換為體重指數(shù)(BMI),并打印出來。6.定義一個(gè)變量,存儲一個(gè)字符串,表示你的興趣愛好,并打印出來。7.定義一個(gè)變量,存儲一個(gè)整數(shù),表示你的考試成績,并打印出來。8.定義一個(gè)變量,存儲一個(gè)浮點(diǎn)數(shù),表示你的平均分,并打印出來。9.定義一個(gè)變量,存儲一個(gè)布爾值,表示你是否喜歡編程,并打印出來。10.定義一個(gè)變量,存儲一個(gè)列表,包含你的朋友姓名,并打印出來。二、Python數(shù)據(jù)結(jié)構(gòu)與控制流要求:請根據(jù)Python數(shù)據(jù)結(jié)構(gòu)與控制流,完成以下編程題目,包括列表、元組、字典、集合等數(shù)據(jù)結(jié)構(gòu)的使用,以及if語句、for循環(huán)、while循環(huán)等控制流的使用。1.定義一個(gè)列表,包含10個(gè)整數(shù),并打印出來。2.定義一個(gè)元組,包含5個(gè)字符串,并打印出來。3.定義一個(gè)字典,包含3個(gè)鍵值對,其中鍵為字符串,值為整數(shù),并打印出來。4.定義一個(gè)集合,包含5個(gè)元素,并打印出來。5.使用for循環(huán)遍歷列表,打印出列表中的每個(gè)元素。6.使用while循環(huán)計(jì)算1到10的累加和。7.使用if語句判斷一個(gè)整數(shù)是否為偶數(shù),并打印出結(jié)果。8.使用列表推導(dǎo)式生成一個(gè)包含10個(gè)平方數(shù)的列表,并打印出來。9.使用字典推導(dǎo)式生成一個(gè)包含鍵值對的字典,其中鍵為字符串,值為對應(yīng)字符串的長度,并打印出來。10.使用集合推導(dǎo)式生成一個(gè)包含所有奇數(shù)的集合,并打印出來。四、數(shù)據(jù)清洗與預(yù)處理要求:以下題目涉及數(shù)據(jù)清洗與預(yù)處理的基本操作,請使用Python代碼完成以下任務(wù)。1.給定一個(gè)包含缺失值的列表,使用適當(dāng)?shù)姆椒ㄌ畛淙笔е怠?.給定一個(gè)包含重復(fù)元素的列表,刪除所有重復(fù)的元素。3.給定一個(gè)包含空字符串的列表,刪除所有空字符串。4.給定一個(gè)包含負(fù)數(shù)的列表,將所有負(fù)數(shù)轉(zhuǎn)換為0。5.給定一個(gè)包含日期字符串的列表,將日期格式統(tǒng)一為“YYYY-MM-DD”。6.給定一個(gè)包含浮點(diǎn)數(shù)的列表,四舍五入每個(gè)元素到兩位小數(shù)。7.給定一個(gè)包含字典的列表,每個(gè)字典包含“姓名”和“年齡”鍵值對,刪除所有年齡小于18歲的字典。8.給定一個(gè)包含數(shù)字的列表,使用適當(dāng)?shù)暮瘮?shù)將列表中的數(shù)字轉(zhuǎn)換為字符串。9.給定一個(gè)包含文本的列表,去除每個(gè)字符串的首尾空白字符。10.給定一個(gè)包含數(shù)字和文本的列表,創(chuàng)建一個(gè)新的列表,只包含數(shù)字。五、Pandas庫基本操作要求:以下題目要求使用Pandas庫進(jìn)行數(shù)據(jù)操作,請根據(jù)Pandas庫的相關(guān)功能完成以下任務(wù)。1.使用Pandas創(chuàng)建一個(gè)DataFrame,包含兩列:姓名和分?jǐn)?shù)。2.向DataFrame中添加兩行數(shù)據(jù)。3.從DataFrame中刪除一行數(shù)據(jù)。4.更改DataFrame中某行的某個(gè)值。5.查找DataFrame中分?jǐn)?shù)大于90的記錄。6.計(jì)算DataFrame中平均分?jǐn)?shù)。7.將DataFrame中的姓名列轉(zhuǎn)換為小寫。8.選擇DataFrame中的姓名列和分?jǐn)?shù)列。9.對DataFrame進(jìn)行排序,按照分?jǐn)?shù)降序排列。10.將DataFrame保存為CSV文件。六、數(shù)據(jù)可視化要求:以下題目要求使用matplotlib庫進(jìn)行數(shù)據(jù)可視化,請根據(jù)matplotlib庫的相關(guān)功能完成以下任務(wù)。1.使用matplotlib繪制一個(gè)簡單的折線圖,展示三個(gè)時(shí)間點(diǎn)的數(shù)據(jù)變化。2.使用matplotlib繪制一個(gè)散點(diǎn)圖,展示兩組數(shù)據(jù)之間的關(guān)系。3.使用matplotlib繪制一個(gè)柱狀圖,展示不同類別數(shù)據(jù)的數(shù)量。4.使用matplotlib繪制一個(gè)餅圖,展示不同類別數(shù)據(jù)占比。5.對柱狀圖應(yīng)用分組,展示不同類別數(shù)據(jù)的變化趨勢。6.對餅圖應(yīng)用標(biāo)簽,標(biāo)明每個(gè)部分的數(shù)據(jù)占比。7.使用matplotlib調(diào)整折線圖的顏色和線型。8.使用matplotlib添加標(biāo)題和坐標(biāo)軸標(biāo)簽到散點(diǎn)圖中。9.使用matplotlib在柱狀圖上添加數(shù)據(jù)標(biāo)簽。10.使用matplotlib保存圖表為PNG文件。本次試卷答案如下:一、Python基礎(chǔ)語法與變量1.name="張三"print(name)解析:定義了一個(gè)變量name,存儲了字符串"張三",并使用print函數(shù)打印出來。2.age=25print(age)解析:定義了一個(gè)變量age,存儲了整數(shù)25,并使用print函數(shù)打印出來。3.height=1.75print(height)解析:定義了一個(gè)變量height,存儲了浮點(diǎn)數(shù)1.75(單位:米),并使用print函數(shù)打印出來。4.weight=70print(weight)解析:定義了一個(gè)變量weight,存儲了整數(shù)70(單位:千克),并使用print函數(shù)打印出來。5.bmi=weight/(height**2)print("BMI:",bmi)解析:根據(jù)體重和身高計(jì)算了體重指數(shù)(BMI),并使用print函數(shù)打印出來。6.hobbies="閱讀、運(yùn)動(dòng)、編程"print(hobbies)解析:定義了一個(gè)變量hobbies,存儲了字符串,表示興趣愛好,并使用print函數(shù)打印出來。7.score=95print(score)解析:定義了一個(gè)變量score,存儲了整數(shù)95,表示考試成績,并使用print函數(shù)打印出來。8.average=88.5print(average)解析:定義了一個(gè)變量average,存儲了浮點(diǎn)數(shù)88.5,表示平均分,并使用print函數(shù)打印出來。9.likes_programming=Trueprint(likes_programming)解析:定義了一個(gè)變量likes_programming,存儲了布爾值True,表示是否喜歡編程,并使用print函數(shù)打印出來。10.friends=["李四","王五","趙六"]print(friends)解析:定義了一個(gè)變量friends,存儲了一個(gè)包含朋友姓名的列表,并使用print函數(shù)打印出來。二、Python數(shù)據(jù)結(jié)構(gòu)與控制流1.numbers=[1,2,3,4,5,6,7,8,9,10]print(numbers)解析:定義了一個(gè)列表numbers,包含了10個(gè)整數(shù),并使用print函數(shù)打印出來。2.names=("Alice","Bob","Charlie","David","Eve")print(names)解析:定義了一個(gè)元組names,包含了5個(gè)字符串,并使用print函數(shù)打印出來。3.data={"name":"張三","age":25,"score":90}print(data)解析:定義了一個(gè)字典data,包含了3個(gè)鍵值對,其中鍵為字符串,值為整數(shù),并使用print函數(shù)打印出來。4.numbers_set={1,2,3,4,5}print(numbers_set)解析:定義了一個(gè)集合numbers_set,包含了5個(gè)元素,并使用print函數(shù)打印出來。5.fornuminnumbers:print(num)解析:使用for循環(huán)遍歷列表numbers中的每個(gè)元素,并使用print函數(shù)打印出來。6.sum=0i=1whilei<=10:sum+=ii+=1print(sum)解析:使用while循環(huán)計(jì)算1到10的累加和,并將結(jié)果存儲在變量sum中,最后打印出來。7.ifscore>90:print("Excellent")解析:使用if語句判斷分?jǐn)?shù)是否大于90,如果條件為真,則打印出"Excellent"。8.squares=[x**2forxinrange(1,11)]print(squares)解析:使用列表推導(dǎo)式生成一個(gè)包含10個(gè)平方數(shù)的列表,并使用print函數(shù)打印出來。9.data_dict={k.lower():vfork,vindata.items()}print(data_dict)解析:使用字典推導(dǎo)式生成一個(gè)新的字典,將原始字典中的鍵轉(zhuǎn)換為小寫,并使用print函數(shù)打印出來。10.odd_numbers={xforxinrange(1,21)ifx%2!=0}print(odd_numbers)解析:使用集合推導(dǎo)式生成一個(gè)包含所有奇數(shù)的集合,并使用print函數(shù)打印出來。四、數(shù)據(jù)清洗與預(yù)處理1.data=[10,20,None,30,None,40]clean_data=[xifxisnotNoneelse0forxindata]print(clean_data)解析:使用列表推導(dǎo)式檢查列表中的每個(gè)元素,如果元素不是None,則保留原值;如果是None,則用0替換。2.data=[1,2,2,3,4,4,4,5]unique_data=list(set(data))print(unique_data)解析:將列表轉(zhuǎn)換為集合以去除重復(fù)元素,然后再次轉(zhuǎn)換為列表。3.data=["","apple","banana","","orange"]non_empty_data=[xforxindataifx.strip()!=""]print(non_empty_data)解析:使用列表推導(dǎo)式去除列表中的空字符串,使用strip()方法去除字符串首尾的空白字符。4.data=[-5,0,5,-10,15]non_negative_data=[0ifx<0elsexforxindata]print(non_negative_data)解析:使用列表推導(dǎo)式將所有負(fù)數(shù)替換為0。5.data=["2020-01-01","2020/02/02","2020-03-03"]formatted_data=[d.replace("/","-")fordindata]print(formatted_data)解析:使用列表推導(dǎo)式將所有日期字符串的格式統(tǒng)一為"YYYY-MM-DD"。6.data=[12.345,67.891,123.4567]rounded_data=[round(x,2)forxindata]print(rounded_data)解析:使用列表推導(dǎo)式將所有浮點(diǎn)數(shù)四舍五入到兩位小數(shù)。7.data=[{"name":"Alice","age":17},{"name":"Bob","age":19},{"name":"Charlie","age":15}]adult_data=[dfordindataifd["age"]>=18]print(adult_data)解析:使用列表推導(dǎo)式篩選出所有年齡大于等于18歲的字典。8.data=[10,20,30,40,50]str_data=[str(x)forxindata]print(str_data)解析:使用列表推導(dǎo)式將所有數(shù)字轉(zhuǎn)換為字符串。9.data="Hello,World!"stripped_data=data.strip()print(stripped_data)解析:使用strip()方法去除字符串首尾的空白字符。10.data=[1,"Alice",3,"Bob",5,"Charlie"]numeric_data=[xforxindataifisinstance(x,int)]print(numeric_data)解析:使用列表推導(dǎo)式篩選出所有數(shù)字元素。五、Pandas庫基本操作1.importpandasaspddata=pd.DataFrame({"name":["張三","李四","王五"],"score":[90,85,92]})print(data)解析:使用pandas庫創(chuàng)建了一個(gè)DataFrame,包含了姓名和分?jǐn)?shù)兩列,并使用print函數(shù)打印出來。2.data.loc[0,"name"]="趙六"print(data)解析:使用loc方法修改DataFrame中第一行的姓名為"趙六",并打印修改后的DataFrame。3.data.drop(1,inplace=True)print(data)解析:使用drop方法刪除DataFrame中的第二行,并設(shè)置inplace=True以直接修改原DataFrame。4.data.at[0,"score"]=95print(data)解析:使用at方法修改DataFrame中第一行的分?jǐn)?shù)為95。5.filtered_data=data[data["score"]>90]print(filtered_data)解析:使用條件過濾DataFrame中的記錄,只保留分?jǐn)?shù)大于90的行。6.average_score=data["score"].mean()print(average_score)解析:計(jì)算DataFrame中分?jǐn)?shù)列的平均值。7.data["name"]=data["name"].str.lower()print(data)解析:使用str.lower()方法將姓名列中的所有字符串轉(zhuǎn)換為小寫。8.selected_data=data[["name","score"]]print(selected_data)解析:使用列名選擇DataFrame中的姓名和分?jǐn)?shù)列。9.data.sort_values("score",ascending=False,inplace=True)print(data)解析:使用sort_values方法根據(jù)分?jǐn)?shù)列降序排列DataFrame。10.data.to_csv("students.csv",index=False)print("DataFramesavedto'students.csv'")解析:將DataFrame保存為CSV文件,不包含索引列。六、數(shù)據(jù)可視化1.importmatplotlib.pyplotaspltplt.plot([1,2,3],[10,20,30])plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)簡單的折線圖,展示了三個(gè)時(shí)間點(diǎn)的數(shù)據(jù)變化。2.importmatplotlib.pyplotaspltplt.scatter([1,2,3],[10,20,30])plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)散點(diǎn)圖,展示了兩組數(shù)據(jù)之間的關(guān)系。3.importmatplotlib.pyplotaspltplt.bar(["A","B","C","D"],[10,20,15,25])plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)柱狀圖,展示了不同類別數(shù)據(jù)的數(shù)量。4.importmatplotlib.pyplotaspltplt.pie([10,20,30],labels=["A","B","C"],autopct='%1.1f%%')plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)餅圖,展示了不同類別數(shù)據(jù)的占比。5.importmatplotlib.pyplotaspltplt.bar(["A","B","C"],[10,20,15],color=["red","green","blue"])plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)分組柱狀圖,展示了不同類別數(shù)據(jù)的變化趨勢。6.importmatplotlib.pyplotaspltplt.pie([10,20,30],labels=["A","B","C"],autopct='%1.1f%%')plt.legend()plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)餅圖,并添加了圖例以標(biāo)明每個(gè)部分的數(shù)據(jù)占比。7.importmatplotlib.pyplotaspltplt.plot([1,2,3],[10,20,30],color="blue",linestyle=":")plt.show()解析:使用matplotlib.pyplot模塊繪制了一個(gè)折線圖,并設(shè)置了顏色和線型。8.importmatplotlib.pyplotas

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論