[R] Kruskal.test() on lists
Altaweel, Mark R.
maltaweel at anl.gov
Thu Aug 21 21:37:36 CEST 2008
Hi,
I am trying to do a kruskal wallis test on two lists, fVisited and cSN:
fVisited[[1]]
[1] 0.17097623 0.30376141 0.17577266 0.14951855 0.03959753 0.08096217 0.05744888 0.02196257....
....
cSN[[1]]
[1] 0.08557303 0.36477791 0.19601252 0.12981040 0.05351320 0.10385542 0.03539577 0.03106175....
So if I just want to do a test on just one of the entries this is simple enough:
kruskal.test(fVisited[[1]],cSN[[1]])
Kruskal-Wallis rank sum test
data: fVisited[[1]] and cSN[[1]]
Kruskal-Wallis chi-squared = 7, df = 7, p-value = 0.4289
However, if I try to do it over the entire list I get a problem. I wanted to do a test comparing each pair of distributions, so I thought something such as: kT<-sapply(fVisited,function(.df){sapply(cSN,functions(.vecs){kruskal.test(.df,.vecs)})}
But that produces this:
Error in kruskal.test.default(.df, .vecs) :
'x' and 'g' must have the same length
However, the values do have the same length. Can anyone see what I am doing wrong here?
Thanks again for everyone's help.
More information about the R-help
mailing list