Python之Pandas:pandas.DataFrame.to_csv函数的简介、具体案例、使用方法详细攻略
Python之Pandas:pandas.DataFrame.to_csv函数的简介、具体案例、使用方法详细攻略pandas.DataFrame.to_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='.', errors='strict')def to_csv Found at: pandas.core.genericdef to_csv(self,path_or_buf:Optional[FilePathOrBuffer]=None,sep:str=",",na_rep:str="",float_format:Optional[str]=None,columns:Optional[Sequence[Label]]=None,header:Union[bool_tList[str]]=True,index:bool_t=True,index_label:Optional[Union[bool_tstrSequence[Label]]]=None,mode:str="w",encoding:Optional[str]=None,compression:Optional[Union[strMapping[strstr]]]="infer",quoting:Optional[int]=None,quotechar:str='"',line_terminator:Optional[str]=None,chunksize:Optional[int]=None,date_format:Optional[str]=None,doublequote:bool_t=True,escapechar:Optional[str]=None,decimal:Optional[str]=".",errors:str="strict")->Optional[str]:r"""Write object to a comma-separated values (csv) file... versionchanged:: 0.24.0The order of arguments for Series was changed.将对象写入逗号分隔值(csv)文件。Parameters----------path_or_buf : str or file handle, default None. File path or object, if None is provided the result is returned as a string. If a file object is passed it should be opened with `newline=''`, disabling universal newlines... versionchanged:: 0.24.0Was previously named "path" for Series.sep : str, default ','. String of length 1. Field delimiter for the output file.na_rep : str, default ''. Missing data representation.float_format : str, default None. Format string for floating point numbers.columns : sequence, optional. Columns to write.header : bool or list of str, default True.Write out the column names. If a list of strings is given it is assumed to be aliases for the column names... versionchanged:: 0.24.0Previously defaulted to False for Series.index : bool, default True. Write row names (index).index_label : str or sequence, or False, default None. Column label for index column(s) if desired. If None is given, and `header` and `index` are True, then the index names are used. A sequence should be given if the object uses MultiIndex. If False do not print fields for index names. Use index_label=False for easier importing in R.mode : str.Python write mode, default 'w'.encoding : str, optional.A string representing the encoding to use in the output file, defaults to 'utf-8'.compression : str or dict, default 'infer'. If str, represents compression mode. If dict, value at 'method' is the compression mode. Compression mode may be any of the followingpossible values: {'infer', 'gzip', 'bz2', 'zip', 'xz', None}. If compression mode is 'infer' and `path_or_buf` is path-like, then detect compression mode from the following extensions: '. gz', '.bz2', '.zip' or '.xz'. (otherwise no compression). If dict given and mode is one of {'zip', 'gzip', 'bz2'}, or inferred as one of the above, other entries passed as additional compression options... versionchanged:: 1.0.0May now be a dict with key 'method' as compression mode and other entries as additional compression options if compression mode is 'zip'... versionchanged:: 1.1.0Passing compression options as keys in dict is supported for compression modes 'gzip' and 'bz2' as well as 'zip'.参数----------path_or_buf : str或file handle,默认无。文件路径或对象,如果没有提供,结果将作为字符串返回。如果一个文件对象被传递,它应该被打开' newline= " ',禁用通用换行。. .versionchanged: 0.24.0之前被命名为“path”系列。sep : str,默认为','。长度为1的字符串。输出文件的字段分隔符。na_rep : str,默认值"。缺失的数据表示。float_format : str,默认没有。浮点数的格式字符串。columns : 序列,可选。列写。header : bool或str列表,默认为True。写出列名。如果给定了字符串列表,则假定它是列名的别名。. .versionchanged: 0.24.0以前对于级数默认为False。index : bool,默认为True。写行名称(索引)。cats_df_temp.to_csv(cats_csv_file,index=None) #输出不加默认的索引列iindex_label : str或序列,或False,默认无。如果需要,用于索引列的列标签。如果没有给出,并且' header '和' index '为真,则使用索引名。如果对象使用多索引,则应该给出一个序列。如果为False,不要打印索引名称的字段。使用index_label=False在R中更容易导入。mode : str.Python编写模式,默认为“w”。encoding : str,可选。表示要在输出文件中使用的编码的字符串,默认为“utf-8”。compression : str或dict,默认为'infer'。如果为str,表示压缩模式。如果是dict, value at 'method'是压缩模式。压缩模式可以是下列任何一种possible values: {'infer', 'gzip', 'bz2', 'zip', 'xz', None}.。如果压缩模式是'infer',而' path_or_buf '是类似路径的,那么从以下扩展中检测压缩模式:'。 '. gz', '.bz2', '.zip' or '.xz'. 。(否则不压缩)。如果dict given和mode是{'zip'、'gzip'、'bz2'}或推断为上述选项之一,则其他项作为附加压缩选项传递。. .versionchanged: 1.0.0如果压缩模式是“zip”,则可以使用关键的“方法”作为压缩模式,其他条目作为附加的压缩选项。. .versionchanged: 1.1.0压缩模式“gzip”和“bz2”以及“zip”支持将压缩选项作为键在dict中传递。quoting : optional constant from csv module. Defaults to csv.QUOTE_MINIMAL. If you have set a `float_format` then floats are converted to strings and thus csv. QUOTE_NONNUMERIC will treat them as non-numeric.quotechar : str, default '\"'. String of length 1. Character used to quote fields.line_terminator : str, optional. The newline character or character sequence to use in the output file. Defaults to `os.linesep`, which depends on the OS in which this method is called ('\n' for linux, '\r\n' for Windows, i.e.)... versionchanged:: 0.24.0chunksize : int or None. Rows to write at a time.date_format : str, default None.Format string for datetime objects.doublequote : bool, default True. Control quoting of `quotechar` inside a field.escapechar : str, default None. String of length 1. Character used to escape `sep` and `quotechar` when appropriate.decimal : str, default '.'. Character recognized as decimal separator. E.g. use ',' for European data.errors : str, default 'strict'.Specifies how encoding and decoding errors are to be handled. See the errors argument for :func:`open` for a full list of options... versionadded:: 1.1.0quoting : csv模块中的可选常量。默认为csv.QUOTE_MINIMAL。如果你设置了一个' float_format ',那么float就会被转换为字符串,从而转换为csv。QUOTE_NONNUMERIC将把它们视为非数值。quoting : str,默认为'\"'。长度为1的字符串。用于引用字段的字符。line_terminator : str,可选。输出文件中要使用的换行字符或字符序列。默认的操作系统。linesep ',它取决于调用该方法的操作系统(例如,linux是'\n', Windows是'\r\n')。. .versionchanged: 0.24.0chunksize : int或None。每次要写入的行。date_format : str,默认无。日期时间对象的格式字符串。doublequote :bool,默认为True。控制字段内引用“quotechar”。escapechar : str,默认无。长度为1的字符串。在适当的时候,字符用于转义' sep '和' quotechar '。decimal : str,默认为'.'。可识别为十进制分隔符的字符。例如,使用“,”表示欧洲数据。errors : str,默认为“strict”。指定如何处理编码和解码错误。查看:func: ' open '的错误参数以获得选项的完整列表。. .versionadded: 1.1.0Returns-------None or str. If path_or_buf is None, returns the resulting csv format as a string. Otherwise returns None.See Also--------read_csv : Load a CSV file into a DataFrame.to_excel : Write DataFrame to an Excel file.返回-------如果path_or_buf为None,则返回结果csv格式为字符串。否则返回None。另请参阅--------read_csv:将CSV文件加载到一个DataFrame中。to_excel:将DataFrame写入Excel文件。Examples-------->>> 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,bostaff\n'Create 'out.zip' containing 'out.csv'>>> compression_opts = dict(method='zip',... archive_name='out.csv') # doctest: +SKIP>>> df.to_csv('out.zip', index=False,... compression=compression_opts) # doctest: +SKIP"""df = self if isinstance(self, ABCDataFrame) else self.to_frame()from pandas.io.formats.csvs import CSVFormatterformatter = CSVFormatter(df,path_or_buf,line_terminator=line_terminator,sep=sep,encoding=encoding,errors=errors,compression=compression,quoting=quoting,na_rep=na_rep,float_format=float_format,cols=columns,header=header,index=index,index_label=index_label,mode=mode,chunksize=chunksize,quotechar=quotechar,date_format=date_format,doublequote=doublequote,escapechar=escapechar,decimal=decimal)formatter.save()if path_or_buf is None:return formatter.path_or_buf.getvalue()return None# ----------------------------------------------------------------------# Lookup Cachingpandas.to_csv()函数的具体案例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'compression_opts = dict(method='zip', archive_name='out.csv') df.to_csv('out.zip', index=False, compression=compression_opts)