2014-12-21 6 views
5

ho questa lista in Python:Come esportare l'elenco di matrici in csv in Python?

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

e vorrei esportare questo per csv a guardare come questo - ogni array sulla nuova linea ...

1, 2, 3 

3., 4., 5., 6., 7. 

7, 8 

Ogni array ha un diverso lunghezza.

Ho provato a utilizzare numpy.savetxt, numpy.vstack ma queste diverse lunghezze mi danno problemi.

Qualcuno può aiutare?

+0

Si prega di accettare una risposta se il tuo problema è stato risolto. – Ujjwal

risposta

3

è anche possibile utilizzare:

modulo
import csv 
import numpy as np 
b = open('output.csv', 'w') 
a = csv.writer(b) 
data = [np.array([1, 2, 3]), np.array([3., 4., 5., 6., 7.]), np.array([7, 8])] 
a.writerows(data) 
b.close() 
3

Panda è particolarmente indicato per lavorare con i dati che sono valori mancanti:

import pandas as pd 

arr = [[1, 2, 3], [3, 4], [5, 6, 7, 8]] 
df = pd.DataFrame(arr) 
print(df.to_csv(index=False, header=False)) 

uscita:

'1,2,3.0,\n3,4,,\n5,6,7.0,8.0\n'