Python numpy.array详解:创建、读取与操作
需积分: 37 190 浏览量
更新于2024-09-08
收藏 1.04MB PDF 举报
"numpy.array函数简介"
在Python的科学计算库Numpy中,`numpy.array`是核心的构造函数,用于创建多维数组,也被称为数组对象或 Ndarray。Ndarray 是一种高效的数据结构,它能够存储同类型的元素,包括整数、浮点数、复数甚至字符串。`numpy.array` 函数允许我们以多种方式创建数组,并提供了丰富的操作和功能。
### 创建数组
1. **基础创建**:通过列表或其他序列创建数组,如 `np.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]], dtype=np.float)` 创建了一个3x4的浮点数数组。
2. **arange**:使用 `np.arange(start, stop, step)` 创建等差序列,例如 `np.arange(0, 1, 0.1)` 生成0到1(不包含1)之间,步长为0.1的数组。
3. **linspace**:`np.linspace(start, stop, num)` 创建等差序列,其中`num`是元素个数。如 `np.linspace(0, 1, 5)` 返回五个均匀间隔的点。
4. **logspace**:`np.logspace(start, stop, num)` 生成对数等比序列,如 `np.logspace(0, 1, 5)` 产生10的幂次方的等比序列。
5. **fromstring**:使用字符串创建数组,`np.fromstring(s, dtype=np.int8)` 把字符串`s`转换成整型数组。
6. **fromfunction**:`np.fromfunction(function, shape)` 根据给定的函数和形状生成数组。例如,`np.fromfunction(func2, (9, 9))` 用函数`func2`的值填充9x9的数组。
7. **ones** 和 **zeros**:`np.ones(shape)` 和 `np.zeros(shape)` 分别创建全1和全0的数组,如 `np.ones((2,2))` 和 `np.zeros((2,2))`。
### 数组属性
- **dtype**:数组元素的数据类型,如 `np.array(..., dtype=np.float)` 指定为浮点型。
- **shape**:数组的维度和大小,可以通过 `.shape` 属性访问。例如,一个3x4数组的`.shape`为 `(3, 4)`。可以通过 `.reshape(new_shape)` 改变数组的形状,但需保证元素总数不变。
### 数组操作
- **索引和切片**:数组的索引和切片操作与Python列表类似,但多维数组支持更复杂的切片,如 `arr[1:3, 2:]`。
- **布尔索引**:可以使用布尔数组或条件表达式(如 `arr > 0.5`)来选择满足条件的元素。
### 其他知识点
- **内存共享**:通过切片或方法如 `reshape` 创建的新数组与原始数组共享内存,这意味着修改其中一个会影响另一个。
- **广播机制**:当进行数组运算时,如果两个数组的形状不匹配,Numpy会尝试“广播”较小的数组以适应较大的数组,以便进行计算。
- **ufuncs**:通用函数(Uniformed Function),如加法、乘法等,可以应用于整个数组,实现高效的向量化操作。
`numpy.array` 是Numpy库的基础,它提供了一种高效的方式来存储和处理大量数据,结合其他Numpy函数和方法,可以进行复杂的数值计算和数据分析。掌握 `numpy.array` 的使用对于任何需要处理大量数据的Python程序员都是至关重要的。
2021-01-07 上传
2020-09-19 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
初上花样年华
- 粉丝: 18
- 资源: 19
最新资源
- cygwin,spin,xspin安装全过程记录
- 网络工程师学习笔记(数据通信基础知识)
- Cortex-M3权威指南
- A Simple Methodology for Applying UML to Database Design
- 高质量C/C++编程
- 嵌入式 C/C++语言精华文章集锦
- vs.net使用技巧
- 最小重量机器设计问题
- envi4.5 授权文件 license 绝对可用
- Struts快速学习指南
- C+语言中的指针和内存泄漏
- wimax技术的发展与展望
- struts in action 06
- 计算机故障速查手册(不可缺少的手边工具书)
- 华为_FPGA设计高级技巧Xilinx篇.pdf
- cobol课件 ibm主机系列