有人可以解释我的python代码中的以下错误吗?

数据挖掘 数据挖掘 Python
2022-03-11 16:30:46

我正在分析 Python 中的数据集以用于严格的学习目的。在我编写的下面的代码中,我遇到了一些我无法摆脱的错误。首先是代码:

plt.plot(decade_mean.index, decade_mean.values, 'o-',color='r',lw=3,label = 'Decade Average')
plt.scatter(movieDF.year, movieDF.rating, color='k', alpha = 0.3, lw=2)
plt.xlabel('Year')
plt.ylabel('Rating')
remove_border()

我收到以下错误:

1. TypeError: 'str' object is not callable
2. NameError: name 'remove_border' is not defined

此外,label='Decade Average' 未显示在图中。

最让我困惑的是,在一个单独的绘图代码片段(见下文)中,我没有得到上面的第一个错误,尽管remove_border仍然是一个问题。

plt.hist(movieDF.rating, bins = 5, color = 'blue', alpha = 0.3)
plt.xlabel('Rating')

对所有或部分错误的任何解释将不胜感激。谢谢

根据评论,我在下面发布数据和回溯:decade_mean 下面给出。

year
1970    8.925000
1980    8.650000
1990    8.615789
2000    8.378947
2010    8.233333
Name: rating, dtype: float64

追溯:

TypeError                                 Traceback (most recent call last)
<ipython-input-361-a6efc7e46c45> in <module>()
      1 plt.plot(decade_mean.index, decade_mean.values, 'o-',color='r',lw=3,label = 'Decade Average')
      2 plt.scatter(movieDF.year, movieDF.rating, color='k', alpha = 0.3, lw=2)
----> 3 plt.xlabel('Year')
      4 plt.ylabel('Rating')
      5 remove_border()

TypeError: 'str' object is not callable

我已经解决了 remove_border 问题。这是我犯的一个愚蠢的错误。但我无法弄清楚“str”的问题。

2个回答

似乎remove border没有定义。您必须在使用前定义函数。

我不知道字符串错误来自哪里,我不清楚。如果您发布完整的回溯,它将更加清晰。

最后你的标签没有显示,因为你必须调用该方法plt.legend()

在我看来,这remove_border()并没有被认为是一种功能。看到你没有列出它所属的包,你自己实现了吗?Python 猜测这remove_border是一个字符串,而您正试图“调用它”——把它当作一个函数来对待。第二个错误是说同样的事情,该函数remove_border没有在 Python 可以找到的任何地方定义。