NumPy 教程 之 Numpy 数组操作 12

简介: 这段 NumPy 教程介绍了数组操作,包括修改形状、翻转、维度调整、连接与分割等。特别聚焦于改变数组维度的功能,如 `broadcast_to` 可以将数组扩展至新的形状,返回一个只读视图,如果形状不符合广播规则,则会引发 `ValueError`。示例展示了如何将一个形状为 `(1,4)` 的数组广播为 `(4,4)` 形状。

NumPy 教程 之 Numpy 数组操作 12

Numpy 数组操作

Numpy 中包含了一些函数用于处理数组,大概可分为以下几类:

修改数组形状
翻转数组
修改数组维度
连接数组
分割数组
数组元素的添加与删除

修改数组维度

维度 描述
broadcast 产生模仿广播的对象
broadcast_to 将数组广播到新形状
expand_dims 扩展数组的形状
squeeze 从数组的形状中删除一维条目

numpy.broadcast_to

numpy.broadcast_to 函数将数组广播到新形状。它在原始数组上返回只读视图。 它通常不连续。 如果新形状不符合 NumPy 的广播规则,该函数可能会抛出ValueError。

numpy.broadcast_to(array, shape, subok)
实例
import numpy as np

a = np.arange(4).reshape(1,4)

print ('原数组:')
print (a)
print ('\n')

print ('调用 broadcast_to 函数之后:')
print (np.broadcast_to(a,(4,4)))

输出结果为:

原数组:
[[0 1 2 3]]

调用 broadcast_to 函数之后:
[[0 1 2 3]
[0 1 2 3]
[0 1 2 3]
[0 1 2 3]]

目录
相关文章
|
3月前
|
索引 Python
NumPy 教程 之 Numpy 数组操作 28
NumPy 提供多种数组操作功能,包括修改形状、翻转、连接和分割等。本教程重点介绍元素的添加与删除,如使用 `resize`、`append`、`insert` 和 `delete` 函数。其中 `numpy.insert` 可在指定索引前插入值,支持标量或数组插入。示例展示了不同情况下 `insert` 的使用方法,包括不指定轴时的数组扁平化插入,以及沿特定轴进行广播插入。
36 2
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 20
NumPy 提供了多种数组操作功能,其中包括分割数组。`numpy.split` 可以将数组沿指定轴分为多个子数组。使用格式为 `numpy.split(ary, indices_or_sections, axis)`,其中 `ary` 是待分割的数组,`indices_or_sections` 指定分割方式,`axis` 设定分割方向,默认为 0(水平)。另有 `hsplit` 和 `vsplit` 专门用于水平和垂直分割。
28 4
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 21
Numpy 教程之数组操作21:介绍如何使用 `numpy.split` 分割数组。此函数可按指定位置或等分数将数组分成子数组。参数包括待分割的数组 `ary`、分割点或份数 `indices_or_sections` 及轴向 `axis`。示例展示了将一维数组 `[0 1 2 3 4 5 6 7 8]` 平均分成三份及按 `[4, 7]` 位置分割的方法。
36 2
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 29
NumPy 提供多种数组操作函数,如修改形状、翻转和连接等。本教程重点介绍元素的添加与删除,包括 `resize`、`append`、`insert` 和 `delete` 函数。`numpy.delete` 用于从数组中删除指定元素,参数包括 `arr`(输入数组)、`obj`(待删元素)和 `axis`(删除轴)。示例展示了如何使用 `numpy.delete` 删除一维和二维数组中的元素。
34 4
|
3月前
|
数据挖掘 索引 Python
NumPy 教程 之 Numpy 数组操作 30
展示了如何使用`numpy.unique`去除数组中的重复值,并获取额外信息如索引和计数。示例中,数组`a`的重复值被去除,打印出唯一值及其在原数组中的首次出现索引、对应原值的索引以及各唯一元素的出现次数。这有助于数据分析时简化数据集。
32 2
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 11
本教程介绍Numpy中的数组操作,重点在于修改数组维度的方法,包括广播(`broadcast`)、扩展(`expand_dims`)和压缩(`squeeze`)维度等。通过实例展示了如何使用`numpy.broadcast`模拟广播机制,以及如何手动实现两个数组间的广播相加操作,并得到与Numpy内置广播相同的结果。
41 8
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 27
Numpy数组操作教程27,涵盖数组的修改、翻转、连接、分割及元素增删。重点介绍`numpy.append`函数,用于向数组末尾添加元素。参数`arr`为原数组,`values`为待添加值,需与`arr`形状匹配(除添加轴外),`axis`定义添加方向,默认为None时返回一维数组。示例展示了不同轴向的添加效果。
28 1
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 24
本教程介绍Numpy中分割数组的方法,特别是`vsplit`函数,它能将数组沿垂直轴分为多个子数组。示例代码展示了如何使用`vsplit`将一个4x4的数组分为两个2x4的子数组,适用于需要按行分割数据的场景。
19 1
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 19
本教程介绍Numpy数组操作,涵盖数组形状修改、翻转、维度调整、连接与分割以及元素增删等关键技能。重点讲解`numpy.vstack`函数,该函数可将多个数组沿垂直方向堆叠。示例展示了如何使用`vstack`将两个2D数组堆叠成一个更大的数组,适用于数据整合场景。
32 2
|
3月前
|
Python
NumPy 教程 之 Numpy 数组操作 13
本教程介绍 NumPy 中的数组操作,覆盖了修改数组形状、翻转、连接与分割等技巧。重点讲解了如何使用 `numpy.expand_dims` 函数在指定位置新增轴以扩展数组维度,通过示例展示了 `expand_dims` 的用法及其对数组形状的影响。
30 4