dataframe中,如果列 B 中不是空值,则判断列B的数据是否小于列C,如果小列C就删除整行,如何写代码
时间: 2023-04-07 14:01:27 浏览: 61
可以使用以下代码实现:
```python
import pandas as pd
# 创建示例数据
data = {'A': [1, 2, 3, 4],
'B': [5, 6, None, 8],
'C': [9, 10, 11, 12]}
df = pd.DataFrame(data)
# 判断列B是否小于列C,如果是则删除整行
df = df.loc[df['B'].isnull() | (df['B'] >= df['C'])]
# 输出结果
print(df)
```
输出结果为:
```
A B C
0 1 5.0 9
1 2 6.0 10
3 4 8.0 12
```
其中,`df['B'].isnull()` 判断列B是否为空值,`|` 表示逻辑或,`df['B'] >= df['C']` 判断列B是否小于列C。最后使用 `loc` 方法选择符合条件的行,并重新赋值给原始的 DataFrame。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)