[R] t.test in for loop
Peter Ehlers
ehlers at ucalgary.ca
Thu Jul 22 19:49:49 CEST 2010
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
More information about the R-help
mailing list