Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
430 views
in Technique[技术] by (71.8m points)

s4 - What does the @ symbol mean in R?

In packages like marray and limma, when complex objects are loaded, they contain "members variables" that are accessed using the @ symbol. What does this mean and how does it differ from the $ symbol?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

See ?'@':

  • Description:

    Extract the contents of a slot in a object with a formal (S4) class structure.

  • Usage:

    object@name

    ...


The S language has two object systems, known informally as S3 and S4.

  • S3 objects, classes and methods have been available in R from the beginning, they are informal, yet very interactive. S3 was first described in the White Book (Statistical Models in S).
  • S3 is not a real class system, it mostly is a set of naming conventions.
  • S4 objects, classes and methods are much more formal and rigorous, hence less interactive. S4 was first described in the Green Book (Programming with Data). In R it is available through the methods package, attached by default since version 1.7.0.

See also this document: S4 Classes and Methods.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...