Excel丨变量计算技巧
小可爱们好,这周介绍几个Excel使用技巧,来提高大家处理数据的效率。
本篇推送是干货丨数据分析之前期准备(下)的升级版,只介绍进阶或者改良的公式哈。
(注:处理方式并非唯一,萜妹只是分享个人经验~)
批量计算变量得分
在涉及多个变量时,计算变量得分是一个繁琐且枯燥的过程,所以萜妹写了个公式,偷偷懒。
假设需要变量化的题目原始状态为下图所示:
我们可以利用AVERAGEIF公式,批量获得满足特定条件数组的均值。
AVERAGEIF函数由三个部分组成,分别是IF的判断区域,IF的判断依据,数据的计算区域。
=AVERAGEIF(IF的判断区域,IF的判定依据,数据的计算区域)
代入到我们这里:
=AVERAGEIF($S$1:$AE$1,TEXT(AF$1,)&"*",$S2:$AE2)
IF的判断区域:所有原始题项的标题行。
为了便于公式的横向拖动,我们最好将横竖都固定,即在字母和数字前都加上$,如$S$1:$AE$1。
IF的判断依据:以目标变量名开头。
Teat()公式可以直接提取单元格文本,再加上一个通配符“*”,即可批量识别。
同样,为了拖动方便,我们要将Text里的文本,固定在第1行,而不固定列,如AF$1。
数据的计算区域:每个被试的得分行。
因为每行都是一个被试,所以要固定列,而不固定行,如$S2:$AE2。
在第一个被试的第一个变量格中输入上述函数,再横向、竖向拖动,即可得到所有被试的全部变量。(是不是非常方便!)
不过有一个小问题,大家要注意和核查。
因为,这里的操作原理是将原始题项按【变量名+序号】命名,再用【变量名】进行匹配。
所以,变量名绝对不能有重叠!!!
最好不要用过于短的缩写。
例如,RC和RCO不可以同时出现。不然在计算RC得分时,会算上RCO的题项,就有问题了。
计算团队数据
计算团队平均值
团队变量的计算也是利用AVERAGEIF公式,只是从横向判断变为了纵向判断。
在目标单位格中输入公式,再横向、纵向填充:
=AVERAGEIF($A$2:$A$36,$A2,AF$2:AF$36)
同样,要注意各数据的固定情况不可以改变,不然在公式填充的时候会发生变形,导致错误。
- IF的判断区域($A$2:$A$36,),需要完全固定,即选中后,按一次【F4】;
- IF的判断依据($A2),需要固定列,即选中后,按三次【F4】;
- 数据的计算区域(AF$2:AF$36),需要固定行,即选中后,按两次【F4】。
计算团队标准差
现在有些研究还要计算团队标准差,但Excel并没有自带标准差的IF公式,而我又想一步搞定,所以写了一个复合公式。
=STDEV.S(IF(IF的判断条件,数据的计算区域,""))
代入我们的例子中:
=STDEV.S(IF($A$2:$A$36=$A2,AF$2:AF$36,""))
上述IF公式用于得到满足条件的数组。
- 如果满足我们的条件,就返回对应数值;
- 如果不满足我们的条件,则会形成空值。
这些数据最终会形成数组。
最后用STDEV.S计算数组的标准差。
因为我们这里涉及数组的处理,所以输入完公式后,不可以只按【Enter】,要**同时按住【Shift+Ctrl+Enter】**才行。
可以发现,最终公式前后会有一个{}(这不可以手打哈)。
啦啦啦,今天的分享就结束了。
萜妹这个无敌大懒鬼,会为了节约自己的时间,而去想一些公式。当我把上面这些公式真正设计出来,并用于实践时,其实我的时间并没有花费的更多。大部分的公式都只需要无脑填充,大规模的变量也可以批量处理,这为我后续的分析也奠定了坚实的基础。所以我认为这样是好的,就想也分享给小可爱这些技巧~
还有关于Excel和数据处理想说的是,比起公式的运用,可能更重要的是,小可爱们要知道自己要完成什么。Excel的公式教学,百度真的轻轻松松。所以当我们知道我想要什么,如何利用公式解决其实就已经近在眼前了~
最后,下期应该是《范文》或者《复现》。
往期推送
原文链接: