On Jun 11, 2009, at 5:35 PM, Stavros Macrakis wrote:
A table without names displays like a vector:
unname(table(2:3))
[1] 1 1 1
and preserves the table class (as with unname in general):
dput(unname(table(2:3)))
structure(c(1L, 1L), .Dim = 2L, class = "table")
Does that make sense? R is not consistent in its treatment of such
unname'd
tables:
In plot, they are considered erroneous input:
plot(unname(table(2:3)))
Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' and 'y' lengths differ
but in melt, they act as though they have names 1:n:
melt(unname(table(2:3)))
indicies value
1 1 1
2 2 1
(By the way, is the spelling error built into too much code to be
corrected?)
-s
PS What is the standard way of extracting just the underlying vector?
c(unname(...)) works -- is that what is recommended?
I think of R (contingency) tables as just integer arrays with
attitude ... er, attributes.
> tt <- table(c(1,1,1,3,3,3,5,5))
> is.array(tt)
[1] TRUE
> is.matrix( with(warpbreaks, table(wool, tension)) )
[1] TRUE
So what would you do with a matrix that had row or column names?
--
David Winsemius, MD
Heritage Laboratories
West Hartford, CT
______________________________________________
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.