所以我有这个代码
unique_values = df.drop_duplicates(keep=False)
for _, row in unique_values.iterrows():
mask = (df == row).all(axis=1)
df_subset = df[mask]
所以上面的代码应该找到 Dataframe 中所有唯一的行,然后找到原始 Dataframe 中所有匹配这些值的行。不管什么原因,上面的代码df_subset
只返回一行 Dataframe ,即使原始 Dataframe 中有多行匹配row
。我如何得到Pandas行中所有具有特定列值的行?
例如,如果我有row=[0,01]和一个类似于[[0,0,1],[2,2,0],[0,0,1],[0,0,1],[0,0,1]]的 Dataframe ,它应该返回索引0,2,3,4。
4条答案
按热度按时间bihw5rsg1#
IIUC,您可以用途:
详情:
输入 Dataframe :
34gzjxbg2#
基于
numpy broadcasting
的另一种可能的解决方案是:输出:
0h4hbjxa3#
您可以使用isin Pandas方法
gkl3eglg4#
您可以对所有列唯一值尝试此操作