- NumPy 教程
- NumPy - 首页
- NumPy - 简介
- NumPy - 环境配置
- NumPy 数组
- NumPy - ndarray 对象
- NumPy - 数据类型
- NumPy 数组的创建和操作
- NumPy - 数组创建函数
- NumPy - 数组操作
- NumPy - 从现有数据创建数组
- NumPy - 从数值范围创建数组
- NumPy - 数组迭代
- NumPy - 数组重塑
- NumPy - 数组拼接
- NumPy - 数组堆叠
- NumPy - 数组分割
- NumPy - 数组扁平化
- NumPy - 数组转置
- NumPy 索引和切片
- NumPy - 索引和切片
- NumPy - 高级索引
- NumPy 数组属性和运算
- NumPy - 数组属性
- NumPy - 数组形状
- NumPy - 数组大小
- NumPy - 数组步长
- NumPy - 数组元素大小
- NumPy - 广播
- NumPy - 算术运算
- NumPy - 数组加法
- NumPy - 数组减法
- NumPy - 数组乘法
- NumPy - 数组除法
- NumPy 高级数组运算
- NumPy - 交换数组轴
- NumPy - 字节交换
- NumPy - 副本和视图
- NumPy - 元素级数组比较
- NumPy - 数组过滤
- NumPy - 数组连接
- NumPy - 排序、搜索和计数函数
- NumPy - 数组搜索
- NumPy - 数组并集
- NumPy - 查找唯一行
- NumPy - 创建日期时间数组
- NumPy - 二元运算符
- NumPy - 字符串函数
- NumPy - 数学函数
- NumPy - 统计函数
- NumPy - 矩阵库
- NumPy - 线性代数
- NumPy - Matplotlib
- NumPy - 使用 Matplotlib 绘制直方图
- NumPy - NumPy 的 I/O 操作
- NumPy 排序和高级操作
- NumPy - 数组排序
- NumPy - 沿轴排序
- NumPy - 使用花式索引排序
- NumPy - 结构化数组
- NumPy - 创建结构化数组
- NumPy - 操作结构化数组
- NumPy - 字段访问
- NumPy - 记录数组
- NumPy - 加载数组
- NumPy - 保存数组
- NumPy - 向数组追加值
- NumPy - 交换数组列
- NumPy - 向数组插入轴
- NumPy 处理缺失数据
- NumPy - 处理缺失数据
- NumPy - 识别缺失值
- NumPy - 删除缺失数据
- NumPy - 填充缺失数据
- NumPy 性能优化
- NumPy - 使用数组进行性能优化
- NumPy - 使用数组进行矢量化
- NumPy - 数组的内存布局
- NumPy 线性代数
- NumPy - 线性代数
- NumPy - 矩阵库
- NumPy - 矩阵加法
- NumPy - 矩阵减法
- NumPy - 矩阵乘法
- NumPy - 元素级矩阵运算
- NumPy - 点积
- NumPy - 矩阵求逆
- NumPy - 行列式计算
- NumPy - 特征值
- NumPy - 特征向量
- NumPy - 奇异值分解
- NumPy - 求解线性方程
- NumPy - 矩阵范数
- NumPy 元素级矩阵运算
- NumPy - 求和
- NumPy - 求均值
- NumPy - 求中位数
- NumPy - 求最小值
- NumPy - 求最大值
- NumPy 集合运算
- NumPy - 唯一元素
- NumPy - 交集
- NumPy - 并集
- NumPy - 差集
- NumPy 有用资源
- NumPy 编译器
- NumPy - 快速指南
- NumPy - 有用资源
- NumPy - 讨论
NumPy expand_dims() 函数
NumPy 的expand_dims()函数用于向数组添加新的轴或维度。此函数接收一个输入数组和一个轴参数,该参数指定在何处插入新维度。
此函数的结果是一个添加了指定轴的新数组,这对于调整数组形状以满足某些运算或函数的要求非常有用。
例如,扩展维度通常用于通过使其与广播或矩阵运算兼容来将一维数组转换为二维数组。
语法
NumPy expand_dims() 函数的语法如下:
numpy.expand_dims(a, axis)
参数
以下是 NumPy expand_dims() 函数的参数:
- a : 输入数组。
- axis (int): 这是在扩展轴中放置新轴的位置。如果我们提供一个负整数,它将从最后一个轴到第一个轴进行计数。
返回值
此函数返回维度增加一的数组视图。
示例 1
以下是 NumPy expand_dims() 函数的基本示例,它通过将其转换为形状为 (1, 3) 的二维数组,在 1D 数组的开头添加一个新轴:
import numpy as np
# Original 1D array
arr = np.array([1, 2, 3])
# Expand dimensions
expanded_arr = np.expand_dims(arr, axis=0)
print("Original array:")
print(arr)
print("Shape:", arr.shape)
print("\nExpanded array:")
print(expanded_arr)
print("Shape:")
print(expanded_arr.shape)
输出
Original array: [1 2 3] Shape: (3,) Expanded array: [[1 2 3]] Shape: (1, 3)
示例 2
此示例通过将其形状从 (2, 2, 2) 更改为 (2, 2, 2, 1),在 3D 数组的末尾添加一个新轴:
import numpy as np
# Original 3D array
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
# Expand dimensions
expanded_arr = np.expand_dims(arr, axis=-1)
print("Original array:")
print(arr)
print("Shape:", arr.shape)
print("\nExpanded array:")
print(expanded_arr)
print("Shape:")
print(expanded_arr.shape)
执行上述代码后,我们将得到以下结果:
Original array: [[[1 2] [3 4]] [[5 6] [7 8]]] Shape: (2, 2, 2) Expanded array: [[[[1] [2]] [[3] [4]]] [[[5] [6]] [[7] [8]]]] Shape: (2, 2, 2, 1)
示例 3
以下示例显示了如何使用expand_dims()函数通过根据需要调整其形状和维度来向数组添加新维度:
import numpy as np
# Create a 2D array
x = np.array([[1, 2], [3, 4]])
print('Array x:')
print(x)
print('\n')
# Add a new axis at position 0
y = np.expand_dims(x, axis=0)
print('Array y with a new axis added at position 0:')
print(y)
print('\n')
# Print the shapes of x and y
print('The shape of x and y arrays:')
print(x.shape, y.shape)
print('\n')
# Add a new axis at position 1
y = np.expand_dims(x, axis=1)
print('Array y after inserting axis at position 1:')
print(y)
print('\n')
# Print the number of dimensions (ndim) for x and y
print('x.ndim and y.ndim:')
print(x.ndim, y.ndim)
print('\n')
# Print the shapes of x and y
print('x.shape and y.shape:')
print(x.shape, y.shape)
执行上述代码后,我们将得到以下结果:
Array x: [[1 2] [3 4]] Array y with a new axis added at position 0: [[[1 2] [3 4]]] The shape of x and y arrays: (2, 2) (1, 2, 2) Array y after inserting axis at position 1: [[[1 2]] [[3 4]]] x.ndim and y.ndim: 2 3 x.shape and y.shape: (2, 2) (2, 1, 2)
numpy_array_manipulation.htm
广告