Numpy入门:实战演示简单用法与操作
25 浏览量
更新于2024-08-31
收藏 54KB PDF 举报
Numpy是一个强大的Python库,专为科学计算和数据分析设计,其核心是NumPy数组(ndarray),它提供了高效、内存优化的多维数组操作。本文将详细介绍Numpy的简单用法,帮助读者理解和掌握这个工具在编程中的应用。
首先,我们来了解如何创建`ndarray`对象。Numpy提供了多种方式创建数组:
1. **列表转换**:可以使用`np.array()`函数将列表转换为ndarray。例如,列表`[1,2,3,4,5]`转换为:
```
>>> a = [1,2,3,4,5]
>>> np.array(a)
array([1,2,3,4,5])
```
2. **随机数生成**:`np.random.rand()`用于生成指定形状的随机浮点数,如3x4的随机数组:
```
>>> np.random.rand(3,4)
array([[0.16215336, 0.49847764, 0.36217369, 0.6678112 ],
[0.66729648, 0.86538771, 0.32621889, 0.07709784],
[0.05460976, 0.3446629 , 0.35589223, 0.3716221 ]])
```
`np.random.randint()`则生成指定范围内的随机整数:
```
>>> np.random.randint(1,5,size=(3,4))
array([[2,3,1,2],
[3,4,4,4],
[4,4,4,3]])
```
3. **数值初始化**:`np.zeros()`生成全零数组,`np.ones()`生成全一数组,`np.empty()`创建具有未知初始值的数组,但请注意`np.empty()`的行为可能因版本不同而异,不推荐使用。还有针对整数的版本:
```
>>> np.zeros((3,4), int)
array([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]])
>>> np.ones((3,4), int)
array([[1, 1, 1, 1],
[1, 1, 1, 1],
[1, 1, 1, 1]])
```
4. **仿射范围**:`np.arange()`用于生成等差数列,如从2到10,步长为2的数组:
```
>>> np.arange(2, 10, 2)
array([2, 4, 6, 8])
```
接着,我们探讨ndarray的属性查看和操作。使用`ndim`属性获取数组维度,`shape`属性查看数组的形状,以及基本的元素访问和修改:
```
>>> a = [[1,2,3,4,5],[6,7,8,9,0]]
>>> b = np.array(a)
>>> b.ndim # 查看维度
2
>>> b.shape # 查看形状 (2, 5)
# 操作示例
>>> c = b[0] # 提取第一行
>>> c
array([1, 2, 3, 4, 5])
# 修改元素
>>> b[1, 0] = 100
>>> b
array([[ 1, 2, 3, 4, 5],
[100, 7, 8, 9, 0]])
```
以上只是Numpy基本用法的一部分,Numpy还提供了丰富的数学函数、线性代数操作、统计分析等功能,这些都是数据处理和科学计算的强大工具。通过深入学习和实践,你可以将Numpy融入到各种数据处理任务中,提升代码效率和可读性。
2021-12-05 上传
2021-11-18 上传
2019-06-18 上传
2023-11-04 上传
2023-09-16 上传
2023-09-02 上传
2023-07-09 上传
2024-04-21 上传
2023-09-12 上传
weixin_38634037
- 粉丝: 7
- 资源: 958
最新资源
- StarModAPI: StarMade 模组开发的Java API工具包
- PHP疫情上报管理系统开发与数据库实现详解
- 中秋节特献:明月祝福Flash动画素材
- Java GUI界面RPi-kee_Pilot:RPi-kee专用控制工具
- 电脑端APK信息提取工具APK Messenger功能介绍
- 探索矩阵连乘算法在C++中的应用
- Airflow教程:入门到工作流程创建
- MIP在Matlab中实现黑白图像处理的开源解决方案
- 图像切割感知分组框架:Matlab中的PG-framework实现
- 计算机科学中的经典算法与应用场景解析
- MiniZinc 编译器:高效解决离散优化问题
- MATLAB工具用于测量静态接触角的开源代码解析
- Python网络服务器项目合作指南
- 使用Matlab实现基础水族馆鱼类跟踪的代码解析
- vagga:基于Rust的用户空间容器化开发工具
- PPAP: 多语言支持的PHP邮政地址解析器项目