缺少 1 个必需的位置参数:'self'

Missing 1 required position argument: 'self'

我遇到了一个问题: 我收到错误消息“

bar() missing 1 required positional argument: '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 时我什么也没有,在绘制信息时什么也没有显示

Pandas 数据框没有就地选项 merge。在合并 df 时的代码中,然后像这样将其分配回 df

 df = df.merge(tmp, how=‘right’, right=tmp)