关于格间运算,求加权平均数

2222.png

求车数与化验值的加权平均,要排除掉化验值也许为0的情况,这个怎么写呢,谢谢大佬们了image.png

FineReport 18895006020 发布于 2018-11-8 22:42 (编辑于 2018-11-8 22:52)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
lefantianLv2初级互助
发布于2018-11-8 22:44

用sum不要用avg

  • 18895006020 18895006020(提问者) 这个格间运算怎么写呢?
    2018-11-08 22:48 
  • lefantian lefantian 回复 18895006020(提问者) 我不知道你要计算什么,看个图我也看不明白
    2018-11-08 22:54 
  • 18895006020 18895006020(提问者) 就是想算一个化验值的加权平均的小计,本来公式应该是 SUM(车数*化验值)/SUM(车数) 现在有个问题就是化验值有可能是为空的,如果化验值为空就希望对应的车数也不要参与到计算里
    2018-11-08 23:01 
  • lefantian lefantian 回复 18895006020(提问者) 加if判断就可以了sum(if)
    2018-11-08 23:06 
  • lefantian lefantian 回复 18895006020(提问者) SUM(车数*nvl(化验值,0))/SUM(if(nvl(化验值,0)=0,0,车数))
    2018-11-08 23:07 
最佳回答
0
zsh331Lv8专家互助
发布于2018-11-8 23:11(编辑于 2018-11-8 23:14)

首先:加权平均数有别于算数平均数,公式应该用 各自“车数”分别与各自”指标项“值相乘求和,然后除以“车数”之和。


以第一行数据为例,(12*618+12*1+12*57.6+…+12*6.94)/(12+12+…12),由于“车数”都是12,所以分数可简化为:(618+1+57.6…+6.94)/N,N表示”指标项“值非0的个数。这个公式变相成了 求各行数据非零指标值的 算数平均数 了。


不知道说到这里你是否能明白。

=sum(greparray(B2:T2, item != 0))/count(greparray(B2:T2, item != 0))


公式解释可参考帖子的“C项”讲解:http://bbs.fanruan.com/thread-84185-1-1.html



  • 18895006020 18895006020(提问者) 非常谢谢您的耐心讲解,我试试看。
    2018-11-09 00:32 
  • zsh331 zsh331 回复 18895006020(提问者) 别客气,我也可以加深下“加权平均数”的印象。
    2018-11-09 09:45 
  • 3关注人数
  • 690浏览人数
  • 最后回答于:2018-11-8 23:14
    请选择关闭问题的原因
    确定 取消
    返回顶部