Python(5) Numpy中array的切片相關操作
阿新 • • 發佈:2019-01-01
在交叉驗證中經常需要輪流從陣列中取出一些內容,此時需要對陣列做一些切片以及shape, rashape的操作,總結如下:
import numpy as np
#構造陣列
a = [i for i in range(100)]
a = np.array(a)
a_size = a.shape
a = np.reshape(a, (10, 10))
print('a:')
print(a)
print('#######################################################')
#陣列分成5份
a_item = np.split(a, 5)
print('a_item:' )
print(a_item)
print('#######################################################')
#從陣列中選出相應的份
a_test = a_item[:0] + a_item[1:5]
a_verify = a_item[0]
print('a_test:')
print(a_test)
print('a_verify:')
print(a_verify)
print('#######################################################')
#將選出的份恢復成二維陣列形式
a_test = np.reshape(a_test, (int(a.shape[0 ] * 4 / 5), -1))
a_verify = np.reshape(a_verify, (int(a.shape[0] / 5), -1))
print('恢復後的a_test:')
print(a_test)
print('恢復後的a_verify:')
print(a_verify)
print('#######################################################')