pd.drop()抛出TypeError:'>' 'str'和'int'实例之间不支持

时间:2018-03-29 17:20:53

标签: python python-3.x pandas dataframe typeerror

标题中的错误对我来说非常奇怪。

我有一个数据框copy_data,我正在尝试从中删除一组列。

我生成要删除的列名称集:

set_to_remove = set(list(copy_data)) - set([self.farmConfig['mapping'][column]['column'].split('.')[0] for column in self.farmConfig['mapping']])

其中self.farmConfig的结构如下:

farmConfig = {
    'mapping': {
        'A': {
            'column': 'a'
        },
        'B': {
            'column': 'b'
        },
        ...
    }
}

我可以确认set_to_remove的结果是列集的有效子集。然后我打电话给copy_data.drop(list(set_to_remove), inplace=True),我遇到了这个错误。

请注意,出于某种原因,当copy_data较小时,这种方法有效,但当我以完整大小运行时,它会失败。

所以我的问题是 - 为什么我会收到此错误,我该如何解决?

1 个答案:

答案 0 :(得分:1)

您是否忘记了axis=1参数?

copy_data.drop(list(set_to_remove), axis=1, inplace=True)