pandas
Zapisz ramkę danych pandy w pliku csv
Szukaj…
Parametry
Parametr | Opis |
---|---|
ścieżka_lub_buf | ciąg lub uchwyt pliku, domyślnie Brak Ścieżka do pliku lub obiekt, jeśli podano Brak, wynik jest zwracany jako ciąg. |
wrz | znak, domyślny ”,„ Ogranicznik pola dla pliku wyjściowego. |
na_rep | string, default '' Brak reprezentacji danych |
float_format | ciąg, domyślnie Brak Formatuj ciąg dla liczb zmiennoprzecinkowych |
kolumny | sekwencja, opcjonalnie Kolumny do napisania |
nagłówek | wartość logiczna lub lista ciągów, domyślnie True Wypisz nazwy kolumn. Jeśli podana jest lista ciągów, zakłada się, że są to aliasy dla nazw kolumn |
indeks | wartość logiczna, domyślna prawda Zapisuj nazwy wierszy (indeks) |
etykieta_indeksu | łańcuch lub sekwencja lub False, domyślnie Brak Etykieta kolumny dla kolumn indeksowych, jeśli jest taka potrzeba. Jeśli podano None, a nagłówek i indeks mają wartość True, wówczas używane są nazwy indeksów. Sekwencja powinna zostać podana, jeśli DataFrame używa MultiIndex. Jeśli False, nie drukuj pól dla nazw indeksów. Użyj index_label = False, aby ułatwić importowanie w R. |
nanRep | Żadne nieaktualne, użyj na_rep |
tryb | str Tryb zapisu w Pythonie, domyślnie „w” |
kodowanie | ciąg, opcjonalny Ciąg reprezentujący kodowanie, które ma być użyte w pliku wyjściowym, domyślnie ustawiony jest na „ascii” w Pythonie 2 i „utf-8” w Pythonie 3. |
kompresja | ciąg, opcjonalnie ciąg reprezentujący kompresję do użycia w pliku wyjściowym, dozwolone wartości to „gzip”, „bz2”, „xz”, używane tylko wtedy, gdy pierwszy argument jest nazwą pliku |
line_terminator | string, default 'n' Znak nowej linii lub sekwencja znaków do zastosowania w pliku wyjściowym |
cytowanie | opcjonalna stała z domyślnego modułu csv do csv.QUOTE_MINIMAL |
quechar | ciąg (długość 1), domyślny znak „” używany do cytowania pól |
cudzysłów | boolean, domyślny cytat True Control cytecharu wewnątrz pola |
escapechar | łańcuch (długość 1), domyślnie Brak znaku używanego do zmiany sep i cudzysłowu, gdy jest to właściwe |
chunksize | int lub Brak wierszy do zapisania na raz |
tupleize_cols | boolean, domyślnie False zapisuje kolumny multi_index jako listę krotek (jeśli True) lub nowy (format rozszerzony) jeśli False) |
format daty | ciąg, domyślnie Brak Formatuj ciąg znaków dla obiektów datetime |
dziesiętny | ciąg, domyślnie „.” Znak rozpoznawany jako separator dziesiętny. Np. Użyj „,” dla danych europejskich |
Utwórz losową ramkę danych i zapisz w .csv
Utwórz prostą ramkę danych.
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
Teraz napisz do pliku CSV:
df.to_csv('example.csv', index=False)
Zawartość 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
Zauważ, że określamy index=False
aby indeksy generowane automatycznie (wiersze # 0,1,2,3,4) nie były zawarte w pliku CSV. Dołącz go, jeśli potrzebujesz kolumny indeksu, tak jak:
df.to_csv('example.csv', index=True) # Or just leave off the index param; default is True
Zawartość 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
Pamiętaj też, że możesz usunąć nagłówek, jeśli nie jest potrzebny, gdy header=False
. To jest najprostszy wynik:
df.to_csv('example.csv', index=False, header=False)
Zawartość 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
Separator można ustawić argumentem sep=
, chociaż standardowym separatorem plików csv jest ','
.
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
Zapisz Pandas DataFrame z listy do nagrań w formacie csv bez indeksu i z kodowaniem danych
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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow