第四章:NumPy 基础
一 NumPy是什么
NumPy = 数字集装箱 + 超级计算器。
NumPy 就像一台超级计算器,但它的计算对象不是简单的数字,而是成百上千个数字组成的「数字表格」。
假设你要统计全班 50 个同学的身高、体重、成绩,手动计算每个人的总分、平均分会很麻烦。
如果把这些数据整理成一个「表格」,交给 NumPy,它就能一键算出全班的平均身高、最高成绩、体重标准差,还能快速排序、筛选数据。
二 为什么有NumPy
速度快:处理 100 万个数字,NumPy 比普通 Python 快 100 倍。
操作方便:加减乘除、统计计算全都有现成「按钮」(函数)。
省内存:用「集装箱」存储,比「箩筐」更节省空间。
没有 NumPy 时,Python 处理大量数字就像用手工整理仓库:比如要计算 1000 个商品的价格总和,Python 需要用一个「大箩筐」(列表)一个个装起来,再慢慢数;NumPy 则像一台自动叉车,直接把所有商品打包成「集装箱」(数组),用机器快速完成搬运和计算。
三 如何使用NumPy
安装
就像给手机装一个计算器 App(在电脑输入 pip install numpy
)。
导入
每次用计算器前要打开它(在代码里写 import numpy as np
)。
创建数组
把数据装进「集装箱」。
使用功能
按「按钮」计算结果(使用函数)。
四 NumPy和其他的联系
NumPy 是 Python 数据科学领域的地基,其他工具(如 Pandas、Matplotlib)都建立在它之上。
1.NumPy 和 Pandas 的关系
1.NumPy
只能存储统一类型的数据(比如全是数字、或全是文字)。
能快速做批量计算(比如对100万个数统一+1),但无法处理复杂结构。
NumPy 是「集装箱」。
标准化:所有货物必须统一类型(比如只能装苹果或只能装衣服)。
快速装卸:用机械批量搬运,但无法直接分类、统计货物详情。能快速做批量计算(比如对100万个数统一+1),但无法处理复杂结构。
2.Pandas
它的核心数据结构是DataFrame
(类似 Excel 表格),允许不同列有不同的数据类型(比如一列是文字,一列是数字,一列是日期)。
支持按标签筛选、分组统计、合并数据等复杂操作。
但底层计算(比如求和、平均值)依然依赖 NumPy 的集装箱。
Pandas 是「智能仓库管理系统」。
仓库管理系统的特点:
混合存储:可以同时存放苹果、衣服、电子产品。
智能标签:给货物贴分类标签(比如产地、日期、价格)。
高级功能:自动统计库存、筛选过期商品、生成报表。
3.两者关系
NumPy 负责:
快速搬运成箱的货物(比如计算100箱苹果的总重量)。
批量修改价格(比如所有苹果价格打8折)。
Pandas 负责:
记录每件商品的详细信息(名称、价格、保质期)。
回答复杂问题(比如“哪些酸奶下周过期?”、“进口食品的平均利润是多少?”)。
生成可视化报表(库存趋势图、热销商品排名)。
2.NumPy 和 Matplotlib 的关系
NumPy 提供数据,Matplotlib 是「画图工具」:
比如用 NumPy 生成 1000 个随机数,再用 Matplotlib 画成折线图。
3.NumPy 和机器学习的关系
训练 AI 模型就像教机器人做数学题,NumPy 负责快速处理成千上万的练习题(数据)。
五 NumPy 的局限性
所以有了pandas。