On 2010-07-22 11:28, Arne Schulz wrote:
Dear list,
I'd like to do several t-test within a for loop. Example follows:
data1<- rnorm(1:25)
data2<- rnorm(1:25)
vars<- c("data1", "data2")
for (i in vars) {
t.test(i)
}
Unfortunately, it does not work because of the quotes in the vars-vector
(running t.test(data1) by hand works).
How can I remove the quotes before performing the test?
>
> Sincerely,
> Arne Schulz
>
Here are two ways:
# 1. use get()
for (i in vars) {
print(t.test(get(i)))
}
# 2. put your data into a list (or dataframe); then use lapply();
L <- list(data1 = data1, data2 = data2)
lapply(L, t.test)
-Peter Ehlers
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.