Numpy часть и присоединиться - PullRequest
1 голос
/ 29 мая 2019

У меня есть массив, который я хотел бы разделить на несколько массивов в виде:

M = [1,2,3          to [ [1],[2]....[9] ]  (List of arrays)
     4,5,6
     7,8,9]

И я хотел бы знать, как соединить их обратно, чтобы получить M снова.Я не могу найти никакого другого решения, кроме как назвать каждый массив и поместить его в правильное положение (строка, столбец) вручную.

РЕДАКТИРОВАТЬ:

Я обнаружил, что мое объяснение было неясным.У меня есть большой массив, который я хотел бы разделить на подмассивы.

  M.shape = (5000,5000,3)    =====> L = [ subarray1, subarray2 ...]
  with subarray.shape = (500,500,3)

Второй шаг: объединение обратно

from L = [ subarray1, ...] to M

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 29 мая 2019

Вы можете сделать это следующим образом

M = np.array([[1,2,3],[4,5,6],[7,8,9]])
A = M.reshape(-1,1)
print(A)
#for getting back in the original form
a = len(A)
c = [A[i-3:i] for i in range(3,a+1,3)]
c_new = np.array([np.concatenate(i) for i in c]).reshape(3,3)
print(c_new)

A -

[[1]
 [2]
 [3]
 [4]
 [5]
 [6]
 [7]
 [8]
 [9]]

c_new -

[[1 2 3]
 [4 5 6]
 [7 8 9]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...