ファイルサイズが大き​いCSVファイルの読​み込みについて

조회 수: 34 (최근 30일)
neshin
neshin 2018년 10월 19일
답변: neshin 2018년 10월 21일
ファイルサイズが、行2000000 列10のファイルを読み込みたいです。 データインポートでは時間がかかってしまいます。 また、datastoreだと行数が多きいためエラーになってしまいます。
このファイルを読み込む方法を教えてください。

채택된 답변

Kazuya
Kazuya 2018년 10월 19일
편집: Kazuya 2018년 10월 19일
datastore が最適な気がしますが、どんな読み込みをされたときにどんなエラーがでましたか?
200万x10の行列だと、double 型で大体 150MBのサイズになりますが・・これをすべてメモリ上に読み込む必要がありますか?
tall 配列の機能を使うと、一度に全部読み込まずにいろいろ計算できるので、PCのメモリ容量に不安がある場合にお勧めです。その分計算時間は余計にかかるのは難点ですが。 参照: tall 配列
  댓글 수: 4
neshin
neshin 2018년 10월 20일
返信ありがとうございます。 色々調べたのですが、ファーマットが壊れている箇所はありませんでした。 datastoreでは、読み込めるサイズが決まってるのでしょうか?
とりあえず、このコードで読み込めました。
data = readtable(filename, 'delimiter', ',');
data;
何度も、ありがとうございました。
Kazuya
Kazuya 2018년 10월 20일
datastoreで読み込めるサイズが決まっているということはなさそうですが・・。もやもやしますね。。
私の場合は、数値であるべき列に途中で文字列が混ざっていたのが原因で途中で読み込みが止まっていた、、と記憶しています。その場合、readtable で読むと数値で読み込むはずの列が、セル配列になってたりするのでわかりやすいのですけども。

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

neshin
neshin 2018년 10월 21일
解明方法を探して頂いてありがとうございました。 また、知恵をかしていただければと思います。

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!