On 01/03/2010 11:33 AM, hadley wickham wrote:
> Suppose X is a dataframe or a matrix. What would you expect to get from
> X[1]? What about as.vector(X), or as.numeric(X)?
>
> The point is that a dataframe is a list, and a matrix isn't. If users don't
> understand that, then they'll be confused somewhere. Making matrices more
> list-like in one respect will just move the confusion elsewhere. The
> solution is to understand the difference.
What I find more confusing is the behaviour of $ with vectors. In my
mind x$a is a shortcut for writing x[["a"]], but:
And I still remember being surprised by the x[["a"]] behaviour!
Duncan Murdoch
> x <- list(a = 1)
> x$a
[1] 1
> x <- c(a = 1)
> x$a
Error in x$a : $ operator is invalid for atomic vectors
> x[["a"]]
[1] 1
Hadley
______________________________________________
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.