【问题标题】:AttributeError: Unknown property column [closed]AttributeError:未知的属性列[关闭]
【发布时间】:2018-12-01 06:24:15
【问题描述】:

直方图代码工作正常,但在为我的绘图创建函数后,我收到一条错误消息。 [注意:我必须把它放在一个函数中,因为我想在 Jupyter Notebook 的幻灯片中显示可视化,但没有代码。所以这将是一个好方法,然后只显示函数调用。]

def plotX(df):
df.hist(column='x', figsize=(10,5), bins=105,color="teal")
plt.title("show x")
plt.xlabel('x')
plt.ylabel('y')

然后我调用函数:

plotX(df.x)

然后我收到一条错误消息:

 AttributeError: 未知属性列 

直方图显示在错误消息之后。但错误也在我的幻灯片中。对此错误消息有什么想法吗?

【问题讨论】:

  • dfdf.x是什么类型。
  • 试试plotX(df)而不是plotX(df.x)
  • 当我尝试 plotX(x) 时,我得到一个 NameError: name 'x' is not defined
  • df' 是一个带有多列的 pandas 数据框,df.x 是 int64
  • 我认为如果你提供df.x,你应该删除column='x',。如果你提供df column="x" 是有道理的。

标签: python pandas matplotlib error-handling histogram


【解决方案1】:

可以通过两种方式解决。

def plotX(df):
    df.hist(column='x',figsize=(10,5), bins=105,color="teal")
    plt.title("show x")
    plt.xlabel('x')
    plt.ylabel('y')

plotX(df)

def plotX(df):
    df.hist(figsize=(10,5), bins=105,color="teal")
    plt.title("show x")
    plt.xlabel('x')
    plt.ylabel('y')

plotX(df.x)

你得到了错误,因为 hist 需要一个元素数组。当你说df.x时,它给出了一个pandas系列,足以创建直方图,无需提及column=x

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-03
    • 1970-01-01
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 2022-06-12
    • 2015-09-24
    • 1970-01-01
    相关资源
    最近更新 更多