numpy.split#
- numpy.split(ary, indices_or_sections, axis=0)[原始碼]#
將陣列分割成多個子陣列,作為 ary 的視圖。
- 參數:
- aryndarray
要分割成子陣列的陣列。
- indices_or_sectionsint 或 1-D 陣列
如果 indices_or_sections 是一個整數 N,則陣列將沿著 axis 分割成 N 個相等的陣列。如果無法進行這樣的分割,則會引發錯誤。
如果 indices_or_sections 是一個已排序整數的 1-D 陣列,則這些條目指示沿著 axis 分割陣列的位置。例如,
[2, 3]
會對於axis=0
產生ary[:2]
ary[2:3]
ary[3:]
如果索引超出陣列沿著 axis 的維度,則會相應地傳回一個空的子陣列。
- axisint,選用
要沿著分割的軸,預設值為 0。
- 返回:
- 子陣列ndarray 列表
作為 ary 視圖的子陣列列表。
- 引發:
- ValueError
如果 indices_or_sections 作為整數給定,但分割不會導致相等劃分。
參見
array_split
將陣列分割成大小相等或接近相等的子陣列。如果無法進行相等劃分,則不會引發例外。
hsplit
將陣列水平(逐欄)分割成多個子陣列。
vsplit
將陣列垂直(逐列)分割成多個子陣列。
dsplit
沿著第三軸(深度)將陣列分割成多個子陣列。
concatenate
沿著現有軸連接陣列序列。
stack
沿著新軸連接陣列序列。
hstack
水平(逐欄)堆疊陣列序列。
vstack
垂直(逐列)堆疊陣列序列。
dstack
深度方向(沿第三維度)堆疊陣列序列。
範例
>>> import numpy as np >>> x = np.arange(9.0) >>> np.split(x, 3) [array([0., 1., 2.]), array([3., 4., 5.]), array([6., 7., 8.])]
>>> x = np.arange(8.0) >>> np.split(x, [3, 5, 6, 10]) [array([0., 1., 2.]), array([3., 4.]), array([5.]), array([6., 7.]), array([], dtype=float64)]