2016-12-10 1 views
0

Ich habe dieses Array:Wie speichere ich 2D numpy array spaltenweise anstelle von zeilenweise in Python?

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

Ich versuchte pandas.to_csv zu verwenden, aber es gibt mir

1 2 3 
4 5 nan 
7 8 9 

aber ich will

1 4 7 
2 5 8 
3 nan 9 
+0

Sie 'arr.T' verwenden können, wo' arr' der Name Ihres Array ist. – ayhan

+1

Nun mein Array ist dynamisch, es ist nicht von so etwas wie 3 x 3 wie erste Zeile hat 3 Elemente, zweite Zeile hat 7 Elemente und so weiter ... –

+0

Es wäre viel einfacher, Ihnen zu helfen, wenn Sie uns geben würden Testeingang und gewünschter Ausgang. Als eine schnelle Schätzung würde ich 'df.transpose() sagen. To_csv()' sollte genug sein –

Antwort

0

würde ich zuerst alle Zeilen gewährleisten die gleiche Länge:

a = [[], [1], [1,2], [1,2,3]] 
max_row_length = max([len(r) for r in a]) 
a = [r + [None]*(max_row_length - len(r)) for r in a] 

und dann würde ich numpy:

np.array(a).T