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

CSVファイルをインポートし解析をしたいのですが、データが全体のデータが20000ほどあり、これを1000データずつ読み込み解析したいと考えています。こちらのやり方が分かららず困っています。 ご指導して頂けると幸いです。

 Akzeptierte Antwort

Kojiro Saito
Kojiro Saito am 18 Jan. 2021

0 Stimmen

datastoreのReadSizeを1000にして、1チャンク毎に処理すれば良いと思います。
ds = datastore('mydata.csv', 'ReadSize', 1000);
while hasdata(ds)
t = read(ds); % 1000データずつの読み込み
% ここに1000データずつの解析
%
end
こちらの例「大規模な表形式テキスト ファイルの読み取りと解析」も参考になるかと思います。

1 Kommentar

吏玖 秋山
吏玖 秋山 am 18 Jan. 2021
Bearbeitet: 吏玖 秋山 am 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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 大きなファイルとビッグ データ finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!