R: Объект не находит пользовательскую функцию - PullRequest
0 голосов
/ 14 ноября 2018

Я новичок в R и хочу создать объект с его методами.Я определил мой объект и функцию с помощью этого кода:

setClass("gComparativa", slots=list(data="ANY"))
show_graphic <- function(object) 0
setGeneric("show_graphic")
setMethod("show_graphic", "gComparativa", function(object){
})

Я создаю и вызываю метод с этим кодом:

g <- new("gComparativa", data=data)
g.show_graphic()

Но когда я вызываю метод, у меня появляется эта ошибка:

Ошибка в g.show_graphic (): эта функция не может быть найдена "g.show_graphic"

Что я делаю не так?Что я могу определить методы и вызвать позже?

1 Ответ

0 голосов
/ 14 ноября 2018

Вам понадобится

show_graphic(g)

вместо этого. Системы ООП R обычно не работают, как и многие другие языки программирования. ( Здесь хороший учебник).

Вы не можете получить доступ к функциям класса через <objectname>.<functionname>(), но вы просто вызываете функцию на объекте, как <functionname>(<objectname>).

Учтите, что точки могут быть частью имени объекта в R; например попробуйте

example.object <- 2
example.object
# [1] 2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...