excel怎么计算一组数据的平均值

在J列相同的情况下,我要计算K列的平均值,但是相同的数据只算一次,图中仓储业我想要的平均值就是(4+1+3+4+2+11+1)/7,然后在把这个平均值除以L列的数据,有没有什么公式可以帮忙做的?

平均值公式:(将这个公式写在N1)
=SUM(IF((MATCH(IF(J$1:J$1000=J1,K$1:K$1000),IF(J$1:J$1000=J1,K$1:K$1000),)=ROW($1:$1000))*(J$1:J$1000=J1),K$1:K$1000))/(SUM(N(MATCH(IF(J$1:J$1000=J1,K$1:K$1000),IF(J$1:J$1000=J1,K$1:K$1000),)=ROW($1:$1000)))-1)
数组公式,需要按CTRL+SHIFT+回车完成公式;

M1公式:(L列除以平均数据)
=N$1/L1
下拉。追问

那个平均公式不行耶,运行完了以后,算出来的数据是不对的,还有没有其他方法?

追答

公式已经验证,没有问题,已经验证。

如果有问题,可以百度私信我,窗口的右上角:

追问

不好意思,可能是我说的不够清楚,像图片上这组数据,我想要求的平均数是(2+1+1+1+1+1)/6=1.166667,第四列那个1.5是根据你上面给我的公式算得。有没有其他办法呢?算出我想要的那个平均数

追答

你的截图没看明白 ,请说明一下(列标,条件是什么等)。

追问

就是这个图的话,对于装卸搬运和运输代理业,我想要的平均值是(2+1+1+1+1+1+1+1+1+2)/10

这张图,对于废弃资源综合利用业,我想要的平均数是(2+1+1+1+1+1+1+1+1+1+1+1+2+1+1+1+1)/17


这样可以理解吗?其实就是L列的数字除以K列的在J列相同时的个数,1个1算1个数,2个2算2个数,3个3算1个数,4个4算1个数

追答

平均数公式:

=SUM(N(((J$1:J$1000=J1)*K$1:K$1000)/TRANSPOSE(ROW($1:$100))=1))/SUM(IFERROR(1/IF(J$1:J$1000=J1,K$1:K$1000),0))
数组公式,需要按CTRL+SHIFT+回车完成公式。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-06
用这个公式试试,任意空白单元格中输入
=AVERAGE(IF(MATCH(K125:K150,K125:K150,)=(ROW(125:150)-124),K125:K150))
同时按下CTRl+SHIFT+回车,输入数组公式。追问

那个。。。因为我数据样本量很大,J列的行业有很多不同的,每个行业所包含的行的数量是不一样的,这个公式可能不太合适,有没有其他办法?

第2个回答  2016-05-06
何必如此麻烦,直接用删除重复值的功能删除了不就出来基本的了,然后除以就OK追问

我试过了不行,比如4,4,4,4,3,3,3,4,4,4,4,2,2。删除重复以后就是4,3,2了。但是我要的是4,3,4,2。还有没有其他办法

第3个回答  2016-05-06
用宏代码还有办法,公式是真没想到办法。