2012-07-06 40 views
11

Czy istnieje prosty sposób w NumPy do spłaszczania tablicy obiektów typu?Spłaszczaj tablicę numpy

znam .flatten() w tablice spłaszcza typu nie obiektów zbudowane z tych samych matryc rozmiar:

I1 a = np.array([[1],[2],[3]]) 

I2 a.flatten() 
O2 array([1, 2, 3]) 

Jednakże, nie można się dtype = Przedmiotem Tablica spłaszczone:

I4 b 
O4 array([[1], [2, 3], [3]], dtype=object) 

I5 b.flatten() 
O5 array([[1], [2, 3], [3]], dtype=object) 

Dzięki.

+2

Przykładem jest już tak płaska jak to tylko możliwe ('b.shape = (3)')! Co dokładnie masz na myśli przez spłaszczanie? –

+0

Tak, ale praktycznie, chcę b zmienić w [1,2,3,3] –

Odpowiedz

28

jeśli chcesz [1,2,3,3], spróbuj to wtedy

np.hstack(b) 
+1

Nice. Miałem zamiar opublikować to (co robi dokładnie to samo): [x dla bb w b dla x w bb] –

+1

@urinieto w rzeczywistości metoda oparta na zrozumieniu listy jest szybsza, chociaż trochę przyjemniej jest ją ustawić w sposób numpy. – nye17

+0

co powiesz na tablicę z elementem 20k? –

Powiązane problemy