我有一个很大的数据帧(~1百万行),我需要根据唯一标识符Trade\u Id删除一些行。我在另一个名为tib的数据帧变量上有这些行的内容(在我的测试数据库上是45000行)。我的方法是这个
lentib=len(tib)
for i in range(0,lentib,1): # VERY SLOW
dat=dat[dat.Trade_Id!=tib.Trade_Id[i]]
但问题是它非常慢,而且执行dat[dat.Trade_Id!=tib.Trade_Id]
不起作用。你知道吗
为了提高计算效率,有人有更好的想法吗?我有其他像这样的数据库工作,我不想两天计算这个。你知道吗
使用^{} 和否定运算符
~
将它们过滤掉:^{} 将生成一个布尔掩码,您可以使用
~
反转它。这将删除包含id的行示例:
面具看起来像这样:
相关问题 更多 >
编程相关推荐