pandas
Salva pandas dataframe in un file csv
Ricerca…
Parametri
Parametro | Descrizione |
---|---|
path_or_buf | stringa o file handle, default None Percorso file o oggetto, se viene fornito Nessuno, il risultato viene restituito come stringa. |
settembre | carattere, default ',' Delimitatore di campo per il file di output. |
na_rep | string, default '' Rappresentazione di dati mancanti |
float_format | string, default Nessuno Stringa di formato per numeri in virgola mobile |
colonne | sequenza, Colonne facoltative da scrivere |
intestazione | booleano o elenco di stringhe, i nomi di colonna True Write out predefiniti. Se viene fornito un elenco di stringhe, si presume che siano alias per i nomi delle colonne |
indice | booleano, nomi di riga True Write di default (indice) |
index_label | stringa o sequenza o False, impostazione predefinita Nessuna etichetta di colonna per le colonne indice, se necessario. Se viene dato None e l'intestazione e l'indice sono True, vengono utilizzati i nomi dell'indice. Una sequenza dovrebbe essere data se il DataFrame utilizza MultiIndex. Se False non stampa i campi per i nomi di indice. Usa index_label = False per facilitare l'importazione in R |
nanRep | Nessuno deprecato, utilizzare na_rep |
modalità | str Modalità di scrittura Python, default 'w' |
codifica | string, facoltativo Una stringa che rappresenta la codifica da utilizzare nel file di output, imposta come default 'ascii' su Python 2 e 'utf-8' su Python 3. |
compressione | string, facoltativo una stringa che rappresenta la compressione da utilizzare nel file di output, i valori consentiti sono 'gzip', 'bz2', 'xz', usati solo quando il primo argomento è un nome file |
line_terminator | string, default 'n' Il carattere di nuova riga o sequenza di caratteri da utilizzare nel file di output |
citando | costante facoltativa dal modulo csv predefinito a csv.QUOTE_MINIMAL |
quotechar | stringa (lunghezza 1), carattere "" "predefinito usato per quotare i campi |
doublequote | booleano, quotazione True Control predefinita di quotechar all'interno di un campo |
EscapeChar | stringa (lunghezza 1), default Nessun carattere usato per uscire sep e quotechar quando appropriato |
chunksize | int o Nessuna riga da scrivere alla volta |
tupleize_cols | boolean, default False scrive colonne multi_index come un elenco di tuple (se True) o nuovo (formato espanso) se False) |
formato data | string, default Nessuno Stringa di formato per oggetti datetime |
decimale | string, default '.' Carattere riconosciuto come separatore decimale. Ad esempio, usa "," per i dati europei |
Crea un DataFrame casuale e scrivi in .csv
Crea un semplice DataFrame.
import numpy as np
import pandas as pd
# Set the seed so that the numbers can be reproduced.
np.random.seed(0)
df = pd.DataFrame(np.random.randn(5, 3), columns=list('ABC'))
# Another way to set column names is "columns=['column_1_name','column_2_name','column_3_name']"
df
A B C
0 1.764052 0.400157 0.978738
1 2.240893 1.867558 -0.977278
2 0.950088 -0.151357 -0.103219
3 0.410599 0.144044 1.454274
4 0.761038 0.121675 0.443863
Adesso scrivi in un file CSV:
df.to_csv('example.csv', index=False)
Contenuto di example.csv:
A,B,C
1.76405234597,0.400157208367,0.978737984106
2.2408931992,1.86755799015,-0.977277879876
0.950088417526,-0.151357208298,-0.103218851794
0.410598501938,0.144043571161,1.45427350696
0.761037725147,0.121675016493,0.443863232745
Si noti che specifichiamo index=False
modo che gli indici generati automaticamente (riga #s 0,1,2,3,4) non siano inclusi nel file CSV. Includilo se hai bisogno della colonna indice, in questo modo:
df.to_csv('example.csv', index=True) # Or just leave off the index param; default is True
Contenuto di example.csv:
,A,B,C
0,1.76405234597,0.400157208367,0.978737984106
1,2.2408931992,1.86755799015,-0.977277879876
2,0.950088417526,-0.151357208298,-0.103218851794
3,0.410598501938,0.144043571161,1.45427350696
4,0.761037725147,0.121675016493,0.443863232745
Si noti inoltre che è possibile rimuovere l'intestazione se non è necessaria con header=False
. Questo è l'output più semplice:
df.to_csv('example.csv', index=False, header=False)
Contenuto di example.csv:
1.76405234597,0.400157208367,0.978737984106
2.2408931992,1.86755799015,-0.977277879876
0.950088417526,-0.151357208298,-0.103218851794
0.410598501938,0.144043571161,1.45427350696
0.761037725147,0.121675016493,0.443863232745
Il delimitatore può essere impostato da sep=
argomento, sebbene il separatore standard per i file csv sia ','
.
df.to_csv('example.csv', index=False, header=False, sep='\t')
1.76405234597 0.400157208367 0.978737984106
2.2408931992 1.86755799015 -0.977277879876
0.950088417526 -0.151357208298 -0.103218851794
0.410598501938 0.144043571161 1.45427350696
0.761037725147 0.121675016493 0.443863232745
Salva Pandas DataFrame da elenco a dicts a csv senza indice e con codifica dei dati
import pandas as pd
data = [
{'name': 'Daniel', 'country': 'Uganda'},
{'name': 'Yao', 'country': 'China'},
{'name': 'James', 'country': 'Colombia'},
]
df = pd.DataFrame(data)
filename = 'people.csv'
df.to_csv(filename, index=False, encoding='utf-8')
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow