我有一个pandas dataframe,我想去掉'A‘列是负数的行。我知道两种方法:
df = df[df['A'] >= 0]或
selRows = df[df['A'] < 0].index
df = df.drop(selRows, axis=0)推荐的解决方案是什么?为什么?
发布于 2019-03-07 05:51:25
df = df[df['A'] >= 0]确实是更快的解决方案。
当然,简单的解决方法是文本推荐的:
df = df[df['A'] >= 0].copy()发布于 2018-06-05 06:55:53
你的问题是这样的:“我有两个一模一样的蛋糕,但其中一个有糖霜。哪个卡路里更高?”
第二种解决方案是做同样的事情,但要做两次。一个过滤步骤就足够了,不需要过滤,然后冗余地继续调用一个函数,该函数执行与上一步中的过滤操作完全相同的操作。
需要说明的是:不管操作如何,您仍然在做同样的事情:生成一个布尔掩码,然后对其进行索引。
https://stackoverflow.com/questions/50689823
复制相似问题