用pandas的where 实现类似EXCEL中IFS函数
时间: 2023-02-08 21:25:14 浏览: 118
pandas中的where函数可以用来实现类似EXCEL中IFS函数的功能。
语法示例:
```
df['new_column'] = np.where(condition1, value1,
np.where(condition2, value2,
np.where(condition3, value3, value4)))
```
其中condition1, condition2, condition3是布尔值,value1, value2, value3, value4是要填入新列中的值。当condition1为True时,使用value1;当condition1为False且condition2为True时,使用value2;当condition1、condition2均为False且condition3为True时,使用value3;当condition1、condition2、condition3均为False时,使用value4。
示例:
```
df['grade'] = np.where(df['score'] >= 90, 'A',
np.where(df['score'] >= 80, 'B',
np.where(df['score'] >= 70, 'C', 'D')))
```
上面代码中,创建一个名为grade的新列,当score列的值大于等于90时,填入A;当score列的值大于等于80且小于90时,填入B;当score列的值大于等于70且小于80时,填入C;当score列的值小于70时,填入D。
阅读全文