2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案_第1頁(yè)
2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案_第2頁(yè)
2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案_第3頁(yè)
2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案_第4頁(yè)
2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2026年數(shù)據(jù)分析師數(shù)據(jù)處理及可視化試題及答案1.單選題(每題2分,共20分)1.1在Pandas中,下列代碼執(zhí)行后df的行數(shù)是多少?```pythonimportpandasaspddf=pd.DataFrame({'x':range(5)})df=df[df.x>2].reset_index(drop=True)df=df.drop_duplicates()```A.2??B.3??C.4??D.5答案:A1.2使用NumPy生成服從N(0,1)的1000個(gè)隨機(jī)數(shù),并計(jì)算其偏度(scipy.stats.skew)。若結(jié)果≈0.02,則下列說(shuō)法正確的是:A.分布左偏?B.分布右偏?C.基本對(duì)稱?D.無(wú)法判斷答案:C1.3在Matplotlib中,欲將x軸刻度標(biāo)簽旋轉(zhuǎn)45°,應(yīng)使用:A.plt.xticks(rotation=45)B.plt.setp(ax.xticks,rotation=45)C.ax.set_xticklabels(rotation=45)D.plt.xlim(rotation=45)答案:A1.4對(duì)高維稀疏矩陣進(jìn)行降維,優(yōu)先選擇:A.PCA?B.t-SNE?C.TruncatedSVD?D.LDA答案:C1.5在SQL中,窗口函數(shù)ROW_NUMBER()OVER(PARTITIONBYdeptORDERBYsalaryDESC)的作用是:A.每個(gè)dept內(nèi)按salary升序編號(hào)?B.全局按salary降序編號(hào)?C.每個(gè)dept內(nèi)按salary降序編號(hào)?D.返回dept內(nèi)最高salary答案:C1.6下列關(guān)于Seaborn的敘述,錯(cuò)誤的是:A.sns.heatmap可繪制相關(guān)系數(shù)矩陣圖?B.sns.pairplot可一次性繪制所有數(shù)值變量?jī)蓛缮Ⅻc(diǎn)圖?C.sns.boxplot只能畫(huà)一個(gè)箱線圖?D.sns.catplot支持kind='bar'答案:C1.7在Python中,對(duì)類別變量進(jìn)行獨(dú)熱編碼后,最可能導(dǎo)致的建模風(fēng)險(xiǎn)是:A.過(guò)擬合?B.欠擬合?C.梯度消失?D.數(shù)據(jù)泄露答案:A1.8使用Scikit-learn的StandardScaler.fit_transform(X)后,X的每一列:A.均值為0方差為1?B.均值為1方差為0?C.最小值為0最大值為1?D.不變答案:A1.9在Tableau中,將維度字段拖到“顏色”標(biāo)記卡,默認(rèn)生成:A.條形圖?B.散點(diǎn)圖?C.填充地圖?D.按類別分色的視圖答案:D1.10對(duì)時(shí)間序列做STL分解后,remainder項(xiàng)的均值理想狀態(tài)下應(yīng):A.接近0?B.接近1?C.接近季節(jié)周期?D.與趨勢(shì)相同答案:A2.多選題(每題3分,共15分;多選少選均不得分)2.1下列哪些操作會(huì)觸發(fā)Pandas的SettingWithCopyWarning?A.df[df.x>0].y=1?B.df.loc[df.x>0,'y']=1?C.df2=df[df.x>0];df2['y']=1?D.df.iloc[0,0]=100答案:AC2.2關(guān)于特征縮放,下列說(shuō)法正確的是:A.K-均值聚類前必須做?B.樹(shù)模型不需要?C.主成分分析前必須做?D.嶺回歸對(duì)特征量綱敏感答案:ABCD2.3下列圖表適合展示“部分-整體”關(guān)系的有:A.堆疊面積圖?B.餅圖?C.樹(shù)狀圖?D.南丁格爾玫瑰圖答案:ABCD2.4在PowerBI中,可創(chuàng)建“計(jì)算列”的DAX函數(shù)有:A.SUM?B.CALCULATE?C.RELATED?D.IF答案:CD2.5下列屬于Python可視化交互庫(kù)的有:A.Plotly?B.Bokeh?C.Altair?D.Pyecharts答案:ABCD3.填空題(每空2分,共20分)3.1在Pandas中,將字符串列date轉(zhuǎn)為datetime類型并設(shè)為索引,一行代碼為:df.date=pd.to_datetime(df.date);df=df.set_index('date')3.2使用NumPy計(jì)算兩個(gè)數(shù)組a、b的皮爾遜相關(guān)系數(shù),代碼為:np.corrcoef(a,b)[0,1]3.3在Matplotlib里,設(shè)置圖例字體大小為12的代碼:plt.legend(fontsize=12)3.4SQL語(yǔ)句:SELECTPERCENTILE_CONT(0.5)WITHINGROUP(ORDERBYscore)FROMexam;返回的是:score的中位數(shù)3.5在Scikit-learn中,使用Pipeline將StandardScaler與LogisticRegression串起來(lái),代碼片段:fromsklearn.pipelineimportPipelinepipe=Pipeline([('sc',StandardScaler()),('clf',LogisticRegression())])3.6在Seaborn中,繪制核密度估計(jì)圖的函數(shù)是:sns.kdeplot3.7Tableau計(jì)算字段里,將字符串“2026-06-01”轉(zhuǎn)為日期函數(shù):DATE("2026-06-01")3.8對(duì)DataFramedf按列x升序、列y降序排序,代碼:df.sort_values(['x','y'],ascending=[True,False])3.9使用Python獲取當(dāng)前工作目錄的OS模塊命令:os.getcwd()3.10在JupyterNotebook中,查看當(dāng)前變量占用內(nèi)存的魔術(shù)命令:%whos4.判斷題(每題1分,共10分;正確寫(xiě)“T”,錯(cuò)誤寫(xiě)“F”)4.1t-SNE可用于高維稀疏文本向量降維并直接解釋維度含義。?F4.2在Pandas里,df.groupby('city').size()返回Series,索引為city。?T4.3使用Seaborn的sns.heatmap()時(shí),參數(shù)annot=True可在格子里顯示數(shù)值。?T4.4對(duì)右偏分布取對(duì)數(shù)后,偏度一定變?yōu)樨?fù)值。?F4.5SQL的窗口函數(shù)不能和GROUPBY同時(shí)出現(xiàn)在同一查詢塊。?F4.6Plotly生成的html可離線嵌入網(wǎng)頁(yè)且無(wú)需額外JS文件。?T4.7在PowerBI中,度量值必須使用聚合函數(shù)。?F4.8使用PCA降維后,主成分方向彼此正交。?T4.9在Matplotlib中,plt.savefig('fig.png',dpi=300)將分辨率設(shè)為300dpi。?T4.10在Python中,deldf可立即釋放DataFrame占用的全部?jī)?nèi)存。?F5.簡(jiǎn)答題(共25分)5.1(封閉型,5分)寫(xiě)出Python代碼:對(duì)DataFramedf,計(jì)算每列缺失率并按降序排列,返回Series。答案:```pythonmissing_rate=df.isna().mean().sort_values(ascending=False)```5.2(開(kāi)放型,6分)描述箱線圖五個(gè)統(tǒng)計(jì)量的含義,并說(shuō)明如何利用箱線圖識(shí)別異常值。答案:下邊緣(Q1-1.5IQR)、下四分位數(shù)Q1、中位數(shù)、上四分位數(shù)Q3、上邊緣(Q3+1.5IQR)。異常值判定:小于Q1-1.5IQR或大于Q3+1.5IQR的觀測(cè)值在圖中以單獨(dú)點(diǎn)呈現(xiàn),可快速識(shí)別潛在異常。5.3(封閉型,6分)給定SQL表sales(date,amount),寫(xiě)查詢計(jì)算7日移動(dòng)平均銷售額。答案:```sqlSELECTdate,AVG(amount)OVER(ORDERBYdateROWSBETWEEN6PRECEDINGANDCURRENTROW)ASma7FROMsales;```5.4(開(kāi)放型,8分)闡述使用PCA前為何需要標(biāo)準(zhǔn)化,并說(shuō)明在什么場(chǎng)景下可跳過(guò)標(biāo)準(zhǔn)化。答案:PCA受量綱影響,若變量尺度差異大,大尺度變量會(huì)主導(dǎo)主成分方向,導(dǎo)致解釋偏差。標(biāo)準(zhǔn)化使各變量處于同一尺度,確保主成分反映真實(shí)方差結(jié)構(gòu)。可跳過(guò)場(chǎng)景:所有變量已同單位且尺度接近,例如均為已歸一化的圖像像素值(0-255)或相關(guān)系數(shù)矩陣出發(fā)的PCA。6.應(yīng)用題(共60分)6.1數(shù)據(jù)清洗與特征工程(計(jì)算類,15分)文件:telco.csv,包含customerID、tenure、MonthlyCharges、TotalCharges、Churn等。任務(wù):①讀取并檢查TotalCharges列存在“空格”字符串,將其替換為NaN后轉(zhuǎn)為float。(3分)②計(jì)算tenure為0且TotalCharges缺失的比例。(3分)③構(gòu)造新特征:AvgMonthlyCharge=TotalCharges/(tenure+1e-3),處理tenure=0時(shí)的除零風(fēng)險(xiǎn)。(4分)④對(duì)Churn做標(biāo)簽編碼,0=No,1=Yes,返回編碼后Series。(3分)⑤將清洗后數(shù)據(jù)保存為telco_clean.csv,不含index。(2分)答案:```pythonimportpandasaspddf=pd.read_csv('telco.csv')df.TotalCharges=pd.to_numeric(df.TotalCharges.replace('',pd.NA),errors='coerce')ratio=df[(df.tenure==0)&(df.TotalCharges.isna())].shape[0]/df.shape[0]df['AvgMonthlyCharge']=df.TotalCharges/(df.tenure+1e-3)df['Churn']=df.Churn.map({'No':0,'Yes':1})df.to_csv('telco_clean.csv',index=False)```6.2可視化設(shè)計(jì)(分析類,15分)沿用telco_clean.csv,完成:①繪制MonthlyCharges與tenure的聯(lián)合分布圖,要求疊加Churn色調(diào),并加回歸線。(5分)②繪制AvgMonthlyCharge的分布密度圖,按Churn分面,透明度0.5。(5分)③寫(xiě)一段不超過(guò)80字的解讀,指出哪組客戶AvgMonthlyCharge更高。(5分)答案:```pythonimportseabornassns,matplotlib.pyplotaspltsns.jointplot(data=df,x='tenure',y='MonthlyCharges',hue='Churn',kind='reg')g=sns.FacetGrid(df,col='Churn',height=4)g.map(sns.kdeplot,'AvgMonthlyCharge',fill=True,alpha=0.5)plt.show()```解讀:Churn=1的客戶密度峰位于更高AvgMonthlyCharge區(qū)間,表明流失客戶平均月賬單更高。6.3交互式儀表盤(pán)(綜合類,15分)使用PlotlyDash構(gòu)建Web應(yīng)用:需求:①下拉菜單選擇“性別”或“是否老年人”作為分面維度。(5分)②左側(cè)散點(diǎn)圖展示MonthlyChargesvstenure,顏色映射Churn。(5分)③右側(cè)放置箱線圖展示同一維度下TotalCharges分布。(5分)提交app.py核心代碼(不超過(guò)60行)。答案:```pythonimportdash,pandasaspd,plotly.expressaspxfromdashimporthtml,dccdf=pd.read_csv('telco_clean.csv')app=dash.Dash(__name__)app.layout=html.Div([dcc.Dropdown(id='dim',options=[{'label':i,'value':i}foriin['gender','SeniorCitizen']],value='gender',clearable=False),dcc.Graph(id='scatter'),dcc.Graph(id='box')])@app.callback([dash.dependencies.Output('scatter','figure'),dash.dependencies.Output('box','figure')],[dash.dependencies.Input('dim','input')])defupdate(d):return(px.scatter(df,x='tenure',y='MonthlyCharges',color='Churn',facet_col=d),px.box(df,x=d,y='TotalCharges',color='Churn'))if__name__=='__main__':app.run_server(debug=True)```6.4時(shí)間序列預(yù)測(cè)(計(jì)算+分析類,15分)文件:airline.csv,列date、passengers。任務(wù):①將date轉(zhuǎn)為月度PeriodIndex,按‘M’頻率。(3分)②使用statsmodels的STL分解,period=12,輸出趨勢(shì)、季節(jié)、殘差圖。(5分)③以趨勢(shì)+季節(jié)做未來(lái)12期預(yù)測(cè),計(jì)算MAPE。(5分)④寫(xiě)結(jié)論:殘差是否近似白噪聲?(2分)答案:```pythonimportpandasaspd,matplotlib.pyplotaspltfromstatsmodels.tsa.seasonalimportSTLfromstatsmodels.tsa.forecasting.thetaimportThetaModeldf=pd.read_csv('airline.csv',parse_dates=['date'])ts=df.set_index('date')['passengers'].to_period('M')stl=STL(ts,period=12).fit()stl.plot();plt.show()pred=stl.trend+stl.seasonalfuture=pd.period_range(ts.index[-1]+1,periods=12,freq='M')mape=(abs(ts[-12:]pred[-12:])/ts[-12:]).mean()100mape=(abs(ts[-12:]pred[-12:])/ts[-12:]).mean()100print('MAPE:',mape)```結(jié)論:殘差A(yù)CF在滯后1-12階基本落在95%置信帶內(nèi),可近似視為白噪聲。7.綜合案例(30分)背景:某零售企業(yè)提供2024-2025兩年訂單明細(xì)order_detail.csv(order_id,product_id,quantity,price,order_date,customer_id,region)。要求:①數(shù)據(jù)加載與探索:計(jì)算各region月度銷售額,并找出銷售額環(huán)比增幅最大的月份與地區(qū)。(8分)②可視化:用Altair繪制交互折線,x軸月份,y軸銷售額,顏色region,懸停提示環(huán)比增幅。(8分)③客戶細(xì)分:使用RFM模型,以2025-06-30為觀察點(diǎn),計(jì)算R(Recency)、F(Frequency)、M(Monetary),并用K-Means聚為4類,輸出每類人數(shù)及平均M。(8分)④策略建議:基于聚類結(jié)果,為平均M最高類寫(xiě)不超過(guò)100字的精準(zhǔn)營(yíng)銷方案。(6分)答案:①```pythonimportpandasaspd,numpyasnpdf=pd.read_csv('order_detail.csv',parse_dates=['order_date'])df['sales']=df.quantitydf.pricedf['sales']=df.quantitydf.pricemonth_sales=(df.assign(ym=df.order_date.dt.to_period('M')).groupby(['region','ym'])['sales'].sum().reset_index())month_sales['lag']=month_sales.groupby('region')['sales'].shift(1)month_sales['gr']=(month_sales['sales']month_sales['lag'])/month_sales['lag']max_row=month_sales.loc[month_sales['gr'].idxmax()]print(max_row[['region','ym','gr']])```②```python

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論