数组对象应用之利用select、avg求带条件的平均值

4694
1

xxxl 数据领袖Lv6

发表于2020-8-4 18:15

楼主
本帖最后由 xxxl 于 2020-8-4 18:20 编辑

1.需求分析
  这里需要取出按浮动顺序序号的前三个车型价格的平均值。
  思路:可以使用统计函数avg求带条件的平均值通常是使用指标过滤或者是结果集过滤的方法来实现,这里还有一种方法即是利用数据对象来取值做到求出带条件的平均值

2.操作详情
  这是表样设计

  这是求平均值的公式
  =GRID2.C2$.select(@.value<=3).select(true,@.leftcell.value).avg()
  select(@.value<=3)   是取到C2$浮动列中值满足小于等于3这个条件的数据,
  select(true,@.leftcell.value)  是取到这些数据的左侧的单元格的数据
  avg()  求平均值
  最后效果



3.注意
  select函数返回的是一个数组,如果在设置过程中测试返回数组检查条件写的是否正确,需要设置这个公式使用的单元格数据类型为字符型,否则不能显示select返回的数组。
  
select函数详细说明:  
   select(filter,itemproc)  
   适用对象:全部数组
   参数说明:
   filter:传递一个条件过滤表达式,表达式中可以使用@符号引用当前的数组元素(必须)
   itemproc:传递一个节点处理表达式,表达式中可以使用@符号引用当前的数组元素(可选)   

   示例:[1,2,3].select(@>1)将返回[2,3]            [[1,2],[2,3],[3,4]].select(@[0]>1,@[1]).join(';')返回3;4
   描述:根据指定的过滤条件表达式过滤数组,将满足条件的元素形成一个新的数组返回


更多数组对象相关函数看这个帖子http://bbs.esensoft.com/thread-133624-1-1.html

最近看过此主题的会员

liuyaaa

MYoung

zhaojinjin

王硕

esen_4PBBEIJOPT

liu20220622

chestnut

Lmeow

韩冰_2

txl

esen_4620CAZ6S9QD

zhuhc

esen_43K228T11K83

salmons001

1个回答

只看楼主

小亿 管理员

发表于2020-8-11 11:08

只看该作者

取消 关注该作者的回复

沙发

太棒了!

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号