-1
我有一個矩陣:R:調用函數
x <- cbind(x1 = 3, x2 = c(4:1, 2:5))
dimnames(x)[[1]] <- letters[1:8]
如何以下代碼工作?
cave <- function(x, c1, c2) c(mean(x[c1]), mean(x[c2]))
apply(x,1, cave, c1="x1", c2=c("x1","x2"))
特別是我不理解的說法,c(mean(x[c1]), mean(x[c2]))
功能cave
內。
另外我們用這種方式調用函數cave(x,a,b)
。但是在apply
函數中,當我們調用cave
函數時,輸入是哪裏?
這應該是有用的https://nsaunders.wordpress.com/2010/08/20/a-brief-introduction-to-apply-in-r/ –
請注意,循環行和平均的子集元素的效率低於使用內置矢量化函數執行此類操作的效率。例如,在這種情況下運行'rbind(rowMeans(x [,「x1」,drop = F)),rowMeans(x [,c(「x1」,「x2」)]))「或者,甚至更好,'rbind(x [,「x1」],rowMeans(x [,c(「x1」,「x2」)]))''。 – josliber