如何修改 DataFrame 标题?
- 参考 1 Essential Basic Functionality Renaming / mapping labels
rename()方法允许您基于某个映射(字典或系列)或任意函数重新标记轴。
如果方法的参数传递的是一个函数,那么该函数以任意标签为参数调用时必须返回一个值,并且该值必须是集合中的唯一值。
如何读取 Excel 文件?
pandas I/O API 有一组顶层的 reader 函数,以 pd.read_excel() 这样的形式调用,通常返回一个 pandas 对象。而对应的 writer 函数是对象方法,以 df.to_excel() 这样的形式调用。
其中 read_excel() 方法使用 xlrd 模块,有能力读取 Excel 2003 (.xls) 与 Excel 2007+ (.xlsx) 格式文件。实例方法 to_excel() 被用于将 DataFrame 保存为 Excel。
工作簿与表单
在通常的基本用例中,read_excel 使用指向 Excel 文件的路径,及指示要解析表单的 sheet_name 参数。
# Returns a DataFrame
read_excel ('path/to/file.xlsx', sheet_name='sheet1')
ExcelFile 类
为了便于使用同一文件的多个表单工作,ExcelFile 类被用于封装文件,结果可被传入 read_excel 因为多张表单一次读入内存,使得读取性能也会有一些提升。
xlsx = pd.ExcelFile('path/to/file.xlsx')
df = pd.read_excel(xlsx, 'Sheet1')
ExcelFile 类也支持 with 语句
with pd.ExcelFile('path/to/file.xlsx') as xlsx:
df1 = pd.read_excel(xlsx, 'Sheet1')
df2 = pd.read_excel(xlsx, 'Sheet2')
ExcelFile 的基本用例是使用不同的参数解析多张表单
data = {}
with pd.ExcelFile('path/to/file.xlsx') as xlsx:
data['Sheet1'] = pd.read_excel(xlsx, 'Sheet1', index_col = None, na_values = ['NA'])
data['Sheet2'] = pd.read_excel(xlsx, 'Sheet2', index_col = 1)
值得注意的是,若同一参数用于所有的表单,简单的将表单名称列表传递给 read_excel 并不会带来性能的损失。
data = read_excel('path/to/file.xlsx', ['Sheet1', 'Sheet2'], index_col = None, na_values=['NA'])
指定表单
- 参数 sheet_name 允许指定读取的一张或多张表单
- 参数 sheet_name 缺省值是 0 指示读取第一张表单
- 传递一字符串以引用表单名称
- 传递一个整数以引用表单索引
- 传递字符串或整数列表,获得包含指定表单的一个字典
- 传递 None ,获得包含所有可用表单的一个字典
read_excel('path/to/file.xlsx', ['Sheet1', 3])
表头与数据区域
参数 header 用基于 0 的整数指示作为列标签的行号。若参数为整数列表那么这些行将组成多重索引。若无表头参数值为 None 。
参数 skiprows 与 skip_footer 分别指示数据于第几行开始,于倒数第几行结束。
参数 usecols 指示表单中列的子集将被解析装载。usecols 可以是一个整数或整数列表,也可以是字符串。