【发布时间】:2026-02-12 10:20:06
【问题描述】:
我对此有疑问: 我收到错误“
bar() 缺少 1 个必需的位置参数:'self'
" 我试过摆弄这些类(使用它们而不是使用它们)和 self 变量,但我什么都没有。函数 bar() 来自我导入的 pandas 库以及数据框 (df) 对象。我已经附上了我的代码的主要功能和发生错误的功能。
def createDataframe(assessments):
df = pd.DataFrame
for review in assessments:
for skills in review.skillList:
for skill in skills:
tmp = pd.DataFrame({str(skill[:2]): [skill[3:]]})
df.merge(tmp, how = 'right', right=tmp)
return df
def plotData(df):
ax = df.plot.bar(x='1.')
plt.show()
def main():
# Ensure proper CMD Line Arg
if len(sys.argv) > 3:
print("Error!")
return 1
assessments = dataParse()
df = createDataframe(assessments)
plotData(df)
欢迎任何帮助!告诉我!
编辑: 正如 tdy 在下面的评论中所说。我需要添加括号来创建一个实例。现在我没有收到任何错误,但在打印 df 时我什么也没有,在绘制信息时也没有任何显示
【问题讨论】:
-
似乎
createDataframe正在返回类pandas.DataFrame,而不是实例。 -
df = pd.DataFrame需要括号来创建实例:df = pd.DataFrame() -
在合并 df 代码中使用
df = df.merge…。该函数返回一个数据框,而不是就地合并。
标签: python pandas positional-parameter