MATLAB Answers

1つのCSVファイルを分割してインポート

16 views (last 30 days)
吏玖 秋山
吏玖 秋山 on 17 Jan 2021
Edited: 吏玖 秋山 on 18 Jan 2021
CSVファイルをインポートし解析をしたいのですが、データが全体のデータが20000ほどあり、これを1000データずつ読み込み解析したいと考えています。こちらのやり方が分かららず困っています。 ご指導して頂けると幸いです。

Accepted Answer

Kojiro Saito
Kojiro Saito on 18 Jan 2021
datastoreのReadSizeを1000にして、1チャンク毎に処理すれば良いと思います。
ds = datastore('mydata.csv', 'ReadSize', 1000);
while hasdata(ds)
t = read(ds); % 1000データずつの読み込み
% ここに1000データずつの解析
%
end
こちらの例「大規模な表形式テキスト ファイルの読み取りと解析」も参考になるかと思います。
  1 Comment
吏玖 秋山
吏玖 秋山 on 18 Jan 2021
ご回答のありがとうございます。
先ほど実行はうまくいったのですが、readSizeを1000で入力をしたのですが、実行結果の値が1000個ではなく773個になってしまいます。また、whileをしているのですが繰り返しが起こらず一回で終了してしまいます。お手数をおかけしますが、ご指導いただけると幸いです。
ds = datastore('P01.csv','ReadSize', 1000);
while hasdata(ds)
p01= read(ds); % 1000データずつの読み込み
stackedplot(p01);
% ここに1000データずつの解析
%
end

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!