游乐游手机版
首页/AI教程/文章详情

NumPy常用函数详解:Python数据分析进阶教程

时间:2026-06-14 14:39
在 Python 的数值计算与数据处理领域,NumPy 几乎成为每位开发者不可或缺的核心库。本文将重点解析七大高频 NumPy 函数——np arange()、np linspace()、np zeros() 与 np ones()、np sum()、np mean(),以及 np max() 和

在 Python 的数值计算与数据处理领域,NumPy 几乎成为每位开发者不可或缺的核心库。本文将重点解析七大高频 NumPy 函数——np.arange()np.linspace()np.zeros()np.ones()np.sum()np.mean(),以及 np.max()np.min()。这些函数在数组生成、元素求和、均值计算与极值查找等任务中扮演着关键角色,熟练掌握它们能显著加速数据处理的效率。

1、np.arange()

概念:

用于生成一个等差数列,功能与 Python 内置的 range() 类似,但其返回结果是 NumPy 数组对象。你可以灵活设定起始数值、终止数值以及步长间隔。

关键点:

该函数的标准调用格式为 np.arange(start, stop, step, dtype=None),其中 start 值会被包含在数组内,stop 值则不被包含,step 表示步长大小,dtype 用于指定数据类型。若省略 start,默认从 0 开始;若省略 step,默认步长为 1。

注意点:

请牢记 stop 参数对应的数值不会出现在最终数组中,这一规则与 range() 完全一致,避免因混淆导致数据边界错误。

举例:

import numpy as np

# 从 0 开始,步长 2,直到小于 10
arr = np.arange(0, 10, 2)
print(arr)   # 输出:[0 2 4 6 8]

2、np.linspace()

概念:

在指定的闭区间或半开区间内生成一组均匀分布的数值序列。你可以自主设定起始点、终止点以及序列的元素数量,特别适用于绘制等间距坐标点或采样场景。

关键点:

函数格式为 np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)。num 控制元素总数,endpoint 决定是否包含 stop 值(默认包含),将 retstep 设为 True 可以同时获得计算出的步长间距。

注意点:

当 endpoint=True 时,stop 值会作为数组的最后一个元素,这一行为与 arange 截然不同,实际使用中请根据需求仔细区分。

举例:

import numpy as np

# 在 0 到 10 区间内均匀生成 5 个元素
arr = np.linspace(0, 10, 5)
print(arr)   # 输出:[ 0.   2.5  5.   7.5 10. ]

3、np.zeros() 和 np.ones()

概念:

np.zeros() 用于构建指定形状的全零数组,np.ones() 则生成全一数组。它们通常被用来初始化数据容器、占位或作为算法迭代的起点。

关键点:

函数格式分别为 np.zeros(shape, dtype=float, order='C')np.ones(shape, dtype=float, order='C')。shape 可以是整数(一维)或元组(多维),dtype 设定元素数据类型(默认 float),order 决定内存排列方式('C' 行优先,'F' 列优先)。

注意点:

对于二维数组,shape 必须以元组形式给出,例如 (3, 4) 代表 3 行 4 列。如果写成 3,4 不带括号,会导致语法错误,务必留意写法规范。

举例:

import numpy as np

zero_arr = np.zeros((3, 4))
print(zero_arr)   # 3行4列的全零数组

one_arr = np.ones((2, 2))
print(one_arr)    # 2行2列的全一数组

4、np.sum()

概念:

用于计算数组中所有元素的总和,同时支持沿指定轴(维度)进行局部求和操作。这是数据聚合与统计中最基础也最常用的功能之一。

关键点:

调用格式为 np.sum(a, axis=None, ...)。axis=None 时对全部元素求和;axis=0 对二维数组按列求和(即沿着行方向压缩);axis=1 按行求和(沿着列方向压缩)。

注意点:

axis 的取值必须小于数组的维度数,否则会触发 AxisError。此外,要注意数据类型的变化,整数数组在求和时若结果超出范围,默认会被提升为 float64 类型。

举例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(np.sum(arr))         # 总和:21
print(np.sum(arr, axis=0)) # 按列求和:[5 7 9]
print(np.sum(arr, axis=1)) # 按行求和:[ 6 15]

5、np.mean()

概念:

用于计算数组中所有元素的算术平均值,同样支持沿指定轴进行统计。与 sum 函数配合使用,可以快速获取数据集的中心趋势指标。

关键点:

函数格式为 np.mean(a, axis=None, ...),参数含义与 sum 基本一致。该函数默认返回浮点数结果。

注意点:

如果数组中含有 NaN 值,mean 会直接返回 NaN(除非改用 np.nanmean)。对于整数类型数组,mean 会自动将结果转换为 float 类型,这一设计让日常使用更加便捷。

举例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.mean(arr))   # 平均值:3.0

6、np.max() 和 np.min()

概念:

分别用于找出数组中的最大值与最小值,既可以对整个数组进行全局查找,也可以沿指定轴进行局部极值分析。这是数据探索与预处理阶段的基础操作。

关键点:

函数格式为 np.max(a, axis=None, ...)np.min(a, axis=None, ...),axis 参数的使用方式与 sum 完全一致。

注意点:

使用 axis 参数时,请确保取值在有效维度范围内。对于空数组,这两个函数会直接抛出错误,建议在调用前预先检查数组是否为空。

举例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(np.max(arr))         # 整体最大值:6
print(np.min(arr, axis=1)) # 按行最小值:[1 4]

通过系统掌握并灵活运用这些常用的 NumPy 函数,你能够在数值计算与日常数据处理的场景中大幅提升效率,构建更加稳健的 Python 数据分析流程。

——The END——

来源:https://blog.csdn.net/imewe/article/details/148655108
上一篇Self Ask机制深度解析:AI智能体技术框架进阶实战教程 下一篇具身人工智能Embodied AI技术详解与未来趋势
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
Qoder全栈AI编辑器从入门到实战,实现AI自主编程
AI教程 · 2026-07-01

Qoder全栈AI编辑器从入门到实战,实现AI自主编程

AI编程工具的新高度:Qoder全栈编辑器,从日常辅助到项目一键交付 如果说当前AI编程工具还停留在“帮忙补全单行代码”的阶段,那Qoder的出现,基本上算是把赛道直接拉到了“自主全栈开发”的级别。说得更直白些,现在市面上大多数AI助手能做到的,无非是在你写SQL时补个字段名,或者在你写Vue时帮忙

Data Agent推荐:企业智能分析决策平台选型指南
AI教程 · 2026-07-01

Data Agent推荐:企业智能分析决策平台选型指南

2025年已被业界公认为AI Agent规模化落地的元年,一组数据很能说明问题:全球79%的组织已启动部署,市场规模迅速攀升至232亿元。不过,随着IDC《中国AI Agent市场概览2025Q3》报告的出炉,企业级应用正经历一场深刻的范式转移——从早期的“工具化”辅助,全面迈入追求实际业务价值的“

分析Agent选型必读:三大黄金标准与主流产品解析
AI教程 · 2026-07-01

分析Agent选型必读:三大黄金标准与主流产品解析

先看几个关键数字:2026年,企业级AI智能体市场规模预计突破449亿元,年增速高达200%以上。市场热度持续攀升,但实际落地进展如何?Gartner的调研数据揭示了一个事实——目前仅有17%的企业真正部署了AI智能体,超过六成仍处于“观望”或“试点”阶段。换言之,这场变革才刚刚拉开帷幕。面对“选哪

公司用AI筛简历,他写AI帮你反选公司
AI教程 · 2026-07-01

公司用AI筛简历,他写AI帮你反选公司

公司目前已经在使用 AI 进行简历初筛,但许多求职者依然在手动复制岗位链接、反复修改简历、用 Excel 记录进度。一位名叫 santifer 的开发者将这一繁琐过程进行了系统化工程——他在 Claude Code 上搭建了一套求职自动化系统,亲自评估了 740 多个职位、生成了 100 多份定制化

别被Demo欺骗:Agent自主规划LLM根本没懂
AI教程 · 2026-07-01

别被Demo欺骗:Agent自主规划LLM根本没懂

2025–2026 年,AI Agent 领域其实有一个心照不宣的事实——市面上那些号称“具备规划能力”的 Agent,其 Planner 模块十之八九只是将 CoT(思维链)的提示模板套进一个 while 循环,再贴上一张“Planning”的标签。今天我们就来彻底拆解:首先厘清什么才是真正的“规