将 Pandas DataFrame 写入 CSV
Suraj Joshi
2023年1月30日
2021年1月22日
-
pandas.DataFrame.to_csv()
函数语法 -
使用
pandas.DataFrame.to_csv()
函数将 DataFrame 写入 CSV 文件 -
使用
pandas.DataFrame.to_csv()
函数将 DataFrame 写入 CSV 文件并忽略索引 -
在
pandas.DataFrame.to_csv()
函数中指定一个分隔符
本教程介绍了我们如何使用 pandas.DataFrame.to_csv()
函数将 DataFrame 写入 CSV 文件。pandas.DataFrame.to_csv()
函数将 DataFrame 的元素写入 CSV 文件。
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= ".")
使用 pandas.DataFrame.to_csv()
函数将 DataFrame 写入 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)
输出:
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
然后我们将把 DataFrame mid_term_marks_df
写入 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")
它将创建一个名为 midterm.csv
的文件,并将 DataFrame 的值写入该文件,其中相邻行的值用逗号 ,
分开。
midterm.csv
文件的内容将是。
,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
默认情况下,pandas.DataFrame.to_csv()
函数也会将 DataFrame 的索引写入 CSV 中,但索引可能并不总是在所有情况下有用。
使用 pandas.DataFrame.to_csv()
函数将 DataFrame 写入 CSV 文件并忽略索引
为了忽略索引,我们可以在 pandas.DataFrame.to_csv()
函数中设置 index=False
。
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)
在这种情况下,midterm.csv
文件的内容将是。
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
有时,我们在将 DataFrame 的内容写入 CSV 文件时,可能会出现 UnicodeEncodeError
。在这种情况下,我们可以设置 encoding='utf-8'
,启用 utf-8
编码格式。
在 pandas.DataFrame.to_csv()
函数中指定一个分隔符
默认情况下,当将 DataFrame 写入 CSV 文件时,值用逗号分隔。如果我们想使用其他符号作为分隔符,可以使用 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")
在这种情况下,midterm.csv
文件的内容将是。
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
这里的值用制表符分隔。
Author: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn