Hi,
Maybe you should change the "3" in the loop with "r" like:
for (r in 3:18) {
by(eval(parse(text=(paste("data",data.n[r],sep="$")))),
data$groupFactor, shapiro.test)
}
I think it should work, if not, I have already a similar script for that.
HTH,
Ivan
Le 4/9/2010 15:17, David Winsemius a écrit :
On Apr 9, 2010, at 8:16 AM, Iurie Malai wrote:
I want to run Shapiro-Wilk test for each variable in my dataset, each
grouped by variable groupFactor.
I have these working commands:
data.n<-names(data) # put names into a vector called data.n
by(eval(parse(text=(paste("data",data.n[3],sep="$")))), data$factor,
shapiro.test) #run shapiro.test
but I must to change the variable number manualy. How to automate this?
I tried this:
for (r in 3:18) {
by(eval(parse(text=(paste("data",data.n[3],sep="$")))),
data$groupFactor, shapiro.test)
}
Not able to test since you have provided code that works with data
that is not available. Inside for loops one needs either to make an
assignment or print the results. Had the data been available I would
have wrapped print() around the full by expression to see if my
hypothesis could be tested.
--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de
**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php
______________________________________________
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.