重塑和展平多维数组
本节介绍.flatten()
,ravel()
有两种常用的展平数组的方法:.flatten()
和.ravel()
。
两者之间的主要区别在于,使用ravel()
创建的新数组实际上是对父数组的引用(即“视图”)。这意味着对新数组的任何更改也将影响父数组。因为ravel不创建拷贝,所以它的内存效率很高。
如果从这个数组开始:
>>> x = np.array([[1 , 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
>>> x.flatten()
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
>>> a1 = x.flatten()
>>> a1[0] = 99
>>> print(x) # Original array
[[ 1 2 3 4]
[ 5 6 7 8]
[ 9 10 11 12]]
>>> print(a1) # New array
[99 2 3 4 5 6 7 8 9 10 11 12]
>>> a2 = x.ravel()
>>> a2[0] = 98
>>> print(x) # Original array
[[98 2 3 4]
[ 5 6 7 8]
[ 9 10 11 12]]
>>> print(a2) # New array
[98 2 3 4 5 6 7 8 9 10 11 12]
NumPy入门系列教程:
1 NumPy介绍
8 数组形状和大小
9 重塑array
10 如何将一维array转换为二维array(如何向数组添加新轴)
11 NumPy索引和切片
12 如何从现有数据创建数组
13 数组基本操作
14 广播
15 更有用的数组操作
16 生成随机数
17 获得唯一元素和出现次数
18 变换和重塑矩阵
19 如何反转数组
大家在看
AI安装教程
AI本地安装教程
微软AI大模型通识教程
微软AI大模型通识教程
AI大模型入门教程
AI大模型入门教程
Python入门教程
Python入门教程
Python进阶教程
Python进阶教程
Python小例子200道练习题
Python小例子200道练习题
Python练手项目
Python练手项目
Python从零在线练习题
Python从零到一60题