Pandas中iloc索引方式详解
iloc
是 Pandas 库中的一个重要功能,它提供了基于整数位置的索引方式。与 loc
不同,iloc
不是基于标签的索引,而是基于行号和列号的索引。这使得 iloc
在处理大型数据集时非常高效,因为它避免了查找标签的开销。
以下是 iloc
的一些基本用法:
- 选择单个元素:
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data) # 选择第1行(从0开始计数)、第0列(从0开始计数)的元素element = df.iloc[0, 0]
print(element) # 输出:1
- 选择多行多列:
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data) # 选择第0行和第1行,第0列和第1列的元素sub_df = df.iloc[[0, 1], [0, 1]]
print(sub_df)
# 输出:# A B# 0 1 4# 1 2 5
- 选择行切片:
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data) # 选择第0行到第1行(不包括第2行)sub_df = df.iloc[0:2]
print(sub_df)
# 输出:# A B# 0 1 4# 1 2 5
- 选择列切片:
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data) # 选择第0列到第1列(不包括第2列)sub_df = df.iloc[:, 0:2]
print(sub_df)
# 输出:# A B# 0 1 4# 1 2 5# 2 3 6
- 选择行和列切片:
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data) # 选择第0行到第1行(不包括第2行),第0列和第1列sub_df = df.iloc[0:2, 0:2]
print(sub_df)
# 输出:# A B# 0 1 4# 1 2 5
需要注意的是,iloc
的切片操作是左闭右开的,即选择的起始索引是包含在内的,而结束索引是不包含在内的。这与 Python 的切片操作相同。
版权声明:如无特殊标注,文章均为本站原创,转载时请以链接形式注明文章出处。
评论