有一条线计算每组的置信区间较低,它是这样的:
lower <- tapply(airquality$Temp, airquality$Month, function(v) t.test(v)$conf.int[1])
function(v)
在该行中的作用是什么?
答案 0 :(得分:2)
创建一个匿名函数。 您可以查看此页面以了解有关匿名功能的更多信息。 http://adv-r.had.co.nz/Functional-programming.html#anonymous-functions
您可以通过以下方式重新编写代码:
myConf <- function(v) {
return(t.test(v)$conf.int[1])
}
lower <- tapply(airquality$Temp, airquality$Month, myConf)
您可以创建一个函数myConf
,并将其用作FUN
的{{1}}参数。
你现在应该知道那个
tapply
创建一个输入function(v) return(t.test(v)$conf.int[1])
并返回输出v
的函数。
答案 1 :(得分:1)
来自tapply
文档:
将一个函数应用于一个参差不齐的数组的每个单元格,即由特定因子级别的唯一组合给出的每个(非空)值组。
function(v)
是应用于该特定不规则数组的每个单元格的函数。
其语法必要,因为tapply
无法直接应用t.test
,就像您的示例一样。因此,您可以使用单个参数v
定义一个函数,该函数在执行期间来自tapply
。