2017-08-30 7 views
0

許可されていない私はこの1つに似た質問があります...負の長さのベクトルが

Merge error : negative length vectors are not allowed

しかし、私は1つの列で二つのファイル(3列それぞれ1300万行ずつ)マージしていますし、しかし、私は3TBのメモリをシステム上でこれらを実行している、これまで提案答えは十分なメモリがないということである

Negative length vectors are not allowed. 

(それが到達した最大値は247だった私に語ったの:同様のエラーを持っていますGB)。これはまだメモリの問題に起因する可能性がありますか?これらのデータフレームを減らして結合するだけの価値があるのでしょうか?

ありがとうございました。

幸運を祈り、 ナタリー

+1

列は正確に一致していますか?重複はありますか?マージ後のレコード数を知っていますか? Rは、Rが使用した総メモリではなく、割り当てようとした最後のベクタのメモリエラーだけを報告するので、エラーメッセージはまれに全体の画像になります。このケースでは作成するのが難しい再現可能な例がないと何が起こっているのかを確かめることは本当に不可能です。 – MrFlick

+1

「マージ」中に 'by'で重複が参照されている可能性があることを示唆する他の同様の質問があります。 https://stackoverflow.com/q/42479854/8382207 – Sagar

+0

IDに値が重複すると、マージされたdata.frameのサイズが爆発する可能性があります。両方のデータセットでIDが4回重複していると考えてください。最終的なdata.frameは、オリジナルと比較して16倍の行数になります。 – lmo

答えて

0

@lmo @Sagar @MrFlick私がすることによってマージてるの列の重複があります。各サンプルは、複数の異なるコンポーネントの変化はので、私はもっぱらサンプルを参照するこれに生存データに追加している

Sample Component Value 
a     x     -1 
a     y     1 
b     x     0 ... 

ようになりましたので、私は、理想的にしたいのですが

Sample Component Value  Survival 
a     x     -1   0.8 
a     y     1   0.8 
b     x     0   0.2 

私はマージがこれを提供すると思った...これを仮定するのは間違っていますか?サンプル名によるマージを使用してこれにサバイバルデータを追加すると、データエントリがさらに重複しますか?私はこれを実行しようとするのが最善の方法をよく分かりません。

短縮データファイルでテストして、(a)が動作し、(b)がデータを展開しているかどうかを確認します。その他の提案はありますか?

+0

元の投稿の一部としてこれを含めてください。このタイプのコンテンツで動揺する人々は、答えとして含まれています。 – lmo

関連する問題