問題タブ [rjava]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - rJavaジェネリック型
rJavaパッケージで遊んでいますが、rJavaはJavaジェネリック型を認識していないようなので、ジェネリック型パラメーターを持つJavaオブジェクトを作成するのに苦労しています。次のようなJavaクラスがある場合:
既に作成された B オブジェクトを (インスタンス化された型パラメーターを使用して) 渡すことによって R セッションから A オブジェクトを作成したいのです.jnew()
が、rJava は常にエラーを出します:
これに対する回避策はありますか?
java - rJava メモリ エラー
最新バージョンのrでパッケージ「dismo」を使用して大規模な種分布モデルを構築しています。コードを使用して基本モデルを処理すると、次のようになります。
次のエラーが表示されます。
このエラーについてstackoverflowとインターネットでいくつかの議論がありますが、rコードで問題を解決する方法に対処しているようには見えません. この問題に関するご意見をお待ちしております。
乾杯、イスラエル
linux - RedHat Linux (RHEL6) の Tomcat で使用する R の環境変数を設定する方法
RHEL6 (6.4) で R と Tomcat をセットアップしようとしています。
R をインストールして実行できます。Tomcat 7 をインストールしており、ファイル ファイルをホストできます。アプリケーションを WAR ファイルとしてパッケージ化し、tomcat を使用してデプロイしました。アプリケーションは、R コンポーネントを使用するまで、すべての面で正常に動作します。
これは、catalina.out に見られるように、次のエラーでクラッシュする場所です。
R の下に rJava がインストールされています: install.packages("rJava") 正常にインストールされ、R のライブラリ フォルダー内に rJava があります。
/etc/profile で次のように定義しました。
私の理解では、サーバー上のすべてのユーザーに対してグローバルに JAVA_HOME、R_HOME、PATH、および LD_LIBRARY_PATH を設定する必要があります。Tomcat がルートの下で実行されていることはわかっており、ルートが「 」、「 」、「 」、「 」を介して上記の設定どおりに上記のすべてのパスを確認できたことecho $JAVA_HOME
をecho $R_HOME
確認echo $LD_LIBRARY_PATH
できecho $PATH
ます
したがって、これらの .so ファイルを開くことができないと不平を言っている理由がわかりません。
また、クラッシュすると Tomcat がシャットダウンします。
ありがとう!
r - ライブラリ「rbpg」を介してブルームバーグからデータをダウンロードする際のエラー
Bloomberg から定期的にデータをダウンロードするための R コードがあります。4か月前からごく最近まで、まったく問題なく機能していました。ライブラリ「rbpg」はまだ正常にロードされており、接続を生成すると、メッセージは問題ないようです。
ただし、tick(...) を使用してブルームバーグからデータのダウンロードを開始すると、次のエラー メッセージが表示されてプロセスが停止しました。
このエラー メッセージに基づいて何が問題なのかわかりません。rJava または Bloomberg API のいずれか、または別の場所にある場合もあります。更新によるバージョンの競合が疑われますが、よくわかりません。事前にどうもありがとうございました。
java - R で Java の「ArrayList」のようなデータ構造を実装して、ReferenceClasses オブジェクトを 1 つずつ高速に追加できるようにする (おそらく rJava を使用)
R で多くの一般的な線形回帰を含む離散イベント シミュレーションを実行する必要があるため、多数の R オブジェクトをリストまたは配列に 1 つずつ追加する必要があります。これですべてが実装され、シミュレーターが実行されます。ただし、プロセス全体のパフォーマンスのボトルネックは、実際にはリストの追加にあることに気付きました (6000 イベントをシミュレートするのに約 15 分かかります)。R のリスト、ベクトル、または配列内のオブジェクトの数が多くなると、挿入が非常に遅くなることに気付きました。シミュレーション コードの多くの部分で何度も使用されるため、再利用可能なリスト データ構造が必要です。R で記述された単純な ArrayList の実装を次に示します。
リストを初期化し、特定の数の行を事前に割り当てようとしたことに注意してください。これでもパフォーマンスは向上しませんでした。実際、事前に割り当てない場合よりもさらに遅くなります。(これは、私が使用している参照クラスのためかもしれません。私の経験では、事前割り当ては通常、参照クラスを使用しない場合に R でのパフォーマンスを向上させます) そのため、Java ArrayList をリストのバックエンド データ構造として使用することを考えました。rJava を試してみました。
「get」機能を機能させることができなかったため、現在苦労しています。R では使用できない REXPReference オブジェクトを常に返します。返してほしいのは、実際には ArrayListJ に追加された元の R オブジェクト obj です。挿入された R オブジェクトは、ArrayListJ に挿入された後に他のロジックによって更新された可能性があるため、最初に参照されたオブジェクトである必要があります。誰かが ArrayListX または ArrayListJ の実装を手伝ってくれますか? 基本的に、多数の R 参照クラス オブジェクトをリストに 1 つずつ一定の時間で追加できる必要があります (リストが大きくなってもパフォーマンスが低下しないようにする必要があります)。ArrayListJ 実装の場合、「get」メソッドを使用して元の参照された R オブジェクトを取得するにはどうすればよいですか? ありがとう。
java - JRI REXP ブール値
kruskalmc というメソッドから結果を取得したいと考えています。
R コンソールの結果は次のようになります。
今、差分列から値を取得したいと思います。
Javaで取得しようとすると:
次のようなものが返されます: [BOOLi* ]
JavaでBOOLiオブジェクトを反復処理するにはどうすればよいですか?
私が欲しいのは値FALSE TRUE FALSEです。
java - R.java のトークンに関する 100 の構文エラー
すべてが同じエラーを言うという点で、正確に 100 個のエラーがありR.java
ます。エラーは次のとおりです。
トークン "10" の構文エラーです。このトークンを削除してください
変更しないようにという危険信号がいたるところにあり、変更R.java
しようとしても停止するように促されます。その後、何かを変更すると、エラーが発生したコードに戻ります。エラーの原因となっている行は以下のとおりです。
strings.xml
スペイン語をローカライズしてサポートしようとしているので、何百もの文字列を入力するのに苦労しました。多分それと関係があると思います。
私の質問は、正確に何が間違っているのですか? my andフォルダー内の2 つのstrings.xml
ファイルには、フラグが立てられたエラーはありません。values
values-es
java - Ubuntu 13.04 の R 3.0 に rJava をインストールできない
rJava
でパッケージを呼び出すことができませんR 3.0
。次のメッセージを受け取りました
rJava
パッケージを再インストールしようとするとエラーが発生します。私はの出力を提供しましたR CMD javareconf
Ubuntu 13.04 を使用しています。apt-get install r-cran-rjava
問題の解決に役立たないものも試しました。jni.h に関しては、ここにいくつかの解決策がありました。しかし、ここでソリューションをどのように使用できるかわかりません。
java - JRI による R エラーの読み取り
Javaを介してRと通信するためにJRIを使用しています。R コードの結果を Double として取得しようとすると、NullPointer が返されます。通常、これは R のエラーが原因です。エラーを読み取るために、R コンソールの出力を Java に取得することは可能ですか?