Python Pandas库read_excel()参数实例详解
Python Pandas库提供了一个名叫read_excel()的函数,支持读取并解析Excel文档。该函数提供了多个参数设置,为用户读取特定的数据提供了灵活性和可扩展性。
本文将详细介绍read_excel()函数的参数。
read_excel()参数说明
io
-
参数类型:字符串,文件路径或URL。
-
参数说明:提供Excel文件的文件路径或URL。
-
示例代码:
import pandas as pd
df = pd.read_excel('example.xlsx')
print(df)
sheet_name
-
参数类型:字符串或整数。
-
参数说明: 指定要读取的sheet页名称或序号。支持输入多种参数类型,如整数、字符串、字符串列表、None等,详见示例。
-
示例代码:
import pandas as pd
# 读取第二个sheet页
df1 = pd.read_excel('example.xlsx', sheet_name=1)
print(df1)
# 读取多个sheet页
df2 = pd.read_excel('example.xlsx', sheet_name=['sheet1', 'sheet3'])
print(df2)
# 读取所有sheet页
df3 = pd.read_excel('example.xlsx', sheet_name=None)
print(df3)
header
-
参数类型:整数或None。
-
参数说明:输入0表示将第一行作为表头,输入None表示不将第一行作为表头。
-
示例代码:
import pandas as pd
# 将第一行做为表头读取
df1 = pd.read_excel('example.xlsx', header=0)
print(df1)
# 不将第一行做为表头读取
df2 = pd.read_excel('example.xlsx', header=None)
print(df2)
index_col
-
参数类型:整数、字符串、表头的名称或None。
-
参数说明:指定哪些列应该作为索引。若为整数或表头名称,则表示将该列作为单个索引,若为字符串列表,则一次将这些列组合成多级索引。若为None,则表示不使用索引。
-
示例代码:
import pandas as pd
# 读取第一列做为索引
df1 = pd.read_excel('example.xlsx', index_col=0)
print(df1)
# 读取 'A' 和 'C' 两列做为多级索引
df2 = pd.read_excel('example.xlsx', index_col=['A', 'C'])
print(df2)
# 不将行设置为索引
df3 = pd.read_excel('example.xlsx', index_col=None)
print(df3)
usecols
-
参数类型:字符串列表,整数、字符串或None。
-
参数说明:设置需要读取的列。支持字符串列表、整数和字符串类型的混合输入,详见示例。若为None,则表示读取所有列。
-
示例代码:
import pandas as pd
# 读取A、B、D、E 列
df1 = pd.read_excel('example.xlsx', usecols=['A', 'B', 'D', 'E'])
print(df1)
# 读取第3列和第5列
df2 = pd.read_excel('example.xlsx', usecols=[2, 4])
print(df2)
# 读取所有列
df3 = pd.read_excel('example.xlsx', usecols=None)
print(df3)
nrows
-
参数类型:整数或None。
-
参数说明:设置要读取的行数。若为None,则表示读取所有行。
-
示例代码:
import pandas as pd
# 读取前10行
df1 = pd.read_excel('example.xlsx', nrows=10)
print(df1)
# 读取所有行
df2 = pd.read_excel('example.xlsx', nrows=None)
print(df2)
示例
本节将在示例数据集 example.xlsx 中演示以上参数的应用。
示例1:读取第二个 sheet 页,将第一行做为表头,读取第一列做为索引
import pandas as pd
df = pd.read_excel('example.xlsx', sheet_name=1, header=0, index_col=0)
print(df)
输出结果:
name class score1 score2
No
3 张三 1 98 70
4 李四 1 92 65
5 王五 2 89 87
6 赵六 2 82 88
示例2:读取所有 sheet 页,将所有行、列读取进来,在python内部筛选
import pandas as pd
#读取整个excel文件
df_all = pd.read_excel('example.xlsx', sheet_name=None, header=None)
#指定下标筛选结果
df1 = df_all[0].iloc[:, :2] #取前两列及所有行
df2 = df_all[1] #取第二个Sheet页
df3 = df_all[2].drop([0]) # 去除第一行
#输出结果
print(df1)
print(df2)
print(df3)
输出结果:
0 1
0 header1 NaN
1 1 df 1
2 2 df 2
3 3 df 3
4 4 df 4
0 1 2 3
0 A B C D
1 1 value1 value2 value3
2 2 value4 value5 value6
3 3 value7 value8 value9
0 1 2 3
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3
4 A4 B4 C4 D4
5 A5 B5 C5 D5
6 A6 B6 C6 D6
7 A7 B7 C7 D7
8 A8 B8 C8 D8
9 A9 B9 C9 D9
10 A10 B10 C10 D10
11 A11 B11 C11 D11
12 A12 B12 C12 D12
13 A13 B13 C13 D13
至此,本文已经介绍了Pandas库read_excel()函数的各个参数及其用法,希望能对您的工作和学习有所帮助。