Scrivi un Pandas DataFrame in CSV
- 
          
            Sintassi della funzione pandas.DataFrame.to_csv()
- 
          
            Scrivi un DataFrame in un file CSV usando la funzione pandas.DataFrame.to_csv()
- 
          
            Scrivi un DataFrame in un file CSV usando la funzione pandas.DataFrame.to_csv()ignorando gli indici
- 
          
            Specificare un separatore nella funzione pandas.DataFrame.to_csv()
 
Questo tutorial spiega come scrivere un DataFrame in un file CSV utilizzando la funzione pandas.DataFrame.to_csv(). La funzione pandas.DataFrame.to_csv() scrive le voci di DataFrame in un file CSV.
Sintassi della funzione pandas.DataFrame.to_csv()
    
pandas.DataFrame.to_csv(
    path_or_buf=None,
    sep=",",
    na_rep="",
    float_format=None,
    columns=None,
    header=True,
    index=True,
    index_label=None,
    mode="w",
    encoding=None,
    compression="infer",
    quoting=None,
    quotechar='""',
    line_terminator=None,
    chunksize=None,
    date_format=None,
    doublequote=True,
    escapechar=None,
    decimal=".",
)
Scrivi un DataFrame in un file CSV usando la funzione pandas.DataFrame.to_csv()
    
import pandas as pd
mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}
mid_term_marks_df = pd.DataFrame(mid_term_marks)
print(mid_term_marks_df)
Produzione:
  Student  Economics  Fine Arts  Mathematics
0   Kamal         10          7            7
1    Arun          8          8            3
2   David          6          5            5
3  Thomas          5          9            8
4  Steven          8          6            5
Quindi scriveremo il DataFrame mid_term_marks_df in un file CSV.
import pandas as pd
mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}
mid_term_marks_df = pd.DataFrame(mid_term_marks)
mid_term_marks_df.to_csv("midterm.csv")
Creerà un file chiamato midterm.csv e scriverà i valori DataFrame nel file dove i valori adiacenti in una riga sono separati da una virgola ,.
Il contenuto del file midterm.csv sarà:
,Student,Economics,Fine Arts,Mathematics
0,Kamal,10,7,7
1,Arun,8,8,3
2,David,6,5,5
3,Thomas,5,9,8
4,Steven,8,6,5
Per impostazione predefinita, la funzione pandas.DataFrame.to_csv() scrive anche gli indici di DataFrame nel CSV, ma l’indice potrebbe non essere sempre utile in tutti i casi.
Scrivi un DataFrame in un file CSV usando la funzione pandas.DataFrame.to_csv() ignorando gli indici
Per ignorare gli indici, possiamo impostare index=False nella funzione pandas.DataFrame.to_csv().
import pandas as pd
mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}
mid_term_marks_df = pd.DataFrame(mid_term_marks)
mid_term_marks_df.to_csv("midterm.csv", index=False)
In questo caso, il contenuto del file midterm.csv sarà:
Student,Economics,Fine Arts,Mathematics
Kamal,10,7,7
Arun,8,8,3
David,6,5,5
Thomas,5,9,8
Steven,8,6,5
A volte possiamo ottenere UnicodeEncodeError durante la scrittura del contenuto di un DataFrame in un file CSV. In questi casi, possiamo impostare encoding='utf-8' che abilita il formato di codifica utf-8.
Specificare un separatore nella funzione pandas.DataFrame.to_csv()
Per impostazione predefinita, durante la scrittura del DataFrame in un file CSV, i valori sono separati da una virgola. Se vogliamo usare qualsiasi altro simbolo come separatore, possiamo specificarlo usando il parametro sep.
import pandas as pd
mid_term_marks = {
    "Student": ["Kamal", "Arun", "David", "Thomas", "Steven"],
    "Economics": [10, 8, 6, 5, 8],
    "Fine Arts": [7, 8, 5, 9, 6],
    "Mathematics": [7, 3, 5, 8, 5],
}
mid_term_marks_df = pd.DataFrame(mid_term_marks)
mid_term_marks_df.to_csv("midterm.csv", index=False, sep="\t")
In questo caso, il contenuto del file midterm.csv sarà:
Student Economics Fine Arts Mathematics
Kamal 10  7 7
Arun  8 8 3
David 6 5 5
Thomas  5 9 8
Steven  8 6 5
Qui i valori sono separati da una tabulazione.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedInArticolo correlato - Pandas DataFrame
- Come ottenere le intestazioni delle colonne DataFrame Pandas come lista
- Come cancellare la colonna DataFrame Pandas DataFrame
- Come convertire la colonna DataFrame in data e ora in pandas
- Converti un Float in un Integer in Pandas DataFrame
- Ordina Pandas DataFrame in base ai valori di una colonna
- Ottieni l'aggregato di Pandas Group-By e Sum
