Numpy学习-数组转置和形状
import numpy as np
ar1 = np.arange(10)
ar2 = np.ones((5,2))
print(ar1,'\n',ar1.T)
print(ar2,'\n',ar2.T)
# .T方法:转置,一维数组转置后结果不变
print('--------------------------------------------------')
ar3 = ar1.reshape(2,5) # 用法一:直接将已有数组改变形状
ar4 = np.zeros((4,6)).reshape(3,8) # 用法二:生成数组后直接改变形状
ar5 = np.reshape(np.arange(12),(3,4)) # 用法三:参数内添加数组,目标形状
print(ar1,'\n',ar3)
print(ar4)
print(ar5)
print('---------------------------------------')
ar6 = np.resize(np.arange(5),(3,4))
print(ar6)
# numpy.resize(a,new_shape):返回具有指定形状的新数组,如有必要可重复填充所需要的元素
结果如下:
[0 1 2 3 4 5 6 7 8 9]
[0 1 2 3 4 5 6 7 8 9]
[[1. 1.]
[1. 1.]
[1. 1.]
[1. 1.]
[1. 1.]]
[[1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1.]]
--------------------------------------------------
[0 1 2 3 4 5 6 7 8 9]
[[0 1 2 3 4]
[5 6 7 8 9]]
[[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]]
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
---------------------------------------
[[0 1 2 3]
[4 0 1 2]
[3 4 0 1]]