数据分析-应用

更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
给定:CSV 文件 salesdata.csv,按要求完成以下任务: 数据处理代码: import pandas as pd import matplotlib.pyplot as plt from matplotlib import rcParams # 设置中文字体为黑体 rcParams["font.family"] = "SimHei" salesdata = pd.read_csv("salesdata.csv") # 构建销售额列 salesdata["销售额"] = salesdata["销售量/个"] * salesdata["销售价格/元"] # 将订单时间列转换为时间数据类型 salesdata["订单时间"] = pd.to_datetime(salesdata["订单时间"]) # 对时间数据进行操作,提取年月信息并转换为字符串类型 salesdata["年-月"] = salesdata["订单时间"].dt.to_period("M").astype(str) # 筛选商品类别为类别 A 的数据 data1 = salesdata[salesdata["商品类别"] == "类别 A"] # 按 年-月 分组 data2 = data1.groupby("年-月") # 对分组后数据分别执行聚合:销售额求和、销售量取最大值、销售价格取最小值 data3 = data2.agg({"销售额": "sum", "销售量/个": "max", "销售价格/元": "min"}).reset_index() plt.figure(figsize=(10, 5)) plt.plot(pd.to_datetime(data3["年-月"]), data3["销售额"]/8000, label="销售额") plt.plot(pd.to_datetime(data3["年-月"]), data3["销售量/个"], label="销售量/个") plt.plot(pd.to_datetime(data3["年-月"]), data3["销售价格/元"], label="销售价格/元") plt.title("salesdata.csv") plt.legend(fontsize=12, loc="upper left") # 设置 x 轴刻度标签["2020-01", "2021-01", "2022-01", "2023-01", "2024-01"],旋转 45 度,字体大小 12 plt.xticks(["2020-01", "2021-01", "2022-01", "2023-01", "2024-01"], rotation=45, fontsize=12) plt.show()【缺少答案,请补充】
给定:CSV 文件 bookdata.csv,按要求完成以下任务: import pandas as pd book_data = pd.read_csv("bookdata.csv") # 计算每列缺失值个数 missing_count_per_column = book_data.isnull().sum() # 删除缺失值 book_data = book_data.dropna() # 重复值检测 duplicate_rows = book_data[book_data.duplicated()] if not duplicate_rows.empty: print("以下行检测到重复值") print(duplicate_rows) else: print("未检测到重复值") # 书籍价格处理,删除“¥” book_data["价格/元"] = book_data["价格/元"].replace("[^d.]", "", regex=True).astype(float) # 统一书籍出版时间格式和数据类型 book_data["出版时间"] = book_data["出版时间"].str.replace("/", "-", regex=False) book_data["出版时间"] = book_data["出版时间"].str.lstrip("-") import matplotlib.pyplot as plt from matplotlib import rcParams rcParams["font.family"] = "SimHei" bins = [0, 25, 50, 100, 150, 200, 500, float('inf')] labels = ['0~25', '25~50', '50~100', '100~150', '150~200', '200~500', '500 及以上'] # 将价格分类到定义的区间 book_data["价格区间"] = pd.cut(book_data['价格/元'], bins=bins, labels=labels, right=False) # 计算每个价格区间的书籍数量 price_distribution = book_data['价格区间'].value_counts().sort_index() plt.figure(figsize=(5, 4), dpi=1080) # 绘制柱形图 plt.bar(price_distribution.index, price_distribution.values, color='#1E90FF') plt.title('书籍价格区间分布柱形图') plt.xlabel('价格区间') plt.ylabel('书籍数量/本') plt.savefig('书籍价格区间分布柱形图.png', bbox_inches='tight') import seaborn as sns selected_columns = ["价格/元","总评论数/条","长评数/条","好评数/条","中评数/条","差评数/条","图片评论数/条","评论平均得分/分","书籍评分/分"] selected_data = book_data[selected_columns] # 计算相关系数矩阵 book_data_corr = selected_data.corr() plt.figure(figsize=(5, 4), dpi=1080)【缺少答案,请补充】
1