我有这样一个数据框:
userid number weight mask
0 17cf2504d0c7 1 1 56
1 17cf2504d0c7 2 5 56
2 17cf2504d0c7 3 3 123
我只是想返回一个子集,其中“权重”出现在数字“掩码”列表中
userid number weight mask
1 17cf2504d0c7 2 5 56
2 17cf2504d0c7 3 3 123
我似乎很困惑,没有使用迭代器,这似乎是对熊猫的浪费。
最佳答案
嗯,一种方法是将整数转换为set
并使用设置减法。
mask_ = df.weight.astype(str).apply(set).sub(df['mask'].astype(str).apply(set)).str.len().eq(0)
然后
df.loc[mask_, :]
userid number weight mask
1 17cf2504d0c7 2 5 56
2 17cf2504d0c7 3 3 123
关于python - Pandas 基于column.isin.list(column)返回子集,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55553946/