我的df中有一列,比如df["col1"]和一个元素列表,比如lst=[…..]但是col1和list元素是字符串。我想在不考虑排序的情况下检查这些值是否相同。例如
df["col1"] = 1,2,3,4,5,6,7,8,1
lst = [8,7,6,5,4,3,2,1,1]
这应该给我正确的答案,因为我有完全相同的元素,只是顺序不同。如果长度不同或其他任何情况,它应该给我False。
谢谢。
如果您有唯一的值,请使用set
操作:
set(df['col1']) == set(lst)
否则,比较元素的Counter
:
from collections import Counter
Counter(df['col1']) == Counter(lst)
两个操作都应具有O(n)
复杂性。