複数のファイルを単一のセル配列に読み込む方法は?
-
27-09-2019 - |
質問
大きなデータセットが5つのファイルに分割されています(それぞれに15000の属性があり、最初のファイルにはヘッダー(属性名)と9999のレコードが含まれ、他の4つには10000レコードが含まれています)。
TextScanを使用して、マージする必要がある5つのセルアレイを作成し、このアプローチが適切かどうかわからないか、5つのファイルすべてを単一のセルアレイに直接読み取る方が良いでしょう。とにかく、いくつかのセル配列を単一のセルアレイにマージする方法を示すか、いくつかのテキストファイルを単一のセルアレイに読み込むことができるかどうか、私は感謝します。
ありがとうございました!
解決
Java Magicを実行したい場合を除き、複数のファイルを1つの配列に直接読み取ることはできません。
ただし、セルアレイを取得したら、それらを簡単に組み合わせることができます。各セルアレイに同じ数の列があると仮定すると、次のように連結できます。
finalCell = [cell1;cell2;cell3;cell4;cell5];
他のヒント
Jonasの回答を展開すると、メモリが懸念される場合は、ファイルを読んでいるときにそれらを組み合わせて、5 x 15000 x 10000 + 1 15000 x 50000セルアレイがないことを避けることができます。
finalcell = textscan(fid_1、 'format');
finalcell = [finalcell; textscan(fid_2、 'format')];
finalcell = [finalcell; textscan(fid_3、 'format')];
finalcell = [finalcell; textscan(fid_4、 'format')];
finalcell = [finalcell; textscan(fid_5、 'format')];
よろしくお願いします、
アダム