我有以下数据框:
ID Name Date Code Manager
1 Paulo % 10 Jonh's Peter
2 Pedro 2001-01-20 20
3 James 30
4 Sofia 2001-01-20 40 -
我需要一种方法来检查多个列(在本例中为“日期”、“代码”和“经理”)是否填充了任何值。如果这 3 列中的任何一列中有空白,则将所有 3 列中的所有值都空白,返回以下数据:
ID Name Date Code Manager
1 Paulo % 10 Jonh's Peter
2 Pedro
3 James
4 Sofia 2001-01-20 40 -
对于这种情况最好的解决方案是什么?
最佳答案
您可以使用pandas.DataFrame.loc
根据条件替换某些列中的值。
考虑到您的数据框名为df
:
您可以使用此代码来获得预期的输出:
df.loc[df[["Date", "Code", "Manager"]].isna().any(axis=1), ["Date", "Code", "Manager"]] = ''
>>>打印(df)
关于python - 检查是否填充了多行,如果没有填充所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73510828/