在使用 `groupby` 之后使用 Seaborn 的 `factorplot`
Posted
技术标签:
【中文标题】在使用 `groupby` 之后使用 Seaborn 的 `factorplot`【英文标题】:Using Seaborn's `factorplot`after using `groupby` 【发布时间】:2017-12-14 19:34:05 【问题描述】:我从一个非常大的 Pandas 数据框开始,格式为:
DAY FLAVOR PRICE #CREATED BOUGHT
1 apple 5 1 1
1 apple 5 3 7
1 apple 5 4 2
1 apple 5 5 3
2 apple 5 1 1
2 apple 5 3 9
2 apple 5 4 8
.
.
.
在执行groupby(['DAY','FLAVOR','PRICE']).mean()
之后,我最终得到了一个简化的数据框,类似于:
DAY FLAVOR PRICE BOUGHT
1 apple 5 3.4
25 2.9
cherry 5 1.7
25 2.6
2 apple 5 1.6
25 1.7
cherry 5 3.1
25 3.2
.
.
.
此时,我想创建 Seaborn 因子图:X = DAY、Y = BOUGHT 和 Hue = FLAVOR。在绘图之前我需要融化这个“减少”的数据框吗?或者有没有一种简单的方法来绘制我当前数据框中的数据?
【问题讨论】:
融化,不...重新索引,也许... 【参考方案1】:你可以做 df.reset_index() 然后做一个因子图选择适当的列。
这意味着:
fg = (
df.groupby(['DAY', 'FLAVOR', 'PRICE'])
.mean()
.reset_index()
.pipe((sns.factorplot, 'data'), x='DAY', y='BOUGHT', hue='FLAVOR')
)
【讨论】:
.reset_index()
命令后跟factorplot
完美运行!正是我想要的,谢谢。以上是关于在使用 `groupby` 之后使用 Seaborn 的 `factorplot`的主要内容,如果未能解决你的问题,请参考以下文章