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='.', errors='strict')[source]
对象写入一个逗号分隔值(csv)文件。
版本0.24.0中的更改:更改了系列参数的顺序
参数:path_or_buf :str 或 file handle,
默认为 None
文件路径或对象,如果没有提供,
结果将作为字符串返回。
如果一个文件对象被传递,
它应该用newline= "来打开,
禁用通用换行符。
在版本0.24.0中更改:以前为Series命名为“path”。
sep :str,默认‘,’
长度为1的字符串。输出文件的字段分隔符。
na_rep :str,默认为 ‘’
缺失的数据表示。
float_format:str,默认为 None
浮点数的格式字符串。
columns:sequence, 可选的
要写的列。
header :bool或str的list, 默认为True
写出列名。如果给定了字符串列表,
则假定它是列名的别名。
在版本0.24.0中更改:以前对于Series默认为False。
index :bool, 默认为 True
写行名(索引)。
index_label:str 或 sequence,
或 False, 默认为 None
列标签索引列(s)(如果需要的话)。
如果没有给出,并且头和索引为真,
则使用索引名。
如果对象使用多索引,
则应该给出一个序列。
如果为False,不要打印索引名称的字段。
使用index_label=False在R中更容易导入。
mode :str
Python写入模式,默认为'w'。
encoding :str,可选
表示要在输出文件中使用的编码的字符串,
默认为'utf-8'。
compression :str 或 dict, 默认为 ‘infer’
如果为str,表示压缩模式。
如果是dict, 则' method '中的值是压缩模式
压缩模式可以是下列任何值:
{' infer ', ' gzip ', ' bz2 ', ' zip ', ' xz ', None}。
如果压缩模式是' infer ',
并且path_or_buf是类路径的,
那么从以下扩展中检测压缩模式: ‘.gz’, ‘.bz2’, ‘.zip’
或 ‘.xz’。
(否则不压缩)。
如果给定的dict和mode是
{' zip '、' gzip '、' bz2 '}
或推断为上述选项之一,
则其他项作为附加压缩选项传递。
在版本1.0.0中更改:现在可以是一个dict,
如果压缩模式是' zip ',
则键' method '作为压缩模式,
其他条目作为附加压缩选项。
在版本1.1.0中更改:支持在压缩模式
‘gzip’和‘bz2’以及‘zip’
中以键的形式传递压缩选项。
quoting :可选常量从csv模块
默认为csv.QUOTE_MINIMAL。
如果您设置了一个float_format,
那么float将被转换为字符串,从而转换为csv。
QUOTE_NONNUMERIC将把它们视为非数值。
quotechar :str, 默认为‘”’
长度为1的字符串。用于引用字段的字符。
line_terminator:str, 可选
输出文件中要使用的换行字符或字符序列。
默认os.linesep,它取决于调用该方法的操作系统(例如,
在linux中是' n ',在Windows中是' rn ')。
在版本0.24.0中进行了更改。
chunksize :int或 None
每次要写入的行。
date_format :str, 默认为 None
日期时间对象的格式字符串。
doublequote:bool, 默认为 True
控制字段内引用quotechar。
escapechar :str, 默认为 None
长度为1的字符串。 在适当时用于转义sep和quotechar的字符。
decimal:str, 默认为 ‘.’
可识别为十进制分隔符的字符。例如,使用‘.’表示欧洲数据。
errors:str, 默认为 ‘strict’
指定如何处理编码和解码错误。有关完整的选项列表,
请参阅open()的errors参数。
新版本1.1.0。
返回值:None 或str
如果path_or_buf为None,
则返回结果csv格式为字符串。
否则返回None。
例子
>>> df = pd.DataFrame({'name': ['Raphael', 'Donatello'],
... 'mask': ['red', 'purple'],
... 'weapon': ['sai', 'bo staff']})
>>> df.to_csv(index=False)
'name,mask,weapon\nRaphael,red,sai\nDonatello,purple,bo staff\n'
创建包含‘out.zip’ 的 ‘out.csv’>>> compression_opts = dict(method='zip',
... archive_name='out.csv')
>>> df.to_csv('out.zip', index=False,
... compression=compression_opts)