python read_excel converters_python pandas读写excel/csv文件 .read_excel .to_excel .read_csv .to_csv...

读取excel/csv数据 - read_excel

import pandas as pd

pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None, squeeze=False, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True, verbose=False, parse_dates=False, date_parser=None, thousands=None, comment=None, skip_footer=0, skipfooter=0, convert_float=True, mangle_dupe_cols=True, **kwds)

说明:

io : 文件路径及名称。str, ExcelFile file://localhost/path/to/table.xlsx.

sheet_name : 指定excel中的哪个sheet。str, int, list, or None, default 0

默认为0,将第一个sheet返回为一个dataFrame,

如果设定为1: 将第二个sheet返回为一个dataFrame,

如果设定为"Sheet1": 将名字为“Sheet1”的sheet返回为一个dataFrame,

如果设定为[0, 1, "Sheet5"]: 返回一个字典,字典的value分别为这三个sheet的DataFrame,

如果设定为None: 返回所有sheet的dataframe组成的字典,

header :指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None。 int, list of int, default 0;

names:指定列的名字,传入一个list数据,若数据不含列名,则应设定 header = None;

index_col :指定某一列数据作为索引列,用于显示行名;

skiprows:省略指定行数的数据.

dtype : Type name or dict of column.指定读取时转换来的变量类型,本人在读取染色体外显子exon时指定为str,否则读出来是小数,当然不存在第'3.0','4.0'外显子啦,str,int, type, default None

要读取的test.xlsx的Sheet1内容

要读取的test.xlsx的Sheet2内容

代码实例:

>>> pd1 = pd.read_excel('test.xlsx',sheet_name = 'Sheet2',index_col=0,skiprows= 2,header = None)

>>> pd1

1 2 3 4 5

0

T3 nameT3 男 47 郑州中心医院(胸外) 血液

T4 nameT4 男 48 郑州中心医院(胸外) 石蜡切片

T5 nameT5 女 49 苏博医学 血液

T6 nameT6 男 50 苏博医学 血液

>>> pd2 = pd.read_excel('test.xlsx',skipfooter=3)

>>> pd2

样本编号 姓名 性别 年龄 送检医院 样本类型

0 F1 nameF1 女 56 NaN 血液

1 F2 nameF2 女 70 NaN 血液

2 F3 nameF3 男 71 NaN 血液

3 F4 nameF4 男 53 NaN 蜡块

4 F5 nameF5 女 55 邯郸市第一医院 石蜡切片

5 F6 nameF6 男 67 苏博医学 血液

pd.read_csv(filepath_or_buffer: Union[str, pathlib.Path, IO[~AnyStr]], sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=0, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, cache_dates=True, iterator=False, chunksize=None, compression='infer', thousands=None, decimal=b'.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, dialect=None, error_bad_lines=True, warn_bad_lines=True, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None)

存储excel/csv数据 - to_excel

import pandas as pd

pd.to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None)

说明:

excel_writer : 输出路径或者ExcelWriter对象。str or ExcelWriter object

如果excel_writer为输出路径则只会将dataframe写入第一个sheet,如果要在一个excel中写入多个sheet,则需要将输出文件转化为ExcelWriter对象。

writer = pd.ExcelWriter('out.xlsx')

df1.to_excel(writer, sheet_name='sheet1')

df2.to_excel(writer, sheet_name='sheet2')

writer.save()

sheet_name : sheet表名命名,str, default ‘Sheet1’,Name of sheet which will contain DataFrame;

na_rep: 缺失值填充,str, default '',如果na_rep设置为bool值,则读取excel时改为0和1,True对应1,False对应0;也可以写入字符串或数字;

float_format : str, optional, 例如 float_format="%.2f" will format 0.1234 to 0.12;

columns : 可选部分列输出,sequence or list of str, optional;

header :指定作为列名的行,默认True,即取第一行,如果是list则重命名列明。bool or list of str, default True;

index : 是否显示行索引(名字),bool, default True,Write row names (index).

pd.to_csv(self, 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='.')

代码实例:

>>> writer = pd.ExcelWriter('out.xlsx')

>>> pd1.to_excel(writer, sheet_name='pd1',index = False)

>>> pd2.to_excel(writer, sheet_name='pd2', na_rep = '/', columns=['样本编号','姓名','送检医院','样本类型'])

>>> writer.save()

输出文件:

输出的out.xlsx的pd1的内容

输出的out.xlsx的pd2的内容

你可能感兴趣的:(python,read_excel,converters)