“功能”对象没有属性“应用”

时间:2019-04-07 05:59:40

标签: python pandas apply

我有一个数据框df,其中有一个包含文本数据的“查询”列。

我试图借助apply函数清除文本数据。但是得到上面的错误。我的代码是:

def _remove_noise(input_text):
    input_text = str(input_text).encode('ascii', 'ignore')
    input_text = str(input_text).replace(",", "")
    return input_text

当我使用如下的apply函数调用上述函数时:

df['query1'] = df.query.apply(_remove_noise)

它将错误抛出为:

  

“功能”对象没有属性“应用”

1 个答案:

答案 0 :(得分:3)

DataFrame.query是熊猫函数,因此需要[]来选择列query

df['query1'] = df['query'].apply(_remove_noise)

DataFrame.query用于过滤,就像df.query('col == 1')一样,因此,如果使用df.query.apply,它将链接queryapply函数,并且会引发错误。