首页 > 解决方案 > 检查数据框的两列是否在python中具有不同顺序的相同元素

问题描述

column1=[0,0,0,0,1,0,1,0,0,0]
column2=[1,0,1,0,0,0,0,0,0,0]
column3=[0,0,1,0,1,0,0,0,0,0]
column4=[0,0,1,1,0,0,0,0,0,0]

这里 column2 和 column3 与 column1 相同,但顺序不同,所以我需要一个函数来删除按顺序重复的列但是 column4 有连续的两个 1,因此与 column1 或 column2 或 column3 中的顺序不匹配。def dup_cols: #remove 循环有序列值

请帮助我使用我需要的功能

我想要的输出是:只有 column1 与 column2 和 column3 相比,其他两列相似但顺序不同,但在 column4 的情况下则不然,因为它有两个连续的 1。

所需输出: column1[0,0,0,0,1,0,1,0,0,0] column4[0,0,1,1,0,0,0,0,0,0]

因为其他人是重复的

标签: pythonpandasdataframe

解决方案


这应该有效:

def dup_cols(x,y):
    if x.sort()==y.sort():
        df.drop([y], axis=1, inplace=True)

list=df.columns
for i in range(len(list)-1):
    for k in range(i+1, len(list)):
        dup_cols(i,k)
        

推荐阅读