Excelファイルからテキスト列を読み取り、内容を確認してから、別の列(数値)のセルの内容を他のExcelファイルに書き込むスクリプトを作成しようとしています。
function [ output_args ] = export3( filename,cellranges )
%UNTITLED2 Summary of this function goes here
% Detailed explanation goes here
[~,txt] = xlsread(filename, cellranges);
actRange = strrep(cellranges,'H','D');
[num] = xlsread(filename, actRange);
active = [];
rest = [];
for ii = 1 : length(txt)
if strcmp(txt{ii},'ACTIVE')
active(end+1) = num(ii)
elseif strcmp(txt{ii},'REST-S')
rest(end+1) = num(ii);
end
end
xlswrite('activity.xls',active')
xlswrite('rest.xls',rest')
end
問題は、数値列に NaN 値がある場合、それが削除され、txt セルと num ベクトルの間に不一致が生じ、「インデックスが行列の次元を超えています」というメッセージが表示されることです。エラー。数値ベクトルに NaN 値を保持したいのですが、どうすればよいですか?
おそらくExcelでそれを行うより良い方法がありますが、私はそれに慣れていません.Matlabの基本的な知識があるだけです.