繁体   English   中英

创建一个只有重复行的新数据框

[英]Create a new dataframe with only duplicated rows

我想要一个新的数据框,其中只有在前一个 df 中重复的行。 我尝试分配一个新列,如果有重复项,则为 true,然后仅选择为 true 的行。 但是我得到了 0 个实体。 我确定我想在旧数据框中保留第一行并删除所有其他重复项的 df 中有重复项。 具有重复值的列称为“合并”

df=df.assign(
    is_duplicate= lambda d: d.duplicated()
).sort_values('merged').reset_index(drop=True)
df2= df.loc[df['is_duplicate'] == 'True']

我认为你需要boolean indexing ,应该删除loc

df[df.duplicated()]

或者您的解决方案不能与.reset_index(drop=True) ,因为然后过滤了另一行,在解决方案之前或之后排序也应该更好:

df = df.assign(is_duplicate= lambda d: d.duplicated())
df2= df[df['is_duplicate']]

它们不是字符串,而是布尔值,因此请使用:

df2 = df.loc[df['is_duplicate']]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM