2. Python 环境准备:版本选择、Anaconda 安装与虚拟环境配置
在开始编写数据质量检查脚本之前,搭建一个稳定、可复现的 Python 开发环境是第一步。本章将指导你完成 Python 版本选择、Anaconda 发行版安装、虚拟环境创建以及核心数据处理库的安装,确保后续所有实战脚本都能在统一的环境中正确运行。
2.1 Python 版本选择策略
Python 目前主要维护 3.9、3.10、3.11、3.12 等大版本。对于数据质量检查脚本,推荐遵循以下选择原则:
| 版本 | 推荐场景 | 注意事项 |
|---|---|---|
| Python 3.10 | 企业级项目、长期稳定维护 | pandas/numpy 生态完全兼容,推荐作为首选 |
| Python 3.11 | 追求性能提升、新语法特性 | 比 3.10 快 10-60%,部分旧库需检查兼容性 |
| Python 3.12 | 尝鲜、新项目启动 | 部分第三方库可能尚未发布预编译包 |
| Python 3.9 | 遗留系统兼容 | 已进入安全维护期,不建议新项目使用 |
推荐选择:本教程统一使用 Python 3.10,兼顾稳定性与生态兼容性。所有代码示例均基于此版本验证。
2.2 安装 Anaconda 发行版
Anaconda 是一个开源的 Python 发行版,内置了 conda 包管理器、Jupyter Notebook、Spyder IDE 以及 1500+ 预编译数据科学包。使用 Anaconda 可以避免手动编译底层库的繁琐过程。
安装步骤:
- 访问 Anaconda 官网(https://www.anaconda.com/products/distribution)下载对应操作系统的安装包(Windows/macOS/Linux)。
- 运行安装程序,建议勾选 "Add Anaconda to my PATH environment variable"(Windows 用户需注意,macOS/Linux 默认不勾选)。
- 安装完成后,打开终端(Terminal)或 Anaconda Prompt,输入
conda --version验证安装。
验证命令:
conda --version
# 输出示例:conda 24.9.2
python --version
# 输出示例:Python 3.12.7(Anaconda 自带基础环境版本)
注意:Anaconda 安装包约 800MB-1GB,包含大量预装库。如果磁盘空间有限,可以考虑安装 Miniconda(仅 conda + Python,约 100MB),后续按需安装库。
2.3 创建独立的虚拟环境
虚拟环境可以为每个项目隔离依赖库,避免不同项目之间的版本冲突。本教程将创建一个名为 data_quality 的专用环境。
创建与激活虚拟环境:
# 创建 Python 3.10 虚拟环境
conda create -n data_quality python=3.10 -y
# 激活环境(Windows)
conda activate data_quality
# 激活环境(macOS/Linux)
source activate data_quality
# 验证当前环境 Python 版本
python --version
# 输出:Python 3.10.16
环境管理常用命令:
conda env list— 查看所有虚拟环境conda deactivate— 退出当前环境conda remove -n data_quality --all— 删除环境
2.4 安装 pandas / numpy / openpyxl 等核心库
激活虚拟环境后,使用 conda 或 pip 安装数据质量检查所需的核心库。推荐优先使用 conda 安装,因为它会自动处理底层依赖(如 BLAS/LAPACK 数值计算库)。
核心库清单:
| 库名 | 版本(推荐) | 用途 |
|---|---|---|
| pandas | ≥ 2.0 | 数据读取、清洗、统计、质量规则检查 |
| numpy | ≥ 1.24 | 数值计算、缺失值处理、数组运算 |
| openpyxl | ≥ 3.1 | 读写 Excel 文件(.xlsx),支持样式与公式 |
| matplotlib | ≥ 3.7 | 数据可视化,绘制质量分布图 |
| seaborn | ≥ 0.12 | 统计图表美化,辅助数据质量报告 |
安装命令:
# 使用 conda 安装(推荐,自动处理依赖)
conda install pandas numpy openpyxl matplotlib seaborn -y
# 或者使用 pip 安装(如果 conda 源中找不到最新版本)
pip install pandas numpy openpyxl matplotlib seaborn
验证安装:
# 在 Python 交互环境中逐条导入
python -c "import pandas; print('pandas', pandas.__version__)"
python -c "import numpy; print('numpy', numpy.__version__)"
python -c "import openpyxl; print('openpyxl', openpyxl.__version__)"
# 预期输出示例:
# pandas 2.2.3
# numpy 1.26.4
# openpyxl 3.1.5
2.5 环境验证与常见问题
完成安装后,建议运行一个简短的脚本验证整个环境是否正常工作:
# test_environment.py
import pandas as pd
import numpy as np
import openpyxl
# 创建一个简单的 DataFrame
df = pd.DataFrame({
'姓名': ['张三', '李四', '王五'],
'年龄': [28, 35, 42],
'分数': [88.5, 92.0, 76.5]
})
print("环境验证通过!")
print(df)
print(f"\npandas 版本: {pd.__version__}")
print(f"numpy 版本: {np.__version__}")
print(f"openpyxl 版本: {openpyxl.__version__}")
常见问题排查:
- ImportError: No module named 'pandas' — 未激活虚拟环境,请先执行
conda activate data_quality。 - OSError: [Errno 13] Permission denied — 在 macOS/Linux 上使用
pip install --user或使用 conda 安装。 - openpyxl 读取 .xls 文件失败 — openpyxl 仅支持 .xlsx 格式,旧版 .xls 需安装
xlrd库。
2.6 环境导出与复现
完成环境配置后,建议导出环境配置文件,方便团队成员或后续部署时快速复现完全一致的环境:
# 导出当前环境的所有包信息
conda env export -n data_quality -f environment.yml
# 查看导出的文件内容(YAML 格式)
cat environment.yml
# 在其他机器上根据文件重建环境
conda env create -f environment.yml
最佳实践:将
environment.yml 文件纳入版本控制(如 Git),与项目代码一起管理。每次更新依赖库后,重新导出并提交更新,确保环境可追溯、可复现。