pandas 根据条件对某列进行赋值
时间: 2023-07-17 09:59:23 浏览: 151
对pandas将dataframe中某列按照条件赋值的实例讲解
您可以使用 Pandas 的 loc 方法根据条件对某列进行赋值。以下是一个示例:
假设我们有一个包含学生信息的 DataFrame,其中包含姓名、年龄和成绩列。我们想要根据年龄大于等于18岁的学生,将其成绩列的值设为"合格"。可以按照以下步骤进行操作:
```python
import pandas as pd
# 创建示例 DataFrame
data = {'姓名': ['张三', '李四', '王五', '赵六'],
'年龄': [20, 17, 19, 22],
'成绩': ['不合格', '不合格', '不合格', '不合格']}
df = pd.DataFrame(data)
# 根据条件对成绩列进行赋值
df.loc[df['年龄'] >= 18, '成绩'] = '合格'
```
在上述代码中,`df['年龄'] >= 18` 是条件表达式,它返回一个布尔型的 Series,表示每个学生是否满足年龄大于等于18岁的条件。`df.loc[df['年龄'] >= 18, '成绩']` 选择了满足条件的行,并且只选择了"成绩"列。将`'成绩'`列的值设置为`'合格'`。
执行以上代码后,DataFrame 中年龄大于等于18岁的学生的成绩将被设置为"合格"。
阅读全文