熊猫在迭代中删除列

时间:2019-03-01 14:19:26

标签: python pandas dataframe

我想通过迭代遍历DataFrame来删除所有常量行。这是我尝试执行的操作:

df = pd.DataFrame(np.array([[0, 3, 0, 8, 5],
                            [0, 4, 0, 8, 5],
                            [0, 7, 0, 8, 5],
                            [0, 3, 0, 8, 5],
                            [0, 6, 0, 8, 5]]),
                  columns=['A', 'B', 'C', 'D', 'E'])

def coldrop_constant(df):
    cols = list(range(0, len(list(df))))
    for i in cols:
        print(len(df.iloc[:,i].unique()))
        if len(df.iloc[:,i].unique()) < 2:
            print('delete above')
            df = df.drop(df.columns[i], axis=1, inplace=True)
    return df

df_new = coldrop_constant(df)

但是,线

df = df.drop(df.columns[i], axis=1, inplace=True)

不起作用,这使我感到困惑,因为我读过here就是这样做的方法。

我将非常感谢您的帮助:)

0 个答案:

没有答案