0

Plumber API には、次のような単純な関数があります。

library(methods)
library(plumber)

# Other functions...

#' @param elist The list of events to process as a string
#' @get /process
process_events <- function(elist=""){
  setClass("EventPattern", representation(sequence="character", probability="numeric", endProbs="data.frame"))

  q <- new("EventPattern", sequence=elist, probability=1, endProbs=data.frame(None=0))
  # Further code that should make use of q
}

Plumber を (ローカルで) 起動し、API を含むスクリプト (上記) を次のように指定します。

r <- plumb('/path/to/script/forecast.R')
r$run(port=8000, swagger = TRUE)

アドレスで関数を呼び出します (PostMan を使用):

http://localhost:8000/process?elist="abcd"

しかし、私が最終的に得たのは、R コンソールが次のように言っている「例外が発生しました」です。

<simpleError: No method for S4 class:EventPattern>

メソッド(ジェネリック)が必要であることをエラーが示唆していることに気付きましたが、次のように入力すると:

q <- new("EventPattern", sequence=elist, probability=1, endProbs=data.frame(None=0))

私のマシンでローカルに(Rコンソールで)正常に動作します。何かが完全にロードされていないか、Plumber で利用できないことが示唆されていますが、それを修正する方法がわかりません。何か案は?

4

1 に答える 1