Pandas to_csv()函数用于将DataFrame转换为CSV数据。要将CSV数据写入文件,无涯教程只需将文件对象传递给函数即可。否则,CSV数据以字符串格式返回。
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='.')
path_or_buf - 它是指 str 或file handle 。默认值为 None ,如果传递了 None 值,则它将返回一个字符串值。
sep - 它是一个 string 值,由长度为1的字符串组成。默认值为逗号(,)。
na_rep - 它表示一个表示空值或缺失值的字符串值。 空字符串是默认值。
float_format - 它还包含一个 string 值,该值负责格式化浮点数的字符串。
columns - 这是一个可选参数,它引用一个序列来指定需要包含在CSV输出中的列。
header - 通常包含布尔值或字符串列表。如果其值设置为False,则列名称不会写入输出中。它的默认值为True。
index - 如果该值设置为True,则CSV数据中将包含索引。否则,索引值不会写入CSV输出中。
index_label - 它包含一个 str 值或一个序列,用于指定索引的列名。默认值为"None"。
mode - 它是指用于写入模式的字符串值。默认值为 w。
encoding - 它是一个可选参数,由一个字符串值组成,该字符串值表示输出文件中使用的编码。编码的默认值为 UTF-8。
compression - 它是一个 str 值,用于在以下值{'infer','gzip','bz2','zip','xz',None}。它会检测来自以下扩展名的压缩:'.gz','.bz2','.zip'或'.xz',如果infer和 path_or_buf 是path-like的,否则不会发生压缩。
quoting - 这是一个可选参数,它被定义为csv模块中的常量。其默认值为 csv.QUOTE_MINIMAL 。如果设置了float_format,则浮点值将转换为字符串,并且 csv.QUOTE_NONNUMERIC 被视为非数字值。
quotechar - 它是指长度为1的 str 值。它是用于引用字段的字符。
line_terminator - 这是一个可选参数,它引用一个字符串值。其默认值设置为 os.linesep ,这主要取决于操作系统。
chunksize - 它由 None 或 integer 值组成,并定义当前要写入的行。
date_format - 它包含 str 值,用于格式化datetime对象的字符串。 date_format 的默认值为无。
doubleequote - 它是一个布尔值,其默认值为 True 。它主要用于控制字段内 quotechar 的报价。
escapechar - 它由长度为1的 string 值组成。基本上,它是用于转义 sep 和 quotechar 。
decimal - 它包含一个字符串值,该值将字符标识为小数点分隔符。
它返回 str 或非 e值。如果名为 path_or_buf 的参数值是None,则它将返回的csv格式作为字符串返回。否则,它返回None。
示例1 :以下示例将DataFrame转换为CSV字符串:
import pandas as pd data = {'Name': ['Learnfk', 'Parker'], 'ID': [101, 102], 'Language': ['Python', 'JavaScript']} info = pd.DataFrame(data) print('DataFrame Values:\n', info) # default CSV csv_data = info.to_csv() print('\nCSV String Values:\n', csv_data)
输出:
DataFrame Values: Name ID Language 0 Learnfk 101 Python 1 Parker 102 JavaScript CSV String Values: ,Name,ID,Language 0 ,Learnfk,101,Python 1 ,Parker,102,JavaScript
示例2:以下示例显示CSV输出文件中的数据表示形式为空或丢失:
import pandas as pd data = {'Name': ['Learnfk', 'Parker'], 'ID': [101, pd.NaT], 'Language': [pd.NaT, 'JavaScript']} info = pd.DataFrame(data) print('DataFrame Values:\n', info) csv_data = info.to_csv() print('\nCSV String Values:\n', csv_data) csv_data = info.to_csv(na_rep="None") print('CSV String with Null Data Values:\n', csv_data)
输出:
DataFrame Values: Name ID Language 0 Learnfk 101 NaT 1 Parker NaT JavaScript CSV String Values: ,Name,ID,Language 0,Learnfk,101, 1,Parker,,JavaScript CSV String with Null Data Values: ,Name,ID,Language 0,Learnfk,101,None 1,Parker,None,JavaScript
示例3:下面的示例为CSV输出指定分隔符。
import pandas as pd data = {'Name': ['Learnfk', 'Parker'], 'ID': [101, pd.NaT], 'Language': [Python, 'JavaScript']} info = pd.DataFrame(data) print('DataFrame:\n', info) csv_data = info.to_csv(sep='|') print(csv_data)
输出:
DataFrame: Name ID Language 0 Learnfk 101 Python 1 Parker NaT JavaScript |Name|ID|Language 0|Learnfk|101|Python 1|Parker||JavaScript
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)