1

こんにちは、R パッケージを作成するのは初めてです。

r パッケージ開発インポートがロードされていないため、roxygen2 を使用するようにアドバイスされました。私は一度呼び出しdevtools::document()て、名前空間が生成されました。

ただし、この単純なパッケージをロードする (または opencpu 経由で試す) と、機能は利用できません。

ネイティブRでコードを呼び出すとうまくいくようです

test2::hello()
[1] "Hello, world!"

次のようにopencpuを起動します。

1) 経由で opencpu シンプル サーバーを起動します。library(opencpu)

2)opencpu$restartポート番号を表示する実行

3) http://localhost:myPortNumber/ocpu/library/myPackage/info ---> このエンドポイントは機能します

コメントで述べたように、これは関数を呼び出す「適切な」方法ではありません。myfunction/printただし、関数がHTTP経由で呼び出された場合、opencpuのデフォルトhttp://public.opencpu.org/ocpu/library/stats/R/quantile/printは、hello関数を呼び出しても機能しません。

これは、より複雑な関数を呼び出す方法のデモンストレーションです。

curl http://localhost:myPortNumber/ocpu/library/stats/R/quantile/json -d '{"type":1,"x":[1,2,3,4,5,6,7,8,9,10],"probs":[0.05,0.25,0.75,0.95]}' -H "Content-Type: application/json"

次の方法で簡単にテストできます。

curl http://public.opencpu.org/ocpu/library/stats/R/quantile/json -d \
'{"type":1,"x":[1,2,3,4,5,6,7,8,9,10],"probs":[0.05,0.25,0.75,0.95]}' \
-H "Content-Type: application/json"

次のようにsudo経由でインストールしました:

sudo R CMD INSTALL test2_0.1.tgz

つまり、/library/test2エンドポイントで使用できる必要があります。

解決:

それはまだ間違った API エンドポイントでした --> R サブディレクトリがありませんでした

http://localhost:myPort/ocpu/library/myPackage/R/hello/

サンプルコードはこちら: https://github.com/geoHeil/rSimplePackageForOpenCpu

4

1 に答える 1

0

それはまだ間違った API エンドポイントでした --> R サブディレクトリがありませんでした

http://localhost:myPort/ocpu/library/myPackage/R/hello/
于 2015-06-09T05:00:56.227 に答える