Excelからのデータの読み込みと書き出しの速度を速くするにはどうしたらいいですか?
Show older comments
ある計測器の出力データがExcelで出力されます. 1フレーム35×35の数値データで1シートに100フレームのデータが入っており,それが8シートぐらいあります.(ファイルごとにシートの枚数は異なります) ここから繰り返し処理を使って1フレームずつのcsv形式のデータに出力しているのですが,1つのファイルを処理するのに何時間もかかってしまいます.コードは以下のような形で書いていますが処理を速くする方法があったら教えてください.
%切り抜き範囲の設定
xlrange=strcat(start_col,num2str(start_row),':',end_col,num2str(end_row));
%切り抜き
mat=xlsread(inputfilename,sheet,xlrange);
%csvで書き出し
dlmwrite(outputfilename,mat);
Accepted Answer
More Answers (1)
mizuki
on 6 Jul 2017
3 votes
Excelファイルのすべての列ではなく特定列だけであれば、 datastoreや並列計算を組み合わせたらさらに高速化できる可能性があります。
ただし、Michioさんのご提案された基本的な内容をお試しされた後にご検討ください。
Categories
Find more on スプレッドシート in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!