dataframe根据值取位置
时间: 2023-09-06 11:02:09 浏览: 126
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
在DataFrame中,可以使用`.loc`和`.iloc`两种方法根据值来获取位置。
`.loc`方法根据行标签和列标签来获取位置。可以使用具体的标签值,也可以使用布尔型的条件进行筛选。例如:
```
import pandas as pd
df = pd.DataFrame({'姓名': ['张三', '李四', '王五', '赵六'],
'年龄': [25, 30, 28, 32],
'性别': ['男', '女', '男', '女']})
# 根据标签获取位置
print(df.loc[1, '年龄']) # 输出30,表示获取第1行、'年龄'列的值
# 根据条件获取位置
print(df.loc[df['年龄']>28, '姓名']) # 输出['李四', '赵六'],表示获取'年龄'大于28的行,'姓名'列的值
```
`.iloc`方法根据行索引和列索引来获取位置。可以使用具体的索引值,也可以使用切片和布尔型的条件进行筛选。例如:
```
import pandas as pd
df = pd.DataFrame({'姓名': ['张三', '李四', '王五', '赵六'],
'年龄': [25, 30, 28, 32],
'性别': ['男', '女', '男', '女']})
# 根据索引获取位置
print(df.iloc[1, 1]) # 输出30,表示获取第1行、第1列的值
# 根据条件获取位置
print(df.iloc[df['年龄'].values>28, df.columns.get_loc('姓名')]) # 输出['李四', '赵六'],表示获取'年龄'大于28的行,'姓名'列的值的位置
```
通过使用`.loc`和`.iloc`方法,我们可以根据DataFrame中的具体值来获取对应位置的数据。
阅读全文