如何从数据框中的分类变量中找到定量变量的平均值? [复制]

Posted

技术标签:

【中文标题】如何从数据框中的分类变量中找到定量变量的平均值? [复制]【英文标题】:How to find mean of quantitative variable from categorical variable in a dataframe? [duplicate] 【发布时间】:2019-10-14 13:15:30 【问题描述】:

假设我在 pandas 中有以下数据框:

data = 'State':['CA', 'CA', 'CA', 'CA', 'NY', 'NY', 'TX'],
        'Cost':[20, 30, 40, 50, 60, 70, 70]
test = pd.DataFrame(data)
print(test.head(7))

如下

  State  Cost
0    CA    20
1    CA    30
2    CA    40
3    CA    50
4    NY    60
5    NY    70
6    TX    70

在这种情况下,加利福尼亚的平均成本为 35,纽约的平均成本为 65,德州的平均成本为 70。

这是我的问题:pandas 中的查询是什么,我们可以在其中找到给定状态的状态的平均成本?

【问题讨论】:

【参考方案1】:

使用groupbymean

print(test.groupby('State').mean())

哪些输出:

       Cost
State      
CA       35
NY       65
TX       70

如果你想要一个清洁工DataFrame:

print(test.groupby('State', as_index=False).mean())

这给出了:

  State  Cost
0    CA    35
1    NY    65
2    TX    70

【讨论】:

以上是关于如何从数据框中的分类变量中找到定量变量的平均值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何识别和标记熊猫数据框中的相似行

Pandas 数据框中的分类变量?

如何在 Python 的数据框中编码分类变量(系列)?

如何利用字典计算数据框中的多个平均值

一个定量变量和一个分类变量的堆积条形图

将列添加到数据框中,测试其他列中的分类变量