c语言编程笔录

首页 >   > 笔记大全

笔记大全

numpy怎么增加维度和删除维度

更新时间:2023-12-01

什么是numpy?

NumPy是Python编程语言的一个扩充程序库,支持大量高维数组与矩阵运算。此外,numpy库也提供矩阵运算所需的大量数学函数库。

增加维度

Numpy可以通过np.newaxis增加数组的维度。np.newaxis是一个用于增加维度的对象,可以在整数索引数组中使用。下面是一些例子:

import numpy as np 
  
#一维数组,增加行维度 
oneDArray = np.array([1, 2, 3, 4])
rowArray = oneDArray[np.newaxis, :]
print("增加行维度后的数组:") 
print(rowArray) 

#一维数组,增加列维度 
columnArray = oneDArray[:, np.newaxis]
print("增加列维度后的数组:")
print(columnArray) 

#二维数组,增加新的维度 
twoDArray = np.array([[1, 2, 3], [4, 5, 6]])
threeDArray = twoDArray[:, :, np.newaxis]
print("增加新的维度后的数组:")
print(threeDArray) 

删除维度

NumPy也提供了多种方法删除数组的维度,可以使用np.squeeze和np.reshape方法实现,下面是一些例子:

import numpy as np 
  
#一维数组,删除行维度 
oneDArray = np.array([[1], [2], [3], [4]])
rowArray = np.squeeze(oneDArray)
print("删除行维度后的数组:")
print(rowArray) 

#二维数组,删除行维度 
twoDArray = np.array([[[1], [2]], [[3], [4]]])
array = np.squeeze(twoDArray, axis = 0)
print("删除行维度后的数组:")
print(array) 

#三维数组,删除新的维度 
threeDArray = np.array([[[1, 2, 3]], [[4, 5, 6]]])
twoDArray = np.squeeze(threeDArray, axis = 2)
print("删除新的维度后的数组:")
print(twoDArray) 

#重塑数组 
array = np.array([1, 2, 3, 4, 5, 6])
reshapedArray = np.reshape(array, (2, 3))
print("重塑后的数组:")
print(reshapedArray) 

总结

Numpy是Python编程语言的一个扩充程序库,支持大量高维数组与矩阵运算。数组的维度可以通过np.newaxis进行添加,可以使用np.squeeze方法进行删除。同时,np.reshape方法可以重塑数组。这些操作都非常简单且易于理解,可以满足常见的数据操作需求。