目录
1 iloc()讲解
1.1 简介
iloc
是Pandas库中用于通过行和列的整数位置进行索引的方法。它可以用来选择和访问数据框(DataFrame)中的特定行和列。
1.2 语法
dataframe.iloc[行位置, 列位置]
1.3 用法举例
1.选择特定的行
# 选择第1行
dataframe.iloc[0]
# 选择第1到第3行
dataframe.iloc[0:3]
# 选择第1、3、5行
dataframe.iloc[[0, 2, 4]]
2.选择特定的列
# 选择第1列
dataframe.iloc[:, 0]
# 选择第1到第3列
dataframe.iloc[:, 0:3]
# 选择第1、3、5列
dataframe.iloc[:, [0, 2, 4]]
3.选择特定的行和列
# 选择第1行和第1列的元素
dataframe.iloc[0, 0]
# 选择第1到第3行和第1到第3列的子数据框
dataframe.iloc[0:3, 0:3]
# 选择第1、3、5行和第1、3、5列的子数据框
dataframe.iloc[[0, 2, 4], [0, 2, 4]]
请注意,iloc
使用的是基于零的索引,因此第一个行或列的位置是0而不是1。
2 loc()讲解
2.1 简介
loc
是Pandas库中用于通过标签进行索引的方法。它可以用于选择和访问数据框(DataFrame)中的特定行和列。
2.2 语法
dataframe.loc[行标签, 列标签]
其中,行标签
和列标签
可以是单个标签、标签切片或标签列表。可以省略其中一个参数来选择所有行或所有列。
2.3 用法举例
1.选择特定的行
# 选择行标签为'A'的行
dataframe.loc['A']
# 选择行标签为'A'到'C'的行
dataframe.loc['A':'C']
# 选择行标签为'A'、'C'、'E'的行
dataframe.loc[['A', 'C', 'E']]
2.选择特定的列
# 选择列标签为'Column1'的列
dataframe.loc[:, 'Column1']
# 选择列标签为'Column1'到'Column3'的列
dataframe.loc[:, 'Column1':'Column3']
# 选择列标签为'Column1'、'Column3'、'Column5'的列
dataframe.loc[:, ['Column1', 'Column3', 'Column5']]
3.选择特定的行和列
# 选择行标签为'A'的行和列标签为'Column1'的列的元素
dataframe.loc['A', 'Column1']
# 选择行标签为'A'到'C'的行和列标签为'Column1'到'Column3'的列的子数据框
dataframe.loc['A':'C', 'Column1':'Column3']
# 选择行标签为'A'、'C'、'E'的行和列标签为'Column1'、'Column3'、'Column5'的列的子数据框
dataframe.loc[['A', 'C', 'E'], ['Column1', 'Column3', 'Column5']]
请注意,loc
使用的是标签索引,而不是基于零的整数索引。因此,标签必须与实际的行标签和列标签匹配。
3 iloc和loc区别联系
iloc
和loc
是Pandas库中用于索引和访问数据的两种方法,它们之间存在以下区别和联系:
-
索引方式:
iloc
使用基于零的整数位置进行索引,通过行和列的整数位置来选择数据。loc
使用标签进行索引,通过行和列的标签来选择数据。
-
索引对象类型:
iloc
使用整数位置作为索引,可以接受整数、整数切片或整数列表作为参数。loc
使用标签作为索引,可以接受标签、标签切片或标签列表作为参数。
-
切片方式:
iloc
使用Python的切片语法,即左闭右开,例如[start:end]
。loc
使用Pandas的切片语法,即左闭右闭,例如[start:end]
。
-
索引类型:
iloc
使用整数索引,无论数据框的索引类型是整数索引还是标签索引。loc
使用标签索引,无论数据框的索引类型是整数索引还是标签索引。
-
参数省略:
iloc
可以省略行参数或列参数中的一个来选择所有行或所有列。loc
可以省略行参数或列参数中的一个来选择所有行或所有列。
-
引用方式:
iloc
在选择数据时使用的是复制引用的方式,即返回的是数据的副本。loc
在选择数据时使用的是原地引用的方式,即返回的是数据的视图。
综上所述,iloc
和loc
提供了不同的索引方式,可以根据需要选择合适的方法来操作和访问数据。使用iloc
时需要使用整数位置进行索引,而使用loc
时需要使用标签进行索引。