2009-12-15 19 views
26

In pacchetti come marray e limma, quando vengono caricati oggetti complessi, contengono "variabili membro" a cui si accede usando il simbolo @. Che cosa significa e in che cosa differisce dal simbolo $?Cosa significa il simbolo @ in R?

risposta

27

Vedi ?'@':

  • Descrizione:

    estrarre il contenuto di uno slot in un oggetto con un (S4) struttura formale di classe.

  • Usage:

    [email protected]

    ...


Il linguaggio S è dotato di due sistemi a oggetti, noto informalmente come S3 e S4.

  • S3 oggetti, classi e metodi sono stati disponibili in R fin dall'inizio, sono informali, ma molto interattivo. S3 è stato descritto per la prima volta nel White Book (Modelli statistici in S).
  • S3 non è un sistema di classe reale, è principalmente un insieme di convenzioni di denominazione .
  • S4 oggetti, classi e metodi sono molto più formale e rigorosa, quindi meno interattivo. S4 è stato descritto per la prima volta nel Green Book (Programmazione con dati). In R è disponibile tramite il pacchetto methods, collegato per impostazione predefinita dalla versione 1.7.0.

Vedere anche questo documento: S4 Classes and Methods.

5

Leggere le classi S4 che utilizzano il simbolo @.

8

Come gli altri hanno detto, il simbolo @ viene utilizzato con le classi S4, ma qui c'è una nota da Google's R Style Guide: "Usa oggetti e metodi S3 a meno che non vi sia un motivo valido per utilizzare oggetti o metodi S4".

+0

bel link ... +1 – pufferfish

Problemi correlati