32.loc和 iloc 函数都是用来选择某行的, loc 与 iloc 的不同是: loc 是按照行索引所在的位置来选取数据,参数只能是整数。而 iloc 是按照索引名称来选取数据,参数类型依索引类型而定
时间: 2024-03-25 14:39:32 浏览: 71
对pandas中iloc,loc取数据差别及按条件取值的方法详解
实际上,关于 loc 和 iloc 函数的描述有一些不太准确。这两个函数的主要区别在于选择行的方式,而不是参数类型。
具体来说,loc 函数是根据行标签(行索引名称)来选择行的,参数可以是行标签的列表、切片或布尔型数组。而iloc 函数则是根据行索引的位置来选择行的,参数可以是整数、整数列表、切片或布尔型数组。
下面是一些示例:
```
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' 的行
print(df.loc[['a', 'c']]) # 选择行标签为 'a' 和 'c' 的行
print(df.loc['b': 'c']) # 选择行标签从 'b' 到 'c' 的行
print(df.loc[df['A'] > 1]) # 根据条件选择行
# 使用 iloc 函数选择行
print(df.iloc[0]) # 选择第 1 行
print(df.iloc[[0, 2]]) # 选择第 1 行和第 3 行
print(df.iloc[1:3]) # 选择第 2 行到第 3 行
print(df.iloc[df['A'] > 1]) # 根据条件选择行
```
在上述代码中,我们创建了一个 DataFrame,并使用 loc 和 iloc 函数选择了不同的行。需要注意的是,loc 和 iloc 函数的参数类型可以是各种不同的类型,如整数、字符串、切片和布尔型数组,具体使用哪种类型取决于选择行的方式。
阅读全文