一、整体定位
- NumPy :数值计算底层,数组、矩阵、数学运算,是 Pandas 和 Matplotlib 的基础
- Pandas :表格数据分析,处理 Excel/CSV、清洗、筛选、统计、分组
- Matplotlib :数据可视化,画折线、柱状、饼图、直方图等
一、NumPy 核心
作用
高效处理同类型数值数组,运算比原生列表快几十倍,适合矩阵、数值计算。
常用功能
- 创建数组
python
运行
import numpy as np
arr = np.array([1,2,3,4])
# 全0、全1、等差数组
np.zeros(5)
np.ones((2,3))
np.linspace(1,10,5)
- 数组属性
- 形状:
arr.shape - 维度:
arr.ndim - 类型:
arr.dtype
- 切片、矩阵运算、广播机制
- 常用统计:
np.mean()均值、np.sum()求和、np.max()最大值、np.min()最小值
二、Pandas 核心(数据分析主力)
两大核心结构:
- Series:一维带索引数组
- DataFrame:二维表格(Excel 一样)
1. 读写数据
python
运行
import pandas as pd
df = pd.read_csv("数据.csv")
# df = pd.read_excel("数据.xlsx")
2. 基础查看
python
运行
df.head() # 前5行
df.tail() # 后5行
df.info() # 结构、缺失值
df.describe() # 统计摘要
df.columns # 列名
3. 数据筛选
python
运行
# 选列
df["姓名"]
# 条件筛选
df[df["成绩"] > 60]
4. 缺失值处理
python
运行
df.dropna() # 删除空值
df.fillna(0) # 填充空值
5. 分组聚合
python
运行
# 按班级分组求平均分
df.groupby("班级")["成绩"].mean()
6. 新增列、排序、去重
python
运行
df["总分"] = df["语文"] + df["数学"]
df.sort_values("成绩",ascending=False)
df.drop_duplicates()
三、Matplotlib 核心(画图)
基础导入
python
运行
import matplotlib.pyplot as plt
常用图表
- 折线图:趋势变化
python
运行
x = [1,2,3,4]
y = [10,20,15,30]
plt.plot(x,y)
plt.show()
- 柱状图:对比大小
python
运行
plt.bar(x,y)
plt.show()
- 饼图:占比
python
运行
plt.pie(y,labels=x)
plt.show()
- 直方图:数据分布
python
运行
plt.hist(y)
plt.show()
通用配置
python
运行
plt.title("标题")
plt.xlabel("X轴")
plt.ylabel("Y轴")
plt.legend() # 图例
plt.grid() # 网格
四、三者关系一句话
- NumPy 提供底层数值数组
- Pandas 基于 NumPy 做表格数据处理
- Matplotlib 把 Pandas/NumPy 数据可视化出图