Repeat Loop Problem - Error: (list) object cannot be coerced to type 'double'
Verfasst: Mo Okt 02, 2017 5:38 pm
Hey,
ich weiß nicht, ob mein Problem in diesem Unterforum passend ist, aber ich möchte einen loop bauen, der so lamge läuft bis eine Test-Statistik (wilcox test) erfüllt ist.
Ich möchte 2 samples aus einer population ziehen. Dabei ist die Bedingung, dass ich am Ende 2 Samples erhalte, die sich nicht signifikant voneinander unterscheiden.
Das sieht man so bei mir aus:
Wenn ich es laufen lasse kommt:
Error: (list) object cannot be coerced to type 'double
Kann mir hier jemand helfen?
Grüße
Qi
ich weiß nicht, ob mein Problem in diesem Unterforum passend ist, aber ich möchte einen loop bauen, der so lamge läuft bis eine Test-Statistik (wilcox test) erfüllt ist.
Ich möchte 2 samples aus einer population ziehen. Dabei ist die Bedingung, dass ich am Ende 2 Samples erhalte, die sich nicht signifikant voneinander unterscheiden.
Das sieht man so bei mir aus:
Code: Alles auswählen
repeat {
rm("a") #alte daten löschen
rm("b")
rm("df")
rm("df1")
df<- data.frame(sample(0:10,10000,replace=T)) #draw random population
names(df) <- c("y") #rename
lapply(df, as.numeric) #benutze ich, weil ich dachte mein Problem "Error: (list) object cannot be coerced to type 'double'" lösen zu können
df$ID <- seq.int(nrow(df)) #add ID column
a <- df[sample(1:nrow(df), 1000),] #Draw random sample from population
lapply(a, as.numeric)
df1 <- df[!(df$ID %in% a$ID),] #delete randomly drawn data from population --> das ist quasi ziehen ohne zurücklegen, damit ich keine Duplikate in meinen 2 samples habe
lapply(df1, as.numeric)
b <- df[sample(1:nrow(df), 1000),] #Draw sample again from population
lapply(b, as.numeric)
if (wilcox.test(a$y,b$y) < 0.05){ #diese Bedingung soll erfüllt sein
break
}
}
Error: (list) object cannot be coerced to type 'double
Kann mir hier jemand helfen?
Grüße
Qi