一、安装Python及数据分析基础环境
在Debian系统上开展Python数据分析前,需先配置核心工具链。首先更新系统包列表并升级现有软件包,确保系统稳定性:
sudo apt update && sudo apt upgrade
接着安装Python3及pip(Python包管理工具),这是后续安装数据分析库的基础:
sudo apt install python3 python3-pip
为避免不同项目间的依赖冲突,建议使用虚拟环境(如venv)隔离项目环境。
二、安装核心数据分析库
数据分析需依赖以下常用Python库,可通过pip安装:
pip3 install pandas numpy matplotlib seaborn scikit-learn
若需要交互式开发环境,可额外安装Jupyter Lab:
pip3 install jupyterlab
三、数据分析核心流程
通过Pandas读取各类数据源(如CSV、Excel、SQL数据库),将数据加载至Python环境中:
import pandas as pd
# 读取CSV文件
data = pd.read_csv('data.csv')
# 读取Excel文件
# data = pd.read_excel('data.xlsx')
数据清洗是数据分析的关键步骤,需处理以下问题:
data.isnull().sum()),并通过均值、中位数或众数填充(如年龄列用均值填充):data['Age'].fillna(data['Age'].mean(), inplace=True)
data.drop_duplicates(inplace=True));data['Gender'] = data['Gender'].map({'Male': 0, 'Female': 1})
通过描述性统计快速了解数据特征(如均值、标准差、分位数):
desc_stats = data.describe()
print(desc_stats)
查看数据基本信息(如列名、数据类型、非空值数量):
print(data.info())
使用Seaborn绘制箱线图,分析不同类别(如性别)下某变量(如年龄)的分布差异:
import seaborn as sns
import matplotlib.pyplot as plt
sns.boxplot(x='Sex', y='Age', data=data)
plt.title('Age Distribution by Gender')
plt.show()
通过可视化工具直观展示数据规律:
tips = sns.load_dataset('tips')
sns.scatterplot(x='total_bill', y='tip', data=tips)
plt.title('Total Bill vs Tip')
plt.show()
plt.figure(figsize=(10, 6))
sns.barplot(x='Population', y='State', data=data.sort_values('Population', ascending=False))
plt.xlabel('Population')
plt.ylabel('State')
plt.title('Population by State')
plt.show()
使用Scikit-learn构建预测模型(以线性回归为例):
from sklearn.model_selection import train_test_split
X = data[['Age', 'Income']] # 特征变量
y = data['Target'] # 目标变量
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X_train, y_train)
from sklearn.metrics import r2_score
y_pred = model.predict(X_test)
print(f'R² Score: {r2_score(y_test, y_pred)}')
四、进阶工具推荐
jupyter lab命令启动交互式环境,支持代码、文本、图表混合编辑,适合数据探索与报告撰写;