質問
rapache をインストールしましたが、R内に線形モデルを収めようとしています。スクリプトファイル。 http.confで RFileHandler
を構成しました。 summary(model)を呼び出そうとすると、セグメントフォールトエラーが発生します(これはApacheログファイルに表示されます)。私はそれがコンソールに印刷しようとしていると推測しているので、失敗しています。
Rと rapache
で同様の問題に遭遇した人はいますか?私は比較的Rに慣れておらず、要約は関数として直接公開されていない多くのことをやっているので、私はそれを機能させることができることを望んでいます
これが私のrスクリプトです
mydata <- read.table("/home/user/test.csv", header = TRUE, sep = ",")
fit <- lm(y~x1+x2+x3, data = mydata)
setContentType("text/html")
cat('<HTML><BODY>')
cat(summary(fit)$adj.r.squared)
cat('</BODY></HTML>\n')
DONE
交換する場合
cat(summary(fit)$adj.r.squared)
これで
cat(coef(fit))
機能しています!
ありがとう バラニ
解決 4
ついに問題を見つけました。 ディスカッションを読む 誤ってlibRlapck.soをlapack.soに。それが原因だったように見えます 問題。 Rのクリーンインストールを再度行い、Apacheを明示的に変更しました ライブラリをロードし、それがすべて機能しました ありがとう -バラニ
他のヒント
rapache Googleグループ に連絡することを検討しましたか rapacheホームページ が示唆していますか?ここよりも経験豊富な読者を見つけることができます。
次の例をテストし、 cat(summary(fit)$ adj.r.squared)
私の(デフォルト)セットアップで動作します(Ubuntu 9.04の下で最新のrapache 1.1.8およびR 2.9.2)
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2,10,20, labels=c("Ctl","Trt"))
weight <- c(ctl, trt)
fit <- lm(weight ~ group - 1) # omitting intercept
setContentType("text/html")
cat('<HTML><BODY>')
cat(summary(fit)$adj.r.squared)
cat('</BODY></HTML>\n')
DONE
ラパシュではないことがわかりました。 R自体で失敗しています
*** caught segfault ***
address (nil), cause 'memory not mapped'
Traceback:
1: .Call("La_chol2inv", x, size, PACKAGE = "base")
2: chol2inv(Qr$qr[p1, p1, drop = FALSE])
3: summary.lm(fit)
4: summary(fit)
5: cat(summary(fit)$adj.r.squared)
Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
その意味がわからない
-Bharani