Ich verwende den folgenden Code über Paare von Dateien wie a1.txt and b1.txt
, a2.txt and b2.txt
, .... a999.txt and b999.txt
:Wiederholte Vektornamen in Schleifenfehler
dostuff <- function(x)
{
files <- list.files(pattern=paste('.', x, '\\.txt', sep=''))
a <- read.table(files[1],header=FALSE) #file a1.txt
G <- a$V1-a$V2
b <- read.table(files[2],header=FALSE) #file b1.txt
as.factor(b$V2)
q <- tapply(b$V3,b$V2,Fun=length)
H <- b$V1-b$V2
model <- lm(G~H)
return(model$coefficients[2],q)
}
results <- sapply(0:999,dostuff)
Error in tapply(b$V3, b$V2, FUN = length) : arguments must have same length
Das nehme ich an, weil beide Dateien in einem Paar keine Header haben so a
hat und b
hat V1 V2 V3
. Dieser Fehler tritt jedoch nicht auf, wenn ich dies über kleine Chargen von Dateien wie 0:3
ausführe und die Ergebnisse für diese herauskommen die gleichen, als wenn ich jede Analyse getrennt, die Umgebung zwischen Läufen des gesamten Codes manuell löschen würde.
Ich glaube, das Problem entsteht, wenn Dateien von a1 b1
zu a10 b10
und höher laufen. Weil die Schleife ich denke, verwirrt über welche Dateien zu wählen. Dieses Problem verschwindet, solange ich mit a0 b0
zu a9 b9
laufe.
Beste Lösungen?
danke feff ich fand das Problem, aber nicht sicher, wie es zu korrigieren, vielleicht können Sie helfen. Die Schleife läuft gut, solange die Dateien 'a0.txt' 'b0.txt' auf' a9.txt ''b9.txt' laufen. Aber wenn ich bis zu "a10" und "b10" gehe, ist das verwirrend. – user1320502
Nicht sicher, was das Problem wäre, ohne mehr Details zu wissen. Sind diese Dateien vorhanden? Oder sind die richtig formatiert? Ich habe wirklich keine Informationen, um hier helfen zu können. –