有一交叉表,需求大致如此
机构时间 | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | 平均值 | 中位数 |
北京 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 1000 | 1100 | 1200 | 1300 | 750 | 750 |
| | | | | | | | | | | | | | |
机构时间 | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | 平均值 | 中位数 |
北京 | 200 | 300 | 700 | 500 | 600 | 700 | 0 | 0 | 0 | 0 | 0 | 0 | 500 | 600 |
| | | | | | | | | | | | | | |
机构时间 | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | 平均值 | 中位数 |
北京 | 200 | 300 | 700 | 500 | 600 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 460 | 700 |
竖列:机构;横列:时间
需求:当输入日期2012-12-31时,显示案例1,即显示1月--12月数据,平均数=sum(数据)/12,中位数=sum(6月+7月)/2;
当输入日期2012-6-30时,显示案例2,即显示1月--6月数据,7月后的数据显示为0。平均数=sum(1月-6月数据)/6,中位数=sum(3月+4月)/2;
当输入日期2012-3-31时,显示案例3,即显示1月--3月数据,4月后的数据显示为0。平均数=sum(1月-3月数据)/3,中位数=3月数据;
目前做法:平均数取值直接用total(全部数据)/月份。由于当前日期后数据为0,因此这个暂时可行;
中位数取值用Medians(全部数据)。由于当前日期后数据为0,根据这个函数,会将全年数据排序再取中位数,这是不对的。
请教高手们帮忙看下中位数怎么做呢?非常感谢
收起