从有问题的值位于单独列表中的数据框中删除行

Drop rows from dataframe where problematic values are in separate list

我有一个问题行列表,其中有一个唯一标识符,我想从数据框中删除所有这些行。

我试过使用 loc 来索引它们,如下所示:

df.loc[df['GUID'] != toDel['GUID']]

其中 df 是 5063 行 x 28 列,toDel['GUID'] 是我想从 df 中删除的 GUID 列表。

我希望这会给我一个不包含有问题的行的 df。但是,我得到一个 'valueError: Can only compare identically-labeled Series objects.' 我想这意味着它们必须是相同大小的系列,但是我如何使用此 toDel['GUID'] 列表摆脱有问题的 GUID?

要仅保留 GUIDtoDel['GUID'] 中的行,您可以这样做

df.loc[df['GUID'].isin(toDel['GUID'])]