我有一个数据集,其中包含几年内每一天网站的所有页面(网址)的综合浏览量。
例如,可能有25个条目具有相同的日期,每个条目对应不同的URL以及与该URL相关联的网页浏览。
我在pandas数据框中添加了新列,以包含"年"和"月"。
现在我想创建一个条形图,以显示每年使用Seaborn访问的前10页。
我可以制作整个数据集(即每一页)的情节,但我无法弄清楚如何只访问前10个访问量最大的网页。
这就是我目前所拥有的,其中'Page path level 1'
是网址,content
是数据框。
sns.countplot(x = 'Page path level 1', data = content, hue = 'Year')
这是数据帧的片段:
答案 0 :(得分:0)
考虑Pageviews
是您要考虑定义前10名的功能,您可以使用以下代码。
sns.countplot(x = 'Page path level 1', data = content.groupby(by=['Page path level 1','year'])['Pageviews'].sum().reset_index().sort_values(by=['Pageviews'], ascending=False).head(10), hue = 'Year')
答案 1 :(得分:0)
您可以使用nlargest
对您绘制的值进行子集化。
import pandas as pd
# Instead of data = content use
data = content[content.Pageviews.isin(content.Pageviews.nlargest(10))]