Подтвердить что ты не робот

Что означает символ @в R?

В таких пакетах, как marray и limma, когда загружаются сложные объекты, они содержат переменные-члены, к которым обращаются с помощью символа @, Что это значит и как оно отличается от символа $?

4b9b3361

Ответ 1

См. ?'@':

  • Описание:

    Извлечь содержимое слота в объекте с формальным (S4) класса.

  • Применение:

    [email protected]

    ...


S-язык имеет две объектные системы, известные неформально как S3 и S4.

  • Объекты, классы и методы S3 доступны в R с самого начала они неформальны, но очень интерактивны. S3 был впервые описан в Белой книге (статистические модели в S).
  • S3 не является реальной системой классов, в основном это набор имен конвенции.
  • Объекты, классы и методы S4 гораздо более формальны и строгий, следовательно, менее интерактивный. Сначала был описан S4 в "Зеленой книге" (программирование с данными). В R это доступный через пакет methods, прикрепленный по умолчанию начиная с версии 1.7.0.

Смотрите также этот документ: S4 Классы и методы.

Ответ 2

Как уже говорили другие, символ @используется с классами S4, но вот примечание из Руководства по стилю Google R: "Используйте объекты и методы S3, если нет веской причины использовать объекты или методы S4".

Ответ 3

Вы хотите прочитать на классах S4, которые используют символ @.