2017-04-23 30 views
0

我想R來使用循環功能與下面的代碼迴路:我如何使用()

pc01 <- qcc(matrix(cbind(dta02[1:length(dta02)-1], dta02[2:length(dta02)]), ncol = 2), type = "R") 
pc02 <- qcc(matrix(cbind(dta02[1:length(dta02)-1], dta02[2:length(dta02)]), ncol = 2), type = "R") 
pc03 <- qcc(matrix(cbind(dta03[1:length(dta03)-1], dta03[2:length(dta03)]), ncol = 2), type = "R") 

爲了使其容易,我用了「功能」

myqccF <- function(n) 
{ 
qcc(matrix(cbind(n[1:length(n)-1], n[2:length(n)]), ncol = 2), type = "R") 
} 

然後,我如何使用函數'myqccF'來創建循環,如下面的代碼所示?

qc01 <- myqccF(dta01) 
qc02 <- myqccF(dta02) 
qc03 <- myqccF(dta03) 
+1

您可以在paste0 for循環中使用assign函數。可能是這樣的: (i in 1:3)temp <-paste0(「dta0」,i) assign(paste0(「qcc0」,i),myqccF(temp)) } }但您可能需要在函數定義的末尾添加'return'函數。 – Mons2us

回答

0

你還有一個循環,現在它是一個循環,其中包含你的函數。

for (i in 1:3) assign(paste0("qc0", i), myqccF(get(paste0("qc0", i))))