В R, как мне установить класс S4 на основе класса другого объекта
-
23-09-2019 - |
Вопрос
Мне нужно создать объект типа ShortreadQ из библиотеки Shortread's BioConductor.
ShortReadQ 'signature(sread = "DNAStringSet", quality =
"QualityScore", id = "BStringSet")'
Качественный слот должен быть объектом, унаследованным от качества, о котором я могу легко определить из другого объекта ShortreadQ, который я хочу подражать.
> class(quality(anotherObject))
[1] "SFastqQuality"
attr(,"package")
[1] "ShortRead"
Как лучше всего использовать эту информацию («sfastquality») в аргументе Intructor?
newObject<-ShortReadQ(sread=...,
quality=SFastqQuality(...),
id=...)
Решение 3
Спасибо за ваши ответы. Они приводят меня к решению, которое работает
newObject<-ShortReadQ(sread=...,
quality=new(Class=class(quality(anotherObject)),theFirstParameter=...),
id=...)
Другие советы
Это делает то, что вы хотите?
quality = new(class(old.quality.obj)[[1]]))
Вы можете понадобиться функции получить:
a <- get(class(object))
a(...)
Не связан с StackOverflow