MATLAB Answers

0

csvファイルデータ​の続きにデータを書き​込む方法について

Asked by Koki Hashiguchi on 10 Sep 2019
Latest activity Commented on by Koki Hashiguchi on 24 Sep 2019
下記左側のcsvファイルの続きに、右側のcsvファイルの赤□囲み部を書き込む方法についてご教授ください。
スクリプトでSample2.csvを読み取り、rawの中身をSample1.csvの続きに書き込みたいと考えています、
[num,txt,raw] = xlsread('Sample2.csv');
[row1,col1] = size(raw);
for txt_num = 1 : col1
s1 = 'A_tool';
s2 = txt{1,txt_num};
tf = strcmp(s1,s2);
if tf == 1
tf_num = txt_num;
end
end
num(isnan(num)) = 0;
txt(:,1:tf_num - 1) = [];
txt(2:row1,:) = [];
raw(1:1,:) = [];
Answers0910.png

  0 Comments

Sign in to comment.

Products


Release

R2018b

1 Answer

michio
Answer by michio
on 20 Sep 2019

data1 = readtable('Sample1.csv');
data2 = readtable('Sample2.csv');
data12 = [data1;data2];
writetable(data12,'Sample12.csv');
ではいかがでしょう。
Sample1.csv の続きに書き込むのも writetable 関数で可能ですが、書き込む範囲を確認するために Sample1.csv の情報(データ行数)は確認する必要があります。それなら両方読み込んで1つの変数に纏めて、書き出した方が楽かなと思いまして。
日付のフォーマットも、Sample1.csv と Sample2.csv で違うのが気になりましたが、readtable 関数だとどちらも datetime 型で読み込むので楽です。

  1 Comment

Koki Hashiguchi on 24 Sep 2019
michio様
お世話になっております。
ご解答いただきありがとうございます。
読み込むcsvファイルの列数や行数が異なる場合は、if文を用いて列数や行数判定を行って
書き込む処理を行えばよろしいでしょうか。

Sign in to comment.