1. 分析环境搭建:从Python安装到Jupyter Notebook
1.1 Python与IDE选型:为什么我最终选了Anaconda
做电商销售数据分析,第一步不是写代码,而是把环境理清楚。很多人一上来就用系统自带的Python,或者随便装一个最新版,结果后面装pandas、matplotlib的时候各种报错,还没开始分析就消耗了大半耐心。
我自己的经历是:早期图省事直接装了官网的Python 3.8,然后手动用pip装库。装到scipy的时候,编译器报了一堆错,最后发现是Windows系统缺了Microsoft C++ Build Tools。那次折腾了整整一个下午,后来直接换成了Anaconda,所有常用的数据科学库一次性装齐,再也没为环境问题头疼过。
如果你也是刚开始接触数据分析,我的建议很直接:装Anaconda,不要装裸Python。原因有三点:
- Anaconda自带conda包管理器,安装、升级、卸载包都更省心,还能创建独立的虚拟环境;
- 它预装了pandas、NumPy、Matplotlib、Jupyter Notebook等绝大多数数据分析必需的库,省去逐个安装的麻烦;
- 自带的Navigator图形界面,对Windows和macOS用户都很友好,不需要记一堆命令行。
这里顺便提一个很多人忽略的版本细节:Python 3.12刚发布的时候,部分第三方库还没有适配,如果因为兼容性问题导致库装不上,可以考虑用Python 3.10或3.11的Anaconda版本,稳定性更高。
安装流程比较简单:去Anaconda官网下载对应你操作系统的安装包,Windows用户注意选择64位版本,安装时勾选“Add Anaconda to my PATH environment variable”,这一步能让后续在命令行里直接使用conda命令。macOS用户安装完后,在终端里执行conda --version验证安装结果。
说到“python环境变量的配置”,这其实是个经典问题。很多入门者装完Python后,在命令行输入python却提示“不是内部或外部命令”,就是因为没有把Python目录加入系统PATH。Anaconda安装时勾选了PATH选项后,这个问题基本就不会再遇到了。
1.2 核心数据处理库:pandas、NumPy、Matplotlib的分工与安装
电商销售数据分析涉及数据读取、清洗、聚合、统计和可视化几个环节,每个环节都有对应的主力库。用一个厨房来做类比的话:
- NumPy 像是基础的刀具和砧板,提供了多维数组对象和大量数学函数,是底层计算的核心;
- pandas 像是灶台和锅具,它的DataFrame结构可以理解为一张电子表格,对行、列、筛选、分组、合并这些操作的支持非常成熟,数据分析中超过70%的代码都在和DataFrame打交道;
- Matplotlib 像是摆盘和装盘,负责把分析结果画成图表,让人能直观地看出趋势和问题。
安装这些库在Anaconda环境下很简单,在命令行或终端里执行:
bash复制conda install pandas numpy matplotlib
如果你用的是原生Python环境,则用pip安装:
bash复制pip install pandas numpy matplotlib
需要提醒的是,数据分析也经常用到seaborn,它是在Matplotlib基础上做了高级封装,画出的图表更美观。安装命令是conda install seaborn或pip install seaborn,我们可以后面按需再装。
1.3 环境验证与项目目录结构
环境装好之后,别忘了做一次快速验证。在命令行输入jupyter notebook,浏览器会自动打开一个工作界面,这算是Jupyter Notebook环境配置成功的标志。如果命令找不到,可能是Anaconda没有正确加入PATH,可以尝试用python -m jupyter notebook启动。
在开始分析之前,我建议先设计好项目目录结构。虽然不一定每个人都要建一整套复杂目录,但预留一个清晰的骨架,会让整个分析过程更有条理:
code复制ecommerce-analysis/
├── data/ # 存放原始数据和清洗后的数据
│ ├── raw/ # 原始导入文件
│ └── processed/ # 清洗后的文件
├── notebooks/ # Jupyter Notebook脚本文件
├── output/ # 图表和导出结果
└── README.md # 项目说明
实际做项目时,把原始数据放进raw目录,清洗后的数据放进processed目录,图表统一输出到output目录,这样无论是自己后续回溯还是别人接手,都能快速定位文件。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 数据获取:爬数据不是第一步,先想清这三件事
2.1 电商销售数据的常见来源
在写任何爬虫代码之前,有一个问题必须想明白:你手里的数据到底从哪里来?数据获取的合规性和稳定性,远比“能抓到数据”重要。
电商销售数据的常见来源包括:
- 平台导出:淘宝、京东、拼多多等平台的后台,基本都支持导出订单表、商品表、退款表等Excel或CSV文件。这是最正规的途径,也是实际项目中最常用的方式。
- 官方开放API:部分电商平台或数据服务商提供了API接口,经过授权后可以按规则拉取数据。这种方式适合需要长期、定时同步数据的场景。
- 公开数据集和爬虫:公开数据集适合学习和算法竞赛。而通过网络爬虫从公开页面获取信息,需要注意目标网站的robots协议和用户协议,避免涉及个人隐私和商业敏感信息,这在真实项目中是一条不能碰的红线。
我需要明确强调一句:拿爬虫去抓取用户隐私数据或者商业机密数据,是绝对不能碰的事情。 这里讨论的爬虫,只限定在合法的、公开的、非敏感的数据采集场景。
如果你是拿自己的店铺后台数据做分析,最稳妥的方式就是直接导出CSV文件,不需要写爬虫。对于本篇文章,我们假设你已经拿到了一份包含订单号、下单时间、商品名称、商品类目、销售数量、单价、订单金额、收货省份等字段的订单明细表,文件格式为sales_data.csv。这份数据的结构和真实后台导出基本一致。
2.2 用pandas正确读取CSV文件
拿到CSV文件后,第一步是用pandas将其读入内存。这一步看起来简单,但经常有人在这里踩坑,最常见的就是编码问题和中文字段名问题。
pyth复制
