Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python “如何修复”;ValueError:无法解释输入';用户'&引用;Seaborn条形图中的错误? 问题_Python_Pandas_Python 2.7_Dataframe_Seaborn - Fatal编程技术网

Python “如何修复”;ValueError:无法解释输入';用户'&引用;Seaborn条形图中的错误? 问题

Python “如何修复”;ValueError:无法解释输入';用户'&引用;Seaborn条形图中的错误? 问题,python,pandas,python-2.7,dataframe,seaborn,Python,Pandas,Python 2.7,Dataframe,Seaborn,我试图在Seaborn中绘制一个分类条形图,其中的类别由数据框中的值设置(收藏夹)。为什么Seaborn在我尝试将此值传递到barplot函数中的hue关键字时抛出错误 我试过的 我曾尝试将数据框分为两个不同的数据框,以便它们可以一起绘制,但只能得到一个堆叠的条形图,而不是并列的分类条形图 我在Seaborn文档中看到,将category列名传递给hue关键字可以对数据进行分类,但当我尝试将收藏夹传递给它时,总会收到错误消息 数据帧的代码: 绘图代码: 示例数据 预期结果与实际结果 我想要这样的

我试图在Seaborn中绘制一个分类条形图,其中的类别由
数据框中的值设置(
收藏夹
)。为什么Seaborn在我尝试将此值传递到
barplot
函数中的
hue
关键字时抛出错误

我试过的 我曾尝试将数据框分为两个不同的数据框,以便它们可以一起绘制,但只能得到一个堆叠的条形图,而不是并列的分类条形图

我在Seaborn文档中看到,将category列名传递给
hue
关键字可以对数据进行分类,但当我尝试将
收藏夹
传递给它时,总会收到错误消息

数据帧的代码: 绘图代码: 示例数据 预期结果与实际结果 我想要这样的柱状图:

这是我收到的错误/堆栈跟踪:

解决了的 问题是数据帧定义中的这一行(我删除了它),
data\u frame.set\u index(['User'],inplace=True)

错误告诉您,通过
data
提供的数据框没有名为
“User”
的列。如果您检查数据框的代码,您可以看到它是第一列。我宁愿相信错误,也不相信这里发布的打印输出。您可以提供一个示例,以便人们可以了解更多信息。在调用sns.barplot之前,结果数据框是什么样子的?打印
result.columns
data_frame = pandas.DataFrame(data=[tweet.text for tweet in tweets], columns=['Tweets'])

data_frame['User'] = numpy.array([tweet.user.screen_name for tweet in tweets])
#data_frame['ID'] = numpy.array([tweet.id for tweet in tweets])
#data_frame['Length'] = numpy.array([len(tweet.text) for tweet in tweets])
data_frame['Date'] = numpy.array([tweet.created_at for tweet in tweets])
#data_frame['Source'] = numpy.array([tweet.source for tweet in tweets])
data_frame['Favourites'] = numpy.array([tweet.favorite_count for tweet in tweets])
#data_frame['Retweets'] = numpy.array([tweet.retweet_count for tweet in tweets])
data_frame['Day'] = data_frame['Date'].dt.day_name()
data_frame.set_index(['User'],inplace=True)
frames = [user1, user2]
result = pandas.concat(frames)
x = result.Day
y = result.Favourites


result.groupby('Day',as_index=False, sort=True, group_keys=True).agg({'Favourites':'sum'})
#user2.groupby('Day',as_index=False, sort=True, group_keys=True).agg({'Favourites':'sum'})


plotted = sns.barplot(x,y,color="skyblue",data=result,hue='User',order=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'])


sns_plot = plotted.get_figure()
sns_plot.savefig('plot.png')
User            Date        Favourites  Day

AOC             1/3/2019    500         Monday

AOC             2/3/2019    200         Tuesday

realDonaldTrump 3/3/2019    600         Wednesday

realDonaldTrump 4/3/2019    700         Thursday