【问题标题】:Pandas - AttributeError: 'NoneType' object has no attribute 'pipe'Pandas - AttributeError:“NoneType”对象没有属性“管道”
【发布时间】:2019-09-25 11:19:25
【问题描述】:

我加载了一个 csv,尝试通过管道传输一些函数并得到以下错误: AttributeError:“NoneType”对象没有属性“管道”

df = pd.read_csv('file.csv')

def func1(df):
    df['newcol'] = ...some code

def func2(df):
    df['newcol2'] = ...some code

(
df.pipe(func1)
 .pipe(func2)
)

当我打印出 df 时,它会正常打印数据帧。不知道为什么我会收到这个错误。熊猫 v0.24.2。 Python v3.7

【问题讨论】:

  • 我想 df.pipe(func1) 会进行适当的计算并且不返回“self”而是返回“None”。您必须在两条单独的行上运行它。文档另有说明,所以我不确定。
  • 我想我明白了,您需要从 func1 和 func2 中返回数据帧。它在文档中说管道返回“object:func的返回类型。”,目前是None。
  • @tmwilson26 很有趣。那行得通。我遵循了 Pandas 文档 df.pipe(func1).pipe(func2) 中显示的链式流水线...

标签: python pandas


【解决方案1】:

您需要从 func1 中 return df,因为它是 func2 的输入。 我遇到了同样的问题,因为我没有从中间的函数返回 df。希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 2019-03-15
    • 2019-01-01
    • 2021-12-26
    • 2019-07-23
    • 2018-05-13
    • 2020-09-07
    • 2017-05-03
    • 2023-03-16
    • 2018-07-14
    相关资源
    最近更新 更多