numpy教程05---ndarray的高级操作
发布网友
发布时间:2024-10-22 22:32
我来回答
共1个回答
热心网友
时间:2024-11-01 02:34
欢迎关注公众号【Python开发实战】, 获取更多内容!工具-numpy
numpy是使用Python进行数据科学的基础库。numpy以一个强大的N维数组对象为中心,它还包含有用的线性代数,傅里叶变换和随机数函数。
导入numpy
在ndarray的迭代与常规Python数组的迭代非常相似。但是需要住的是,*ndarray的迭代是相对于第一个轴完成的。
输出:
输出:
输出:
如果想要迭代ndarray中的所有元素,需要对ndarray的flat属性进行迭代。
输出:
将不同的ndarray堆叠在一起通常很有用。numpy提供了几个函数来实现堆叠。介绍堆叠函数之前,先创建几个ndarray。
输出:
输出:
输出:
vstack可以垂直堆叠ndarray,但是要满足需要堆叠的ndarray,除了垂直轴以外,即在水平轴上要具有相同的形状。
输出:
输出:
hstack可以水平堆叠ndarray。但是要满足需要堆叠的ndarray在垂直轴上具有相同的形状。
输出:
输出:
输出:
concatenate可以沿给定的现有轴进行堆叠, 故vstack相当于调用axis=0的concatenate, hstack相当于调用axis=1的concatenate。
输出:
输出:
输出:
输出:
stack是沿着新轴进行堆叠,因此需要堆叠的ndarray必需具有相同的shape.
输出:
输出:
输出:
拆分ndarray与堆叠相反。
输出:
vsplit可以垂直拆分ndarray, 下面的例子是将r垂直分成三等份。
输出:
输出:
输出:
hsplit可以水平拆分ndarray。
输出:
输出:
split可以沿给定的现有轴进行拆分,调用axis=0的split相当于调用vsplit,调用axis=1的split相当于调用hsplit。
输出:
转置ndarray
transpose函数是在ndarray的数据上创建一个新的视图,并按照给定顺序对轴排列。
输出:
现在创建一个ndarray,将轴0、1、2(深度、高度、宽度)重新排列为1、2、0(高度、宽度、深度)。
输出:
输出:
默认情况下,transpose会翻转轴的顺序。
输出:
输出:
numpy提供了一个方便的swapaxes来交换两个轴, 例如,创建一个深度和高度交换的ndarray。
输出:
输出: