参数“ trim”在“ apply()”中是什么意思?

For example,我想计算数组x的每一列的平均值:

apply(x, 2, mean, trim = .2)


有什么不同

apply(x, 2, mean)


我应该使用哪一个?

如果我想计算数组x的每一列的标准偏差,我应该使用哪一个

apply(x, 2, sd, trim = .2)


要么

apply(x, 2, sd)


谢谢!

最佳答案

trim参数与apply无关,而是与mean有关。

来自?mean


trim:在计算平均值之前,从x的每个末端开始修整的观测值的分数(0到0.5)。超出该范围的微调值将作为最近的端点。


sd没有名为trim的参数,因此,如果尝试使用apply(x, 2, sd, trim = .2),则会收到有关尝试使用未使用的参数的错误。



这不是apply的参数,而是使用applymean传递到...的参数:

来自?apply


...FUN的可选参数。


这增加了灵活性并减少了对创建匿名函数的依赖。例如,如果没有...参数,则如果要进行修整,则必须执行以下操作:

apply(x, 2, function(x) mean(x, trim = .2))

10-07 19:16
查看更多