论证是什么" 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)
谢谢!
答案 0 :(得分:12)
trim
参数与apply
无关,而与mean
有关。
来自?mean
:
trim
:在计算平均值之前从x的每一端修剪的观测值的分数(0到0.5)。该范围之外的微调值被视为最近的终点。
sd
没有名为trim
的参数,因此如果您尝试使用apply(x, 2, sd, trim = .2)
,则会收到有关尝试使用未使用参数的错误。
这不是apply
的参数,但它是使用apply
从mean
传递到...
的参数:
来自?apply
:
...
:FUN
的可选参数。
这增加了灵活性并减少了对创建匿名函数的依赖性。例如,如果没有...
参数,如果您想要修剪均值,则必须执行以下操作:
apply(x, 2, function(x) mean(x, trim = .2))
答案 1 :(得分:-1)
刚刚尝试使用dplyr,它似乎工作正常。
df <- x %>%
select(V1:V7) %>%
summarise_each(funs(mean(., na.rm=T, trim=0.2)))