Как индексировать информацию из объекта S4 - PullRequest
0 голосов
/ 24 октября 2018

Я работаю с объектом S4 Hyperspec в R, состоящим из длин волн и соответствующих наборов данных различных спектров поглощения.Я хотел бы выбрать длину волны и распечатать соответствующую оптическую плотность для каждого конкретного спектра.

Но я не знаю, как это сделать.

Любой совет?

Я не очень разбираюсь в объектно-ориентированном программировании ...

Спасибо!

1 Ответ

0 голосов
/ 24 октября 2018

Вы можете использовать @ или slot:

#define new s4 class
myS4Class <- setClass(
  "myS4Class", 
  slots = c(
   slot1 = "character", 
   slot2 = "numeric"
  )
)

#make an instance of the class
x <- new("myS4Class", slot1 = "foo", slot2 = rnorm(5))

x теперь можно индексировать, как показано ниже:

x@slot1
#> [1] "foo"

slot(x, "slot2")
#> [1]  0.2391963 -0.3398150  2.1760187  1.1890521 -0.1659958
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...