【问题标题】:Pandas apply lambda to the entire dataframe [duplicate]熊猫将 lambda 应用于整个数据框 [重复]
【发布时间】:2018-03-27 11:00:45
【问题描述】:

谁能解释一下为什么这段代码不能工作?

wordsCount = {}

def addWord(x):
    print(x)

df.apply(addWord(x))

返回错误:TypeError: ("'NoneType' object is not callable", 'occured at index 0') 数据框 df 在某个单元格中包含一些 None 值。我的意图是将函数应用于所有非 None 值。

【问题讨论】:

  • .apply() 需要一个函数,但是您通过调用 addWord(x) 将返回值传递给它,它是 None,因为在 addWord 函数中没有指定返回值。不带括号直接传递addWord
  • 好的,谢谢。所以现在我发现与应用相比,我只能遍历列。我想迭代数据框的每个元素是什么?

标签: python pandas dataframe lambda


【解决方案1】:

使用pandas.DataFrame.applymap

df.applymap(addWord)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-04
    • 2018-11-13
    • 1970-01-01
    • 2020-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多