当前位置: 首页 > news >正文

数据分析与可视化

数据预处理​

数据预处理是数据分析的基础,直接影响后续分析结果的准确性。​

  • 去重操作:使用drop_duplicates(inplace = False)可以去除数据中的重复记录,再通过reset_index(inplace = True,drop = True)重置索引,保证数据的唯一性和整洁性。​
  • 缺失值处理:通过data.loc[data['sale_count'].isnull()]可定位某列的缺失值记录,若要查看最后一行缺失值记录,可使用tail(1)方法,即data.loc[data['sale_count'].isnull()].tail(1)。​

数据分组与筛选​

合理的分组与筛选能帮助聚焦关键数据。​

  • 按条件筛选:可根据不同条件筛选出所需数据子集,如按照平均单价区间筛选品牌,A=avg_price[(avg_price <= 100) & (avg_price > 0) ].index就筛选出了平均单价在 0-100 元区间的品牌索引。​
  • 分组聚合:使用groupby进行分组后,结合聚合函数可实现数据汇总,例如sum_sale=data.groupby('店名')['销售额'].sum()计算了各品牌的总销售额。​

数据可视化​

可视化能直观呈现数据特征和规律,常用的图表及相关操作如下:​

  • 饼图:适合展示各部分占总体的比例关系。在绘制不同价格区间品牌销售额占比饼图时,需将各区间数据连接起来,由于新版本 pandas 中Series.append()方法已移除,需用pd.concat()替代,如sum_sale_byprice = pd.concat([sum_sale[A].sort_values(), sum_sale[B].sort_values(), sum_sale[C].sort_values(), sum_sale[D].sort_values()])。同时,可通过设置labels、colors、autopct等参数美化图表。​
  • 条形图:适用于比较不同类别数据的大小。绘制不同价格区间平均店铺销售额条形图时,使用plt.bar()函数,通过设置x轴标签、标题、颜色等参数,使图表更清晰易懂,如plt.bar('均价0-100元',np.mean(sum_sale[A]),color = 'grey')。​
  • 子图绘制:使用plt.subplot()可在同一画布上绘制多个子图,便于对比分析,如plt.subplot(1,2,1)和plt.subplot(1,2,2)分别绘制左右两个子图。​
  • 图表优化:可通过plt.figure(figsize = (16,8))设置画布大小,plt.tick_params(labelsize=10)调整刻度标签大小,plt.tight_layout()自动调整子图布局,plt.title()和plt.ylabel()添加标题和坐标轴标签等,提升图表的可读性。​

常见问题及解决方法​

  • 方法过时问题:如遇到 “'Series' object has no attribute 'append'” 错误,是因为新版本 pandas 移除了append()方法,改用pd.concat()来连接多个 Series。​
  • 区间定义优化:对于价格区间的定义,可使用pd.cut()函数使代码更简洁,如price_categories = pd.cut(avg_price, bins=[0, 100, 200, 300, float('inf')], labels=['0-100元', '100-200元', '200-300元', '300元以上'])。​
  • 图表显示问题:当饼图中品牌数量较多时,可能出现标签重叠,可考虑只显示占比较大的品牌,将小品牌合并为 “其他” 类别。
http://www.lryc.cn/news/618154.html

相关文章:

  • 阿里巴巴开源多模态大模型-Qwen-VL系列论文精读(一)
  • Spring Cloud系列—Config配置中心
  • B树索引和B+树索引有什么区别?
  • TinyVue表格重构性能优化详解
  • 从基础编辑器到智能中枢:OpenStation 为 VSCode 注入大模型动力
  • 人工智能+虚拟仿真,助推医学检查技术理论与实践结合
  • MySQL 索引:索引为什么使用 B+树?(详解B树、B+树)
  • 零知开源——基于STM32F407VET6和INA219的功率监测器设计与实现
  • ZKmall开源商城的容灾之道:多地域部署与故障切换如何守护电商系统
  • 【新启航】从人工偏差到机械精度:旋转治具让三维扫描重构数据重复精度提升至 ±0.01mm
  • 解决 HTTP 请求 RequestBody 只能被读取一次的问题
  • 医美产业科技成果展陈中心:连接微观肌肤世界与前沿科技的桥梁
  • 【机器学习】什么是DNN / MLP(全连接深度神经网络, Deep Neural Network / Multilayer Perceptron)?
  • 01. maven的下载与配置
  • http网页部署
  • 微算法科技(NASDAQ:MLGO)开发经典增强量子优化算法(CBQOA):开创组合优化新时代
  • 聆思duomotai_ap sdk适配dooiRobot
  • 基于SpringBoot的课程作业管理系统
  • 【论文阅读】从表面肌电信号中提取神经信息用于上肢假肢控制:新兴途径与挑战
  • iOS 签名证书全生命周期实战,从开发到上架的多阶段应用
  • 数据可视化交互深入理解
  • 论文阅读:Agricultural machinery automatic navigation technology
  • 【论文阅读】RestorerID: Towards Tuning-Free Face Restoration with ID Preservation
  • LeetCode 分割回文串
  • 增加vscode 邮件菜单
  • 论文阅读(九)Locality-Aware Zero-Shot Human-Object Interaction Detection
  • Openlayers基础教程|从前端框架到GIS开发系列课程(24)openlayers结合canva绘制矩形绘制线
  • iOS 签名证书实践日记,我的一次从申请到上架的亲历
  • Docker-10.Docker基础-自定义镜像
  • 医疗矫正流(MedRF)框架在数智化系统中的深度应用