我有一个有很多“坏”单元格的数据帧。比方说,它们的值都是-99.99,我想删除它们(将它们设置为NaN)
这很好:
df[df == -99.99] = None
但实际上,我只想在同一行中的另一个单元格是market为1时删除所有这些单元格(例如,在“Error”列中)
我想删除所有-99.99单元格,但前提是df[“Error”]==1
我认为最直接的解决方案是
df[(df == -99.99) & (df["Error"] == 1)] = None
但它给了我一个错误:
ValueError: cannot reindex from a duplicate axis
我在互联网上尝试了所有给定的解决方案,但都无法实现(
因为我的数据帧很大,所以我不想迭代它(这当然可以,但需要很多时间)
有什么提示吗
尝试在传递numpy值时使用广播:
输出:
至少,这是可行的(但使用列迭代):
相关问题 更多 >
编程相关推荐