Ask matlab to compare variables per row between two column? Output a number "1" if the values are the same, output number "0" if the values are different.

2 次查看(过去 30 天)
dataFolder = uigetdir();%select folder
filePattern = fullfile(dataFolder, '*.csv');
list = dir(filePattern);
Output = table();
for kk = 1:numel(list)
filename = list(kk).name;
data = readtable(fullfile(list(kk).folder, filename));
if numel(list)(:,1)==numel(list)(:,4)
disp('Correct')
value = 1;
elseif numel(list)(:,1)~=numel(list)(:,4)
disp('Incorrect')
value = 0;
end
end
For multiple .csv files in a folder that appear like this:
I want to ask matlab to compare variables per row between column 1 and 4.
Output a number "1" if the values are the same:
numel(list)(:,1)==numel(list)(:,4)
and "0" if they are not:
numel(list)(:,1)~=numel(list)(:,9)
For example row 2 column 1 = 6, column 4 = NaN.
It means I would like to output a column in wich in the row 2 I will have a 0.
Where am I wrong? Something with the syntax for sure but where?

采纳的回答

Walter Roberson
Walter Roberson 2020-1-3
(Output{:,1} == Output{:,4}) | (isnan(Output{:,1}) & isnan(Output{:,4}))
The second part is needed to implement the "nans are equal" criteria.
  17 个评论
Walter Roberson
Walter Roberson 2020-1-5
value = zeros(1,numfiles);
Though it might be necessary to take special care because of the vector being passed in. I will need to reread the appropriate documentation.
Walter Roberson
Walter Roberson 2020-1-10
https://www.mathworks.com/matlabcentral/answers/498717-extract-the-displayed-column-vectors-into-table-and-csv-file#comment_782904

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by