介绍一下 pandas 对常见文件的读写操作,主要是总结之前用过一些方法或者例子。pandas在读写文件上提供了丰富的函数,当然也有非常多的参数供我们选择使用,对于这些参数,可以在编译器上进入源码查看学习,而我们只需记住常用的参数即可,有特殊需求可以深入学习。
pandas 官方io操作 api
(1)读取CSV文件:
函数:read_csv()
常用参数:
filepath_or_buffer
:指定路径(不仅是本地,还可以是http
等)。
sep
:指定分割符,默认是‘,’
字符类型。
header
:指定行数用来作为列名,默认是第一行。
names
:指定列头名称(header=None
)。
dtype
:每列数据的类型。例如{‘a’: np.float32}
字典类型,默认为空。
encoding
:编码类型,一般为为utf-8
。
import pandas as pd
path = 'src/data.csv'
df = pd.read_csv(path, encoding='utf-8') # 获取原始数据(CSV)
(2)写入CSV文件:
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=None, quoting=None,
quotechar='"', line_terminator='\n', chunksize=None,
tupleize_cols=None, date_format=None, doublequote=True,
escapechar=None, decimal='.')
(1)读取excel文件:
read_excel()
函数也提供了丰富的参数,其,用法与CSV类似根据名称也可以理解大体意思,具体问题可具体分析。
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, parse_dates=False, date_parser=None, thousands=None,
comment=None, skipfooter=0, convert_float=True, **kwds)
解析:io
表示为文件位置。
(2)写入excel文件:
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)
(3)Python简单示例:
import pandas as pd
def demo():
inpath = 'src/infile.xlsx'
df = pd.read_excel(inpath, 'Sheet1', header=0)
outpath = 'src/newfile.xlsx'
wbw = pd.ExcelWriter(outpath) # 新建一个表格
df.to_excel(wbw, 'Sheet1', index=None, header=None) # 头和列都不写入
wbw.save() # 保存
(4)如果想获得一个excel文件里面的所有Sheet的名字,可以使用下面的方法:
import xlrd
inpath = 'src/infile.xlsx'
sname = xlrd.open_workbook(inpath).sheet_names() # excel文件里面的所有Sheet的名字
import pandas as pd
inpath = 'src/infile.txt'
df = pd.read_table(inpath, header=None, names=['pin', 'cnt'], dtype='str') # 设置列头,所有内容变为字符串类型
总结: pandas对文件操作,各种函数的参数,大部分是可以通用的。
声明: 总结学习,有问题或不妥之处,可以批评指正哦。
下面是对这些参数介绍比较详细文章,可以学习:
pandas.read_csv()
参数:https://www.cnblogs.com/datablog/p/6127000.html