版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(2025年)Python数据分析考试试题附答案一、单项选择题(每题2分,共20分)1.以下关于Pandas中`DataFrame`的操作,正确的是()A.使用`df.drop(columns='age')`会直接删除原DataFrame的'age'列B.`df.loc[df['score']>80,'grade']='A'`是通过标签索引修改符合条件的行的'grade'列值C.`pd.merge(df1,df2,on='id',how='outer')`会保留df1和df2中所有匹配'id'的行,非匹配行用NaN填充D.`df.groupby('category')['sales'].sum()`的结果是一个DataFrame答案:B解析:A选项中`drop`方法默认`inplace=False`,不会修改原DataFrame;C选项`outer`是全外连接,保留所有行;D选项结果是Series。2.执行以下代码后,输出结果为()```pythonimportnumpyasnparr=np.array([[1,2,3],[4,5,6],[7,8,9]])print(arr[1:3,0:2].shape)```A.(2,2)B.(2,3)C.(3,2)D.(3,3)答案:A解析:行切片1:3取第2、3行(索引1和2),列切片0:2取前2列,结果为2行2列。3.某数据集中`price`列存在异常值(如负数、极大值),最合理的处理流程是()A.直接删除所有异常值所在行B.用该列均值填充异常值C.先通过箱线图或Z-score识别异常值,再根据业务场景决定删除、修正或保留D.用相邻行的均值填充异常值答案:C解析:异常值处理需结合业务逻辑,不能盲目删除或填充。4.关于Seaborn的`sns.barplot()`,说法错误的是()A.默认会计算分类变量的均值并绘制置信区间B.`x`和`y`参数分别指定横轴和纵轴的变量C.无法同时显示多个分类变量的对比(如按性别和地区分组)D.可以通过`hue`参数添加第三个分类维度答案:C解析:`hue`参数可用于多分类变量对比。5.读取CSV文件时,若文件中某列包含大量缺失值(用'N/A'表示),正确的读取方式是()A.`pd.read_csv('data.csv',na_values=['N/A'])`B.`pd.read_csv('data.csv',keep_default_na=False)`C.`pd.read_csv('data.csv',na_filter=False)`D.`pd.read_csv('data.csv',skiprows=['N/A'])`答案:A解析:`na_values`参数指定将哪些字符串识别为缺失值。6.对如下Series执行`sr.rank(method='dense')`,结果为()```pythonsr=pd.Series([5,3,3,7,5])```A.[3,1,1,5,3]B.[3,1,1,5,4]C.[2,1,1,4,2]D.[3,1,1,5,3]答案:D解析:`dense`方法对相同值赋予相同排名,不跳过后续排名(如两个3为1,两个5为3,7为5)。7.以下代码用于计算某列的年度同比增长率,空白处应填入()```pythondf['yoy_growth']=df['sales'].pct_change(____)100```A.periods=12B.periods=4C.periods=1D.periods=0答案:A解析:年度同比需间隔12个月(假设数据为月度频率)。8.关于`pandasql`库的作用,正确的是()A.用于将DataFrame转换为SQL数据库B.允许在Python中使用SQL语句操作DataFrameC.优化Pandas的查询性能D.提供SQL建表语句答案:B解析:`pandasql`通过`sqldf`函数支持在Python中执行SQL查询DataFrame。9.对时间序列数据进行滚动窗口计算时,若窗口大小为3,且要求窗口内必须有至少2个非缺失值,正确的参数设置是()A.`df.rolling(window=3,min_periods=2)`B.`df.rolling(window=3,center=True)`C.`df.rolling(window=3,closed='right')`D.`df.rolling(window=3,win_type='triang')`答案:A解析:`min_periods`指定窗口内最小非缺失值数量。10.以下哪种场景最适合使用热图(Heatmap)可视化?()A.展示某城市一年中每月的平均气温变化趋势B.比较不同产品在各季度的销售额占比C.分析用户行为中页面点击的相关性矩阵D.显示客户年龄与消费金额的散点分布答案:C解析:热图适合展示二维矩阵的数值强度,如相关性矩阵。二、填空题(每题3分,共15分)1.若`df`是一个包含1000行的DataFrame,执行`df.sample(n=100,random_state=42)`后,得到的样本行数是____。答案:1002.计算两个Series的协方差,应使用____方法(填函数名)。答案:`cov()`3.对`date`列(字符串格式如'2023-05-15')进行时间类型转换,应使用`pd.to_datetime(df['date'],____)`(补充参数)。答案:`format='%Y-%m-%d'`(或不填参数,自动解析)4.在Seaborn中,绘制两个连续变量的回归拟合线,应使用____函数。答案:`sns.regplot()`5.若`arr`是一个3x3的NumPy数组,`arr.reshape(-1,1)`的结果形状是____。答案:(9,1)三、编程题(共45分)1.数据清洗与基础分析(15分)给定某电商平台2023年订单数据集`orders.csv`(字段:order_id,user_id,order_date,category,amount,pay_status),要求:(1)读取数据,将`order_date`列转换为日期时间类型;(2)筛选出`pay_status`为'已支付'且`amount`大于0的有效订单;(3)计算各品类(category)的订单数量和总金额,结果按总金额降序排列;(4)输出前5名品类的订单数量和总金额。答案:```pythonimportpandasaspd(1)读取数据并转换日期格式df=pd.read_csv('orders.csv')df['order_date']=pd.to_datetime(df['order_date'])(2)筛选有效订单valid_orders=df[(df['pay_status']=='已支付')&(df['amount']>0)](3)按品类分组统计category_stats=valid_orders.groupby('category').agg(order_count=('order_id','count'),total_amount=('amount','sum')).sort_values('total_amount',ascending=False)(4)输出前5名print(category_stats.head(5))```2.时间序列分析(15分)使用上一题的`valid_orders`数据,要求:(1)按周(每周第一天为周一)重采样,计算每周的订单数量和总金额;(2)绘制每周总金额的折线图,设置标题为“2023年周度销售额趋势”,x轴标签为“周次”,y轴标签为“总金额(万元)”;(3)计算相邻两周总金额的环比增长率(保留2位小数)。答案:```pythonimportmatplotlib.pyplotasplt(1)按周重采样(周一为周起始)weekly_data=valid_orders.set_index('order_date').resample('W-MON').agg(weekly_orders=('order_id','count'),weekly_amount=('amount','sum')).reset_index()(2)绘制折线图plt.figure(figsize=(12,6))plt.plot(weekly_data.index+1,weekly_data['weekly_amount']/10000,marker='o')plt.title('2023年周度销售额趋势')plt.xlabel('周次')plt.ylabel('总金额(万元)')plt.grid(True)plt.show()(3)计算环比增长率weekly_data['growth_rate']=weekly_data['weekly_amount'].pct_change()100weekly_data['growth_rate']=weekly_data['growth_rate'].round(2)print(weekly_data[['order_date','weekly_amount','growth_rate']])```3.用户分层分析(15分)基于`valid_orders`数据中的`user_id`和`amount`,要求:(1)计算每个用户的总消费金额(`total_payment`)和订单数量(`order_count`);(2)使用K-means聚类将用户分为3层(高价值、中价值、低价值),特征为`total_payment`和`order_count`;(3)输出各层用户的数量及平均消费金额(保留2位小数)。答案:```pythonfromsklearn.clusterimportKMeansfromsklearn.preprocessingimportStandardScaler(1)用户消费统计user_stats=valid_orders.groupby('user_id').agg(total_payment=('amount','sum'),order_count=('order_id','count')).reset_index()(2)数据标准化与聚类features=user_stats[['total_payment','order_count']]scaler=StandardScaler()scaled_features=scaler.fit_transform(features)kmeans=KMeans(n_clusters=3,random_state=42)user_stats['cluster']=kmeans.fit_predict(scaled_features)(3)各层统计cluster_summary=user_stats.groupby('cluster').agg(user_count=('user_id','count'),avg_payment=('total_payment','mean')).sort_values('avg_payment',ascending=False).reset_index(drop=True)重命名分层(假设聚类结果按消费降序排列)cluster_summary.index=['高价值','中价值','低价值']cluster_summary['avg_payment']=cluster_summary['avg_payment'].round(2)print(cluster_summary)```四、综合分析题(20分)背景:某零售公司2023年销售数据包含以下字段:`store_id`(门店ID)、`date`(日期)、`product`(产品类型)、`sales`(销售额,万元)、`traffic`(客流量)、`promotion`(是否促销,0/1)。任务:1.提出3个有业务价值的分析问题(如“促销活动对销售额的影响”);2.针对其中一个问题,设计分析步骤(包括数据处理、指标计算、可视化方法);3.假设分析发现“促销期间门店客流量提升25%,但客单价(销售额/客流量)下降15%”,请给出可能的原因及运营建议。答案:1.业务问题示例:(1)不同产品类型的销售贡献及季节性差异;(2)客流量与销售额的相关性,哪些门店存在“高流量低转化”问题;(3)促销活动对不同产品类型的效果差异(如是否仅带动低价产品销量)。2.分析步骤(以问题3为例):(1)数据预处理:转换`date`为日期类型,提取月份或季度;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026七年级上语文咏雪文言文理解
- 2025 六年级地理下册西亚的文化特点课件
- 2026七年级上语文植树的牧羊人情感层次
- 2026八年级上语文首届诺贝尔奖颁发第二课时
- 2026七年级下语文说和做写作手法赏析
- 写施工方案培训(3篇)
- 唐山北站施工方案(3篇)
- 夜市活动策划创意方案(3篇)
- 小院菜地施工方案(3篇)
- 施工方案编写工具(3篇)
- GB/T 25384-2018风力发电机组风轮叶片全尺寸结构试验
- GB/T 19215.1-2003电气安装用电缆槽管系统第1部分:通用要求
- GB/T 18271.3-2017过程测量和控制装置通用性能评定方法和程序第3部分:影响量影响的试验
- 群论及其在晶体学中的应用电子教案课件
- 法语学习《新大学法语三》课件
- 教学用薪酬管理三级0课件
- 淮阴侯列传(使用)课件
- 施工企业会计实务课件
- Q∕SY 1190-2013 事故状态下水体污染的预防与控制技术要求
- GB∕T 9790-2021 金属材料 金属及其他无机覆盖层的维氏和努氏显微硬度试验
- 经济法(第四版)全套教学课件
评论
0/150
提交评论