如何在 pandas DataFrame 中选择具有 MultiIndex 的列(用于 seaborn 散点图)?

Posted

技术标签:

【中文标题】如何在 pandas DataFrame 中选择具有 MultiIndex 的列(用于 seaborn 散点图)?【英文标题】:How to select columns with a MultiIndex in a pandas DataFrame (for seaborn scatter plot)? 【发布时间】:2020-07-30 12:24:54 【问题描述】:

我有一个带有嵌套列的聚合 DataFrame。如何检索聚合列 sumcount 作为散点图的 x 和 y?

我尝试使用

sns.scatterplot(x="sum", y="count", data=xyz)

但它给了我keyError"sum"

唯一可行的方法是将sumcount 作为两个列表检索,然后对这两个列表进行散点图。但这需要很长时间。

有什么简单的方法可以立即检索这两个嵌套列吗?

谢谢。

【问题讨论】:

【参考方案1】:

从您的图片看来,您的列有一个 MultiIndex。如果是这种情况,您可以通过使用指定每个级别的值的元组进行索引来访问列:

sns.scatterplot(df[('Total', 'sum')], df[('Total', 'count')])

【讨论】:

以上是关于如何在 pandas DataFrame 中选择具有 MultiIndex 的列(用于 seaborn 散点图)?的主要内容,如果未能解决你的问题,请参考以下文章

根据条件在Pandas DataFrame中选择行

解决问题:使用pandas中DataFrame如何使用条件选择某行

Pandas:按行从 DataFrame 的特定列中选择值

您如何选择将基于索引的信息放入 pandas DataFrame 的位置?

如何根据列值从 DataFrame 中选择行?

如何根据列值从 DataFrame 中选择行?