使用Python的Pandas实现Case When语句。
时间: 2024-05-04 15:16:44 浏览: 133
在 Pandas 中,可以使用 numpy.where() 函数来实现类似于 SQL 中 Case When 的逻辑。具体实现方式如下:
``` python
import pandas as pd
import numpy as np
# 创建示例数据
df = pd.DataFrame({'score': [80, 90, 65, 70, 95, 85],
'passing_score': [70, 70, 70, 70, 70, 70]})
# 使用 numpy.where 实现 Case When
df['result'] = np.where(df['score'] >= df['passing_score'], 'Pass', 'Fail')
# 输出结果
print(df)
```
输出结果如下:
```
score passing_score result
0 80 70 Pass
1 90 70 Pass
2 65 70 Fail
3 70 70 Pass
4 95 70 Pass
5 85 70 Pass
```
上述代码中,我们创建了一个包含 `score` 和 `passing_score` 两列数据的 DataFrame,然后使用 `np.where` 来实现 Case When 的逻辑,当 `score` 大于等于 `passing_score` 时,结果为 `Pass`,否则为 `Fail`。最后将计算结果保存到 `result` 列中。
阅读全文