数组的重塑即讲一个维度的数组以其固定的数组元素为基础,转换为另一个维度的数组,常见的是一维数组转为多维数组。
将一个多维的数组拉伸展开输出,有两种,以行为优先展开,以列为优先展开
数组重塑
import numpy as np
# 数组重塑 改变形态
array = np.arange(1, 100, 4)
print(array.ndim, array) # 结果 :1 25 [ 1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97]
# 数据重塑
array1 = array.reshape((5, 5))
print(array1, array1.ndim)
# 结果 :[[ 1 5 9 13 17]
# [21 25 29 33 37]
# [41 45 49 53 57]
# [61 65 69 73 77]
# [81 85 89 93 97]]
# 2
展平数组
array2 = np.arange(25).reshape((5, 5))
# 横展开
array3 = array2.ravel()
array4 = array2.flatten()
print(array3)
print(array4) # 结果:[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24]
# 列展开
array5 = array2.flatten('F')
print(array5) # 结果:[ 0 5 10 15 20 1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9 14 19 24]
网友评论