np.split()?均等分割,不均等會報錯
np.array_split()?不均等分割,不會報錯
?
split(ary, indices_or_sections, axis=0) :把一個數(shù)組從左到右按順序切分?
參數(shù):?
ary:要切分的數(shù)組?
indices_or_sections:如果是一個整數(shù),就用該數(shù)平均切分,如果是一個數(shù)組,為沿軸切分的位置(左開右閉)?
axis:沿著哪個維度進行切向,默認(rèn)為0,橫向切分。為1時,縱向切分
?
### 關(guān)于np.split()函數(shù)
x = np.arange(9) #9行1列的列向量
print(x, np.shape(x))
y = np.split(x, 3) # 平均分成三份,不能平均的話則會報錯
print(y)
y = np.split(x, 3, axis=0) # 平均分成三份,不能平均的話則會報錯,axis默認(rèn)為0
print(y)
# 不均等分割 np.array_split()
y = np.array_split(x, 4, axis=0) #第0項分割出來的元素最多,剩下的均等分
print('不均等分割:',y)
y = np.split(x, (3,)) # 在第3行之前進行切割,切割成2份
print(y)
y = np.split(x, [3, 5, 7, 8]) #都是開區(qū)間進行分割,在第3行,第5行···前進行切割
print(y)
k = np.arange(1, 3, 0.5).reshape(-1, 1)
print(k)
m = x + k
print(m)
m1 = np.split(m, 3, axis=1) # axis=0表示橫著切,axis=1表示豎著切
print(m1)
m0 = np.split(m, 2, axis=0)
print(m0)
a, b = np.split(m, (4,), axis=1)
print('a = ',a)
print('b = ',b)
# 結(jié)果:
# [0 1 2 3 4 5 6 7 8] (9,)
# [array([0, 1, 2]), array([3, 4, 5]), array([6, 7, 8])]
# [array([0, 1, 2]), array([3, 4, 5]), array([6, 7, 8])]
# 不均等分割: [array([0, 1, 2]), array([3, 4]), array([5, 6]), array([7, 8])]
# [array([0, 1, 2]), array([3, 4, 5, 6, 7, 8])]
# [array([0, 1, 2]), array([3, 4]), array([5, 6]), array([7]), array([8])]
# [[1. ]
# [1.5]
# [2. ]
# [2.5]]
# [[ 1. 2. 3. 4. 5. 6. 7. 8. 9. ]
# [ 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5]
# [ 2. 3. 4. 5. 6. 7. 8. 9. 10. ]
# [ 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 10.5]]
# [array([[1. , 2. , 3. ],
# [1.5, 2.5, 3.5],
# [2. , 3. , 4. ],
# [2.5, 3.5, 4.5]]), array([[4. , 5. , 6. ],
# [4.5, 5.5, 6.5],
# [5. , 6. , 7. ],
# [5.5, 6.5, 7.5]]), array([[ 7. , 8. , 9. ],
# [ 7.5, 8.5, 9.5],
# [ 8. , 9. , 10. ],
# [ 8.5, 9.5, 10.5]])]
# [array([[1. , 2. , 3. , 4. , 5. , 6. , 7. , 8. , 9. ],
# [1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5]]), array([[ 2. , 3. , 4. , 5. , 6. , 7. , 8. , 9. , 10. ],
# [ 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5]])]
# a = [[1. 2. 3. 4. ]
# [1.5 2.5 3.5 4.5]
# [2. 3. 4. 5. ]
# [2.5 3.5 4.5 5.5]]
# b = [[ 5. 6. 7. 8. 9. ]
# [ 5.5 6.5 7.5 8.5 9.5]
# [ 6. 7. 8. 9. 10. ]
# [ 6.5 7.5 8.5 9.5 10.5]]
來源:https://www.cnblogs.com/shona/p/12163515.html
總結(jié)
以上是生活随笔為你收集整理的Python | numpy | np.split()与np.array_split()函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。