AttributeError: 'DataFrame' object has no attribute 'melt'

AttributeError: 'DataFrame' object has no attribute 'melt'

我在 Jupyter 笔记本上使用 python 3.6。我正在尝试在名为 bshort 的简单 317x83 数据框上使用 pandas melt 方法。我正在使用以下代码进行熔化:

bmelt = bshort.melt(['artist','track','time','date.entered'],['wk1','wk2','wk3'],'week','rank')

但是我把运行变成了一个属性错误:

AttributeError: 'DataFrame' object has no attribute 'melt'

我升级了 pandas 但它没有解决我的问题。关于如何让它发挥作用有什么建议吗?

在 pandas 0.20.0 之前,melt 只是一个 pandas method, not a DataFrame method。如果您有较旧的 pandas,请使用 pd.melt(bshort,...) 而不是 bshort.melt(...)

查看 pandas 文档,pd.melt() 将您要使用的对象作为参数。

试试这个:

bmelt = pd.melt(bshort, ['artist', 'track', 'time', 'date.entered'],['wk1', 'wk2', 'wk3'], 'week', 'rank')

Source