Python 数据分析三大库:NumPy + Pandas + Matplotlib

一、整体定位

  • NumPy :数值计算底层,数组、矩阵、数学运算,是 Pandas 和 Matplotlib 的基础
  • Pandas :表格数据分析,处理 Excel/CSV、清洗、筛选、统计、分组
  • Matplotlib :数据可视化,画折线、柱状、饼图、直方图等

一、NumPy 核心

作用

高效处理同类型数值数组,运算比原生列表快几十倍,适合矩阵、数值计算。

常用功能

  1. 创建数组

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)
  1. 数组属性
  • 形状:arr.shape
  • 维度:arr.ndim
  • 类型:arr.dtype
  1. 切片、矩阵运算、广播机制
  2. 常用统计: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

常用图表

  1. 折线图:趋势变化

python

运行

复制代码
x = [1,2,3,4]
y = [10,20,15,30]
plt.plot(x,y)
plt.show()
  1. 柱状图:对比大小

python

运行

复制代码
plt.bar(x,y)
plt.show()
  1. 饼图:占比

python

运行

复制代码
plt.pie(y,labels=x)
plt.show()
  1. 直方图:数据分布

python

运行

复制代码
plt.hist(y)
plt.show()

通用配置

python

运行

复制代码
plt.title("标题")
plt.xlabel("X轴")
plt.ylabel("Y轴")
plt.legend()   # 图例
plt.grid()     # 网格

四、三者关系一句话

  1. NumPy 提供底层数值数组
  2. Pandas 基于 NumPy 做表格数据处理
  3. Matplotlib 把 Pandas/NumPy 数据可视化出图
相关推荐
BK贝壳43 分钟前
亿级用户签到位图选型复盘:用 bool-hybrid-array 扛冷启动打卡,也把它和 Roaring/Redis 的边界测清楚了
数据结构·python·性能优化·numpy
2601_966949652 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
在世修行7 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
2601_962885727 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
打工仔折腾 AI7 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
信誓旦旦的程序猿8 小时前
【Python量化实战宝典 #21】北向资金跟随手册:聪明钱择时信号(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
严谨的麻辣烫8 小时前
静态 ISP 代理请求超时怎么排查?Python 与 curl 实战
python·http·requests·1024程序员节·网络排障
SelectDB9 小时前
从 StarRocks 走向 Apache Doris:如何实现引擎平滑替换与架构升级?
大数据·数据库·数据分析
KeepRobots10 小时前
11-01 温哥华不回拨:用 60 行 Python 查你的工单系统会不会差一小时(KeepRobots 工程笔记)
python
xiao77mwq10 小时前
你以为 OCR 慢?实测 81.3 s 里全是故障代价:如何把「定格态」消掉,让耗时从 6.5 s 到 13 倍差距显出原形
python