2017-04-21 2 views
1

Ich versuche dieses Array in einzelne zu transponieren. Mein Eingang:Wie füge ich Array in Single zusammen?

a = [[ array([ 3.00514850e+05, 3.32400000e+01, 2.71669002e-01, 
     6.50974961e+05, 3.00515112e+05, 3.32248995e+01]) 
    array([ 15.])] 
[ array([ 3.00915200e+05, 2.90600000e+01, 2.91730634e-01, 
     6.50763121e+05, 3.00915412e+05, 2.91246275e+01]) 
    array([ 17.])] 

, was ich zu erreichen versuche:

b = [[ 3.00514850e+05, 3.32400000e+01, 2.71669002e-01, 
     6.50974961e+05, 3.00515112e+05, 3.32248995e+01, 15.] 
     [ 3.00915200e+05, 2.90600000e+01, 2.91730634e-01, 
     6.50763121e+05, 3.00915412e+05, 2.91246275e+01, 17.]] 

Also mein Plan ist es, zuerst meine Array in einzelne transponieren, aufgeteilt zwei Arrays in einzelne und dann zusammenhängen. Ich habe wirklich das Gefühl, etwas zu komplizieren.

Ich verwendete b = a.transpose(), um alle Werte von kleinen Array bis zum Ende zu setzen. Danach versuche ich c, d = ([i] für i in b) zu verwenden, um dies zu Arrays zu teilen, und dann ist mein Plan zu verwenden output = np.append (c, d).

Aber meine Funktion c, d trowing Fehler "zu viele Werte zu entpacken (erwartet 2)".

Gibt es einen besseren Weg, es zu tun? Was mache ich falsch? Kannst du mir helfen?

Antwort

3

So versuchen Sie, die Arrays in allen Unterlisten Ihrer Liste a zu verketten. Sie können dies mit der integrierten Funktion map:

a = [[np.array([3.00514850e+05, 3.32400000e+01, 2.71669002e-01, 
       6.50974961e+05, 3.00515112e+05, 3.32248995e+01]), np.array([15.])], 
    [np.array([3.00915200e+05, 2.90600000e+01, 2.91730634e-01, 
       6.50763121e+05, 3.00915412e+05, 2.91246275e+01]), np.array([17.])]] 
a = np.array(a) 
result = np.array(list(map(np.concatenate,a))) 
+0

tun Perfekt! Das ist die Antwort, nach der ich gesucht habe! – Losbaltica

Verwandte Themen