2017-03-15 133 views
0

我有一个数据帧,我想计算跨列的平均值。我有以下数据帧:熊猫数据帧平均计算

Dataframe

列 'A' 重复但不列 'B'。我想计算列'B'中列'A'中重复数的值的平均值。例如,对于列“A”中的第一个值是1,“B”中的值是3,列“A”中的下一个值是1,“B”中的值是9,下一个是4,依此类推。然后继续2和3等...

我在想如果我可以将这些值移动到列然后计算跨列的平均值会更容易,但我找不到方法来复制那里的值。也许有一个更简单的方法?

这是我想什么:

DF2

回答

2

您可以使用GROUPBY和作为@fuglede提到

df.groupby('A').mean() 

将工作以及指()

df.groupby('A').B.mean() 

因为只有B列用于聚合。 无论哪种方式,你

A 
1 6.25 
2 6.50 
3 4.75 
+0

对于OP的目的,甚至有可能跳过'.B',只是用'df.groupby( 'A')。意思是()'。 – fuglede

+0

是的,对于这种情况B是多余的,我通常用它来使我自己的代码更具可读性:) – Vaishali

+0

哇...熊猫的力量。谢谢! – magicsword