как я могу изменить двумерный массив на одномерный - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь изменить двумерный массив на одномерный, мой код выглядит так:

x = np.array([[1, 2, 4], [3, 4], [1,2,3,4,5,6,7]])
x = x.flatten()

однако я обнаружил, что функция сглаживания хорошо работает на

x = np.array([[1, 2], [3, 4]])

но он не работает на

x = np.array([[1, 2, 4], [3, 4], [1,2,3,4,5,6,7]])

Может кто-нибудь помочь мне изменить

np.array([[1, 2, 4], [3, 4], [1,2,3,4,5,6,7]]) 

на

np.array([[1, 2, 4, 3, 4, 1,2,3,4,5,6,7])

спасибо

Ответы [ 3 ]

0 голосов
/ 25 октября 2018

Используйте следующий простой код.

import numpy as np

x = np.array([[1, 2, 4], [3, 4], [1,2,3,4,5,6,7]])
y = sum(x.tolist(),[])
print(np.array(y))
0 голосов
/ 25 октября 2018

Вы можете попробовать использовать concatenate ( пустая документация ):

flatten_x = np.concatenate(x)
0 голосов
/ 25 октября 2018
temp = []
for i in x:
   for j in i:
       temp.append(j)

x = np.array(temp)

Надеюсь, это сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...