[R] Rule for accessing attributes?

Tribo Laboy tribolaboy at gmail.com
Thu Mar 27 05:16:21 CET 2008


Hi !

I am a new user and quite confused by R-indexing.

Make a list and get the attributes
lst <- list(x = 1:3, y = 4:6, z = 7:9)
attributes(lst)

This returns:

$names
[1] "x" "y" "z"

I can easily do:

nm <-names(lst)

or

nm <-attr(lst,"names")

which both return the assigned names of the named list 'lst', but why
then this doesn't work:

lst$names

?

I am confused ... Moreover, I noticed that some of the objects (e.g.
plot objects returned by ggplot) also have attributes when queried by
the 'attributes' function, but they are accessible by the $ notation.
(e.g.

xydf <- data.frame(x = 1:5, y = 11:15)
plt <- ggplot(data = xydf, aes(x = x,y = y)) + geom_point()
attributes(plt)

Now we can change the title:

plt$title <- "My Title"
plt

So is it some inconsistency or am I missing something important?



More information about the R-help mailing list