版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年大二python数据分析期末试卷及答案一、单项选择题(每题2分,共20分)1.以下关于Pandas数据结构的描述,错误的是()A.Series是一维数组结构,支持自动对齐B.DataFrame的列可以通过字典方式添加C.使用pd.Series([1,2,3],index=['a','b','c'])创建的Series,其索引类型为RangeIndexD.DataFrame的行索引和列索引可以分别通过.index和.columns属性获取2.现有DataFramedf,若要统计各列缺失值的数量,正确的操作是()A.df.isnull().sum()B.df.dropna().count()C.df.fillna(0).info()D.df.describe().loc['NaN']3.对数组arr=np.array([[1,2,3],[4,5,6],[7,8,9]])执行arr[1:,::2]后,得到的结果是()A.[[4,6],[7,9]]B.[[4,5],[7,8]]C.[[5,6],[8,9]]D.[[2,3],[5,6]]4.以下关于Seaborn可视化库的说法,正确的是()A.绘制箱线图使用sns.lineplot()B.默认主题风格与Matplotlib完全一致C.可以直接接收DataFrame作为数据输入D.散点图无法添加回归趋势线5.对某电商用户消费数据进行分析时,若要计算每个用户的客单价(总消费金额/购买次数),应使用的聚合方法是()A.df.groupby('用户ID').agg({'消费金额':'sum','购买次数':'mean'})B.df.groupby('用户ID').agg(客单价=('消费金额',lambdax:x.sum()/x.count()))C.df.groupby('用户ID').apply(lambdax:x['消费金额'].sum()/x.shape[0])D.df.groupby('用户ID')[['消费金额','购买次数']].sum().eval('客单价=消费金额/购买次数')6.现有时间序列数据df,时间列名为'time'(类型为datetime64),若要提取每个日期的月份信息并添加新列'month',正确的代码是()A.df['month']=df['time'].dt.monthB.df['month']=df['time'].str.split('-').str[1]C.df['month']=pd.to_datetime(df['time']).apply(lambdax:x.month)D.df['month']=df['time'].astype(str).str[5:7].astype(int)7.对数据集进行标准化(Z-score标准化)时,正确的计算公式是()A.(x-x.min())/(x.max()-x.min())B.(x-μ)/σ,其中μ是均值,σ是方差C.(x-μ)/σ,其中μ是均值,σ是标准差D.x/x.sum()8.以下关于相关系数的说法,错误的是()A.Pearson相关系数适用于线性相关分析B.Spearman相关系数基于变量的秩次计算C.相关系数为0表示两个变量完全不相关D.相关系数的取值范围是[-1,1]9.要绘制某城市2020-2024年各月平均气温的变化趋势图,最适合的图表类型是()A.柱状图B.折线图C.散点图D.箱线图10.对DataFrame执行df.duplicated(subset=['A','B'])后,返回的结果是()A.包含所有重复行的DataFrameB.布尔型Series,标记每行是否为重复行(除首次出现外)C.数值型Series,记录每行的重复次数D.包含唯一值的DataFrame二、填空题(每空2分,共20分)1.导入Pandas库的标准写法是__________。2.若要将二维NumPy数组转换为DataFrame,应使用__________函数。3.处理缺失值时,使用__________方法可以删除包含缺失值的行,使用__________方法可以用指定值填充缺失值。4.计算DataFrame中数值列的基本统计量(均值、标准差等),应使用__________方法。5.在Matplotlib中,设置图表标题的函数是__________,设置x轴标签的函数是__________。6.对DataFrame按列排序时,使用__________方法,参数by指定排序列名,参数ascending控制升序/降序。7.提取DataFrame中列名为'price'且值大于100的行,应使用__________。三、编程题(共40分)1.(10分)现有CSV文件"sales_data.csv",包含以下字段:订单ID(order_id,字符串)、客户ID(customer_id,整数)、订单日期(order_date,格式'YYYY-MM-DD')、产品类别(category,字符串)、销售金额(amount,浮点数)、数量(quantity,整数)。请编写代码完成以下操作:(1)读取该文件到DataFrame,命名为sales_df;(2)将order_date列转换为datetime类型;(3)添加新列'month',提取订单日期的月份信息;(4)计算每个客户(customer_id)的总消费金额和总购买数量。2.(15分)某电商平台用户行为数据df包含字段:用户ID(user_id)、行为类型(behavior,取值'点击','收藏','加购','购买')、商品ID(item_id)、时间戳(timestamp,Unix时间戳)。请完成以下分析:(1)将时间戳转换为datetime类型,添加新列'datetime';(2)统计每种行为类型的发生次数,绘制柱状图(要求设置图表标题、坐标轴标签,使用Seaborn库);(3)计算用户的行为活跃时间段(按小时统计行为次数,找出次数最多的3个小时)。3.(15分)现有某品牌新能源汽车销售数据df,包含字段:城市(city)、月份(month,1-12)、销量(sales,整数)、平均气温(temp,浮点数)。请完成:(1)检查销量列是否存在异常值(假设销量不可能超过该城市月均销量的3倍标准差),并标记异常值;(2)按城市分组,计算各城市的月均销量和销量变异系数(变异系数=标准差/均值);(3)绘制各城市月销量与平均气温的散点图,添加总趋势线(使用Seaborn的lmplot)。四、综合分析题(20分)某在线教育平台提供Python、Java、数据分析三门课程,现有用户学习行为数据course_data.csv,字段包括:用户ID(user_id)、课程名称(course,取值'Python','Java','数据分析')、学习时长(duration,分钟,取值0-300)、完成进度(progress,百分比,0-100)、是否购买课程(purchase,0-1变量,1表示购买)。请基于该数据完成以下分析并编写代码:(1)数据清洗:检查并处理缺失值(要求:若某行学习时长或完成进度缺失则删除该行;若课程名称缺失则用众数填充);(2)探索性分析:①统计各课程的用户数量及购买转化率(购买用户数/总用户数);②分析学习时长与完成进度的相关性(计算相关系数并绘制散点图);③比较三门课程用户学习时长的分布(绘制箱线图)。(3)结论推断:根据分析结果,提出提升课程购买转化率的建议。答案一、单项选择题1.C2.A3.A4.C5.D6.A7.C8.C9.B10.B二、填空题1.importpandasaspd2.pd.DataFrame()3.dropna()、fillna()4.describe()5.plt.title()、plt.xlabel()6.sort_values()7.sales_df[sales_df['price']>100]三、编程题1.代码实现:```pythonimportpandasaspd(1)读取文件sales_df=pd.read_csv('sales_data.csv')(2)转换日期类型sales_df['order_date']=pd.to_datetime(sales_df['order_date'])(3)提取月份sales_df['month']=sales_df['order_date'].dt.month(4)客户消费统计customer_stats=sales_df.groupby('customer_id').agg(总消费金额=('amount','sum'),总购买数量=('quantity','sum'))```2.代码实现:```pythonimportpandasaspdimportseabornassnsimportmatplotlib.pyplotasplt(1)时间戳转换df['datetime']=pd.to_datetime(df['timestamp'],unit='s')(2)行为次数统计与绘图behavior_counts=df['behavior'].value_counts().reset_index()behavior_counts.columns=['行为类型','次数']plt.figure(figsize=(8,5))sns.barplot(x='行为类型',y='次数',data=behavior_counts)plt.title('用户行为类型分布')plt.xlabel('行为类型')plt.ylabel('发生次数')plt.show()(3)活跃时间段分析df['hour']=df['datetime'].dt.hourhour_counts=df['hour'].value_counts().sort_index()top_hours=hour_counts.nlargest(3).index.tolist()print(f'用户最活跃的3个小时是:{top_hours}')```3.代码实现:```pythonimportpandasaspdimportnumpyasnpimportseabornassns(1)异常值检测defdetect_outliers(group):mean=group['sales'].mean()std=group['sales'].std()group['is_outlier']=(group['sales']>mean+3std)|(group['sales']<mean-3std)returngroupdf=df.groupby('city').apply(detect_outliers)(2)月均销量与变异系数计算city_stats=df.groupby('city')['sales'].agg(月均销量='mean',销量标准差='std').reset_index()city_stats['变异系数']=city_stats['销量标准差']/city_stats['月均销量'](3)散点图与趋势线sns.lmplot(x='temp',y='sales',data=df,hue='city',ci=None)plt.title('月销量与平均气温关系')plt.xlabel('平均气温(℃)')plt.ylabel('月销量(辆)')plt.show()```四、综合分析题代码实现与分析:```pythonimportpandasaspdimportseabornassnsimportmatplotlib.pyplotaspltfromscipyimportstats(1)数据清洗读取数据course_data=pd.read_csv('course_data.csv')处理缺失值删除学习时长或进度缺失的行course_data=course_data.dropna(subset=['duration','progress'])填充课程名称缺失值(用众数)course_mode=course_data['course'].mode()[0]course_data['course']=course_data['course'].fillna(course_mode)(2)探索性分析①课程用户数与购买转化率course_user=course_data.groupby('course').agg(总用户数=('user_id','nunique'),购买用户数=('purchase',lambdax:x.sum())).reset_index()course_user['购买转化率']=course_user['购买用户数']/course_user['总用户数']②学习时长与进度相关性corr=course_data[['duration','progress
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年保密宣传月保密知识测试真题试卷
- 2026年湖南省邵阳市辅警考试真题解析含答案
- 2026年安徽省马鞍山市重点学校小升初数学考试试题含答案
- 华师大版七年级下册8.3 一元一次不等式组教案设计
- 程序及子程序设计教学设计中职专业课-程序设计基础-计算机类-电子与信息大类
- 班级名片教学设计小学综合实践活动一年级下册浙科技版
- 高中人教版 (2019)第五章 合成高分子第一节 合成高分子的基本方法教案设计
- 二年级语文下册 课文6 21 青蛙卖泥塘第2课时教学设计 新人教版
- 四川省巴中市南江县长赤中学2025-2026学年高一下学期3月月考政治试卷(含答案)
- 第9课 窑土流光教学设计初中美术沪书画版五四学制2024七年级下册-沪书画版五四学制2024
- 中国林业招聘面试题及答案
- 中考英语固定搭配专项提升练习
- 柔性支架单排桩施工方案
- 2025年理赔专业技术职务任职资格考试(核赔师-中高级)题库及答案
- 2025计算机二级wps office真题及答案
- 心理咨询进社区工作方案
- 沈阳建筑安全员培训
- 工程项目钥匙交接记录范本
- 2025四川成都未来医学城招聘8人考试参考题库及答案解析
- 人教版高中生物选择性必修3第1章发酵工程基础过关检测(含解析)
- 烘焙教学课件
评论
0/150
提交评论