問題タブ [r-bigmemory]

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.

0 投票する
0 に答える
241 参照

r - Rでbigmemoryでigraphを使用する

R の igraph で bigmemory オブジェクトを読み取ることができません

igraphでbig.matrixデータ型を読み取る方法はありますか?

0 投票する
2 に答える
1716 参照

r - Windows OS に BigMemory と bigrf をインストールする方法

R インストールに bigmemory をインストールしようとしています。私のOSはWindows 7 64ビットで、R V2.15.1、2.15.2、および3.0.1 64ビットで試しましたが、動作しません。

私はいくつかのオプションを試しました

  1. 現在のソースをダウンロードし、R v3.0.1
    install.packages("D:/Downloads/bigmemory_4.4.3.tar.gz", repos = NULL, type="source")でコマンドを実行します
    が、これによりエラー "ERROR: Unix 専用パッケージ」
  2. 古いソースをダウンロードし、R V2 V3 などのさまざまなインストールで同様のコマンドを実行すると、
    「エラー: パッケージ 'bigmemory' の構成に失敗しました」というエラーが表示されます。

何か案は?私は実際に bigrf をインストールしようとしていますが、bigmemory は依存関係にあるようです。これに対する回避策はありますか?

どうもありがとう

0 投票する
1 に答える
291 参照

c++ - Rのbig.matrixからCのポインタでメモリのチャンクにアクセスする

Rのbigmemoryパッケージは、言語へのポインターを返すbig.matrix何らかのオブジェクトとして R セッション間で共有できる行列をメモリに格納するクラスを提供します。C++R

例えば:

パッケージのより多くの関数を使用してbigmemory、行列の簡単な説明をファイルに書き出し、別の R セッションを開き、その新しい R セッションからメモリ内の行列にアクセスできます。

またはを使用して/コードをR呼び出すこともできます。CC++.Call().C()

共有メモリ内のこのマトリックスで実行されるいくつかの関数をCまたはC++(私はよりよく知っています)に実装したいと思いますが、これを行う方法がわかりません。C

メモリ内のアドレスを指定すると、既知のサイズとともに double[][] in にアクセスできますCか? または私は完全に軌道から外れていますか?

0 投票する
2 に答える
1840 参照

r - パッケージ bigmemory が R 64 3.0.2 にインストールされない

Windows の R 64 バージョン 3.0.2 に bigmemory パッケージをインストールしようとしています。次のエラーが表示されます。

install.packages('bigmemory')

どんな助けや洞察も大歓迎です。以前の R バージョン 2.15 でも同じエラーが発生します。

0 投票する
1 に答える
1255 参照

r - Rでbig.matrixの行合計を計算していますか?

約 6000 万行と 150 列 (合計約 90 億要素) の大きな行列があります。このデータをbig.matrixオブジェクトに保存しました( package からbigmemory)。ここで、各行の合計を計算したいと思います。これは列指向であるため問題です。すべての集計関数が列指向であり (例: 、など)、使用可能な関数がないbig.matrixことがわかる限り、行の合計を計算するためのデフォルト。もちろんできますが、これには非常に長い時間がかかります。列を 1 つずつループし、ベクトル化された加算を使用して列を追加することもできます。colsumcolmaxapply(x, 1, sum)

しかし、これにはまだ 20 分以上かかります。また、ループのたびに新しい 6000 万要素のベクトルを作成しているため、明らかに最適ではありません。これを行うためのより速い方法が必要なようです。

編集

一度に 100 万行ほどのチャンクを処理し、それらに対して rowSums を呼び出し、結果を連結することで、これを 10 分に短縮しました。ただし、これを行うための最適化された方法があるかどうかを知りたいと思っています。

0 投票する
2 に答える
1124 参照

r - big.matrix をサブセット化する適切な方法

R で big.matrix オブジェクトをサブセット化する「適切な」方法があるかどうかを知りたいです。マトリックスをサブセット化するのは簡単ですが、クラスは常に「マトリックス」に戻ります。これは、このような小さなデータセットを扱う場合には問題ではありませんが、大規模なデータセットを扱う場合には問題になりませんが、非常に大きなデータセットでは、サブセットが「big.matrix」クラスの恩恵を受ける可能性があります。

0 投票する
1 に答える
505 参照

c++ - R Rcpp big.matrix 加盟

R で big.matrix オブジェクトの基本的な C++ コードを実装しようとしています。Rcpp パッケージを使用しています。ここでデモを読み、 rcpp-devel リストで見つけた別の単純な関数を適用しました。

このfun関数は、big.matrix オブジェクトを変更して、完全に正常に動作します。

ただし、単純な正方行列の転置関数を試してみると、行列は変更されません。fun関数は機能するのに、'BigTranspose' が機能しないのはなぜですか?