【问题标题】:Find duplicate values across rows, Python跨行查找重复值,Python
【发布时间】:2021-04-13 18:17:46
【问题描述】:

我想跨行查找重复值。例如第 1 行有 3 个重复项 (A)。保留第一个值(或保留其中任何一个),并将其他重复值替换为 nan

col1 col2 col3. col4
1 A A A Y
2 B D G L
3 E F T K
data = {'col1':['A', 'B', 'E'],
        'col2':['A', 'D', 'F'],
        'col3':['A', 'G', 'T'],
        'col4':['Y', 'L', 'K']}
  
# Create DataFrame
df = pd.DataFrame(data)  

谢谢。

【问题讨论】:

  • 请在询问dataframe时,提供python代码来准确重现您的问题,为DataFrame构造提供数据,这样我们就可以不用自己写了。还要准确显示预期的输出,避免无法理解文本;)
  • 感谢您的反馈。我会这样做的。

标签: python pandas duplicates


【解决方案1】:

使用pandas.DataFrame.transpose(),然后检查每一列的重复项。

df_ = df.T

for col in df_.columns:
    duplicated = df_.duplicated(col)
    df_.loc[duplicated, col] = np.NaN
# print(df_.T)

  col1 col2 col3
0    A  NaN  NaN
1    B    D    G
2    E    F    T

【讨论】:

    猜你喜欢
    • 2020-05-05
    • 1970-01-01
    • 2017-01-19
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    • 2019-12-06
    相关资源
    最近更新 更多