MacのRStanのインストールエラー

メモ

環境

  • MacOS 10.15.4
  • R 3.6.3

エラー

こんなえらー

対策

RからこれでOK

Rstudioの環境変数

RStudioを好んで使っています。

Mac版RStudioはHomeBrewでインストールすることができます

この時、アプリケーションフォルダ内にRStudioのアイコンが表示されます。
このアイコンをクリックして起動すると、Bashシェルの環境変数を読み込んでくれません。

自分の場合、データフォルダをDATA環境変数に入れることにより、大学で使っている
サーバのデータフォルダとの物理ディレクトリの違いを吸収するようにしています。
例えば

こんな感じで記述しておけば、
サーバでは /work/user/data/sample.txtのディレクトリにあるファイル
ローカルPCでは /home/user/data/sample.txtのディレクトリにあるファイルでも、
環境変数DATAにサーバでは/work/user/data/、ローカルPCでは/home/user/data/
を設定しておけば、プログラムを変更する必要がありません。

しかし、Rstudioを入れたそのままではこの環境変数が使えません。

これを解決するには、~/.Renvironに環境変数を記述しておけばOKです。

~/.Renviron

R.3.4.3にmxnetをインストール

mxnetのインストールがエラーになるのでその対処方法

環境

mxnetを使用する際に,インストール方法が公式サイトにも書いているのですが,
その方法ではインストール時にエラーが出ます。使っている環境がMacだからなのかもしれませんが。。

  • OS:MacOS 10.13.3
  • R 3.4.3 brewでインストールしたもの

この環境で下記コマンドでインストール

どうやらVersionがあっていないようでインストールできないようです。
ググっていろいろなやり方を試したのですがダメ。

対処方法

ここここの方法でようやくインストールできました。

opencv

まずOpenCVをインストール

openblas

OpenBlasも入れます

mxnet

最後にソースコードからダウンロードしてインストールします

確認

これでインストールが終わっています

これで使えそうです。多分。

リモートでJupyter Notebookをつかう

大学のサーバでどうしてもJupyter Notebookが動かしたいのでメモ。

経緯

データをSQLiteで管理しており,これのサイズが10Gを超え始めた。計算などは大学のサーバで行なっているのであるが,RやJupyterなどビジュアルなツールを使いたい時にはいちいちローカルのPCへSQLiteをコピーするのが大変。

以前Xサーバを使ったリモートでの起動を試したが,どうも使いづらい。
Macからだと,XQuartzをあらかじめMacにインストールしておき,
以下のSSHコマンドで接続し,

Jupyterを起動するだけ。

これで,リモートサーバでFirefoxが立ち上がり,MacのXQuartzで表示される。
しかしこれがいかんせん使いづらい。遅いし,サーバ側のFirefoxなので見た目も悪く,日本語入力も一苦労。

設定

Jupyter

まずはここを参考に設定する。

~/.jupyter/jupyter_notebook_config.pyを編集。ポートが8080が空いている場合には以下のように指定する。

R

Rも使いたいので,ここを参考にRを起動してインストール。

起動

起動時に現れるこれから,

以下のようにPCのブラウザのアドレスバーに打ち込めばOK

gcc6でRMecabのインストールはエラー

大学のサーバのGCCが6.2だったのでメモ。

RMeCabのインストール

エラーになる。

GCC6だとエラーになるので、GCC5台にしないと駄目です。

因みにソースコードはinstall.packageのときにオプションを付けると消されないでローカルファイルに残ります。

Rをソースコードからインストール

スーパーユーザ権限のないサーバにソースコードからインストールしてみたのでそのメモ

大学のサーバなど勝手になんでもインストールできない環境ではローカルのユーザ環境に色々とインストールしないといけません。今回はRをインストールしてみました

Rの取得

cranからRのソースコードをダウンロードしコンパイルします

エラーになります

足りないライブラリを入れていきます

bzip2

このあたりを参考にMakefileを修正しておきます。CFLAGSに-fPICを追加します

makeします

Rのconfigを再開します。この際、オプションにライブラリのパスを入れます

またエラーです

xz

xzライブラリを入れます。

Rのconfigを再開

またエラー

pcre

pcreライブラリを入れる。ここで、UTF8を有効にしておきます

Rのconfigを再開

またエラーです

curl

Rのconfigを再開

成功しました

コンパイル

またエラー。。

これは使っているGCCとそのライブラリがずれていたためでした。
LD_LIBRARY_PATHに使っているGCCのライブラリパスを前の方に追加し再度make

これでOKです。

Rで株価データ取得

Rで株価データの取得のメモ
quantmodは素晴らしい!!

DOW

DowはYahoo.comから取得します。srcに”yahoo”をセット

デフォルトの名前では使いづらいので、必要なデータを別のデータフレームに入れて名前をつけます。

取得するデータはxts型ですので扱いやすいです

日本株

日本株はsrcにyahoojとYahooJapanを指定するだけです

追記 19.06.18


上記のやり方ではどうやらエラーが出るようになりました。

取得方法がどうやら変わったのでしょうか?
下記のやり方でとれるようです

shinyでデバッグプリントを出す方法

すぐ忘れるのでメモ

shinyとは

Rの軽量Webフレームワークshiny。Rで計算した結果をWebで簡単に表現できるので非常に便利です。

RStudioを使ってデバッグすればいいのでしょうが、サーバサイドでいきなりコーディングし、訳の分からないエラーが発生した時には非常に困ります。
簡単にデバッグする方法は以下のとおりです

ブラウザ

Chromeのメニューから「その他のツール」ー「デベロッパーツール」を選択します。
そのメニューからConsoleを表示させると、Javascriptでサーバ側のエラーを表示してくれます。
これは非常に便利。

デバッグプリント

ソースコード上にデバッグプリントを埋め込んで変数の内容を確認するには

こんな感じでserver.R上に記述します。これで /var/log/shiny-server以下のファイルに出力されます。

まとめ

Rはスクリプト言語なので、エラーになる直前までは普通に実行してくれますので、エラーとなる直前にデバッグプリントを仕込むと良いでしょう

Rのh2oでエラー対応法

H2Oパッケージを触っていてエラーが出たのでメモ

環境

  • ubuntu14.04
  • R-3.3.1
  • h2o-2.0.1

インストール

まずここを参考にインストールします

cmake

h2o

設定

起動

サンプル

ここのサンプルを実行してみます

ここでエラー発生

どうやら、h2oの仕様が変わったようです。こちらを参考に修正します

またまたエラー

仕様をみると、また変わっていました。以下のように修正します

続けます

これでうまく実行できました

終了

仕様がよく変わるので、メジャーバージョンアップ時は要注意です

Rでword2vec

こちらを参考にRでWord2Vecを実行してみたが、ちょっとハマったのでメモ

パッケージインストール

必要なパッケージをインストールします

データ作成

青空文庫から夏目漱石の三四郎をテストデータとします

UTF8へ文字コードを変換しておきます。ちなみにmecabはUTF8のものをインストールしておいてください

R実行

Rから実行します

threadsはCPU数−1あたりで設定します
これを実行すると

このようなエラーが出ます
この場合には気にせずRで

これで読み込み直してやります。

確認

ま、こんなもんです