pandas中loc和iloc的区别,举例说明
时间: 2023-12-10 13:37:47 浏览: 87
pandas中的`loc`和`iloc`都是用于根据行和列的标签或位置来选择数据的方法,但它们之间有一些不同之处。
- `loc`使用标签来选择行和列。它可以通过标签选择行和列的子集,也可以基于布尔条件选择行和列的子集。
- `iloc`使用整数位置来选择行和列。它可以通过整数位置选择行和列的子集,也可以基于布尔条件选择行和列的子集。
举个例子:
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}, index=['a', 'b', 'c'])
# 使用loc选择行和列
print(df.loc['a', 'A']) # 1
print(df.loc[['a', 'c'], ['A', 'C']]) # A C
# a 1 7
# c 3 9
print(df.loc[df['B'] > 4, 'B']) # b 5
# c 6
# Name: B, dtype: int64
# 使用iloc选择行和列
print(df.iloc[0, 0]) # 1
print(df.iloc[[0, 2], [0, 2]]) # A C
# a 1 7
# c 3 9
print(df.iloc[df['B'] > 4, 1]) # b 5
# c 6
# Name: B, dtype: int64
```
在上面的例子中,我们可以看到`loc`和`iloc`的使用方法和语法非常相似,但是它们的选择方式不同,`loc`使用标签,`iloc`使用整数位置。
阅读全文