Filter löschen
Filter löschen

csvファイルの読み込みを速くする方法

44 Ansichten (letzte 30 Tage)
Takao
Takao am 13 Okt. 2020
Bearbeitet: Hiroyuki Hishida am 15 Okt. 2020
現在、1ファイル800MBほどあるテキストデータを読み込む作業をしています。
当然ながら、読み込みに掛かる時間が長く、1ファイル90秒ほど掛かっています。
この読み込み速度を速くする方法がないものでしょうか。
テキストデータの内容:約20,000,000行×8変数のカンマ区切り時系列データ
読み取りに使用している関数:readtimetable
(datastore/readやtextscanを使っての分割読み込みはかえって遅くなる結果となりました。)
他のプログラム言語ですと、マルチスレッドで処理することで速くなるケースがあるようです。
matlabでもParallel Computing ToolBoxを使うと速くできたりするものでしょうか。

Antworten (1)

Hiroyuki Hishida
Hiroyuki Hishida am 14 Okt. 2020
Bearbeitet: Hiroyuki Hishida am 14 Okt. 2020
こんにちは、
もし、同じファイルの読みこみでお困りであれば、mat化を試していただくのはいかがでしょうか?
matファイルをつくるために、一度はreadtableする必要ありますが、そのワークスペース変数をmat化しておけば、次回以降はreadtableではなくloadすることになります。
https://jp.mathworks.com/help/matlab/ref/save.html
いかがでしょうか?
菱田
  2 Kommentare
Takao
Takao am 15 Okt. 2020
菱田様
ご回答ありがとうございます。
mat化を試してみました。恐ろしく読み込みが速くなりました。
csvファイルの読み込み ⇒ 約90秒
matファイルの読み込み ⇒ 約7秒
(tic/tocで計測)
matファイルを作るのに時間は掛かりますが、その作業はプログラムで自動化しようと思います。
解決しそうです。ありがとうございました。
Hiroyuki Hishida
Hiroyuki Hishida am 15 Okt. 2020
Bearbeitet: Hiroyuki Hishida am 15 Okt. 2020
よかったです。 matファイルの設定もあわせてご確認いただければと思います。
https://jp.mathworks.com/help/matlab/import_export/mat-file-versions.html
今後ともよろしくお願いします。
菱田

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu データのインポートとエクスポート finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!