2017-04-23 3 views
0

Ich möchte mit folgenden Code-Loop-Funktion in R verwenden:Wie kann ich Schleife verwenden (fü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") 

Um es einfach zu machen, habe ich die 'Funktion'

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

und dann, wie mache ich die Schleife mit der Funktion 'myqccF' wie der folgende Code?

+1

können Sie assign-Funktion in der for-Schleife mit paste0 verwenden. Vielleicht so: for (i in 1: 3) { Temp <- paste0 ("dta0", i) assign (paste0 ("qcc0", i), myqccF (temp)) } aber man braucht am Ende der Definition der Funktion 'return' hinzuzufügen. – Mons2us

Antwort

0

Sie haben immer noch eine Schleife, jetzt ist es eine Schleife mit Ihrer Funktion drin.

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