Hướng dẫn split array by value python - chia mảng theo giá trị python

Bạn có thể làm như sau:

ar = np.array([[1,6],[2,6],[3,8],[4,10],[5,6],[5,7],[18,6],[19,5],[17,9],[10,5]])

# get differences of x values
dif = ar[1:, 0] - ar[:-1, 0]

# get the index where you first observe a jump
fi = np.where(abs(dif) > 10)[0][0]

ar1 = ar[:fi+1]
ar2 = ar[fi+1:]

Sau đó dif sẽ là:

array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])

fi sẽ là 5 và ar1ar2 sẽ là:

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),

respectively.

Điều đó cũng sẽ cho phép bạn có được tất cả các bước nhảy trong dữ liệu của mình (bạn sẽ phải thay đổi ____10 thành

array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])
1)


Tách mảng numpy

Tách là hoạt động ngược của tham gia.

Tham gia hợp nhất nhiều mảng thành một và chia tách một mảng thành nhiều mảng.

Chúng tôi sử dụng

array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])
2 để phân tách các mảng, chúng tôi vượt qua mảng chúng tôi muốn chia và số lượng chia tách.

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

print(newarr)

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng. The return value is an array containing three arrays.

Nếu mảng có ít phần tử hơn yêu cầu, nó sẽ điều chỉnh từ cuối.

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

Hãy tự mình thử »

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng. We also have the method

array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])
3 available but it will not adjust the elements when elements are less in source array for splitting like in example above,
array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])
2 worked properly but
array([ 1,  1,  1,  1,  0, 13,  1, -2, -7])
3 would fail.



Nếu mảng có ít phần tử hơn yêu cầu, nó sẽ điều chỉnh từ cuối.

Chia mảng thành 4 phần:

newarr = np.array_split (mảng, 4)

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

print(newarr[0])print(newarr[1])print(newarr[2])
print(newarr[1])
print(newarr[2])

Hãy tự mình thử »


Lưu ý: Giá trị trả về là một mảng chứa ba mảng.

Nếu mảng có ít phần tử hơn yêu cầu, nó sẽ điều chỉnh từ cuối.

Chia mảng thành 4 phần:

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

print(newarr)

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng.

Nếu mảng có ít phần tử hơn yêu cầu, nó sẽ điều chỉnh từ cuối.

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

print(newarr)

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng.

Nếu mảng có ít phần tử hơn yêu cầu, nó sẽ điều chỉnh từ cuối.

Chia mảng thành 4 phần:

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

Hãy tự mình thử »

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng.

Thí dụ

Chia mảng thành 3 phần:

nhập khẩu NUMPY dưới dạng NP

mảng = np.array ([1, 2, 3, 4, 5, 6]))

newarr = np.array_split (mảng, 3)

Hãy tự mình thử »

Hãy tự mình thử »

Lưu ý: Giá trị trả về là một mảng chứa ba mảng. Similar alternates to

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
1 and
array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
2 are available as
array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
3 and
array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
4.



numpy.split (ary, indices_or_sections, axis = 0) [nguồn]#split(ary, indices_or_sections, axis=0)[source]#

Chia một mảng thành nhiều mảng phụ dưới dạng chế độ xem thành ary.

Tham số Aryndarrayaryndarray

Mảng để được chia thành các mép con.

Chỉ số_or_sectionsint hoặc mảng 1-Dint or 1-D array

Nếu Idices_or_Sections là một số nguyên, n, mảng sẽ được chia thành n mảng bằng nhau dọc theo trục. Nếu sự phân chia như vậy là không thể, một lỗi được nêu ra.

Nếu chỉ số_or_sections là một mảng 1-D của các số nguyên được sắp xếp, các mục nhập cho biết nơi dọc theo trục, mảng được phân chia. Ví dụ,

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
5, đối với
array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
6, sẽ dẫn đến

  • ary[:2]

  • ary[2:3]

  • ary[3:]

Nếu một chỉ mục vượt quá kích thước của mảng dọc theo trục, một mảng con trống được trả về tương ứng.

Trục, tùy chọnint, optional

Trục dọc theo đó để chia, mặc định là 0.

Returnssub-arrayslist của ndarrayssub-arrayslist of ndarrays

Một danh sách các kết nối phụ là quan điểm vào ary.

RAISEVALUEERROR

Nếu IDICS_OR_Sections được đưa ra dưới dạng số nguyên, nhưng sự phân chia không dẫn đến sự phân chia bằng nhau.

Xem thêm

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
7

Chia một mảng thành nhiều mép phụ có kích thước bằng hoặc gần bằng nhau. Không nêu ra một ngoại lệ nếu một bộ phận bình đẳng không thể được thực hiện.

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
8

Chia mảng thành nhiều mảng phụ theo chiều ngang (thông minh cột).

array([[ 1,  6],
       [ 2,  6],
       [ 3,  8],
       [ 4, 10],
       [ 5,  6],
       [ 5,  7]])
9

Chia mảng thành nhiều mảng phụ theo chiều dọc (hàng khôn ngoan).

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
0

Chia mảng thành nhiều mảng con dọc theo trục thứ 3 (độ sâu).

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
1

Tham gia một chuỗi các mảng dọc theo một trục hiện có.

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
2

Tham gia một chuỗi các mảng dọc theo một trục mới.

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
3

Các mảng ngăn xếp theo thứ tự theo chiều ngang (cột khôn ngoan).

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
4

Các mảng xếp theo trình tự theo chiều dọc (hàng khôn ngoan).

array([[18,  6],
       [19,  5],
       [17,  9],
       [10,  5]]),
5

Các mảng ngăn xếp theo trình tự độ sâu khôn ngoan (dọc theo chiều thứ ba).

Ví dụ

>>> 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)]