COMPARE CELLS VIA A LOOP

1 vue (au cours des 30 derniers jours)
Ivan Mich
Ivan Mich le 20 Jan 2021
Commenté : Walter Roberson le 20 Jan 2021
Hello,
I have a problem with a code. I have two columns with cell (200x1 cell) in a csv file. I would like to compare these two columns, and escpecially the first letter of them.
I wrote this code:
clc
clear
%comparison
filename1 = 'test.xlsx';
[d1,tex]= xlsread(filename1);
NAME1=tex(:,1);
k1=strcat(NAME1{1}(1)) %first letter
NAME2=tex(:,3);
k2=strcat(NAME2{1}(1)) %first letter
ndata=1:size(NAME1,1)
but I do not know how to continue it.
I think if statement would help. I mean:
for i
if k1==k2
write 'aggree'
else write 'disaggree'
end
end
Could you please help me?

Réponses (1)

Walter Roberson
Walter Roberson le 20 Jan 2021
%comparison
filename1 = 'test.xlsx';
[d1,tex]= xlsread(filename1);
NAME1=tex(:,1);
k1 = cellfun(@(C) C(1), NAME1); %first letter
NAME2=tex(:,3);
k2 = cellfun(@(C) C(1), NAME2); %first letter
mask = k1 == k2;
choices = {'disagree', 'agree'};
results = choices(mask+1);
  2 commentaires
Ivan Mich
Ivan Mich le 20 Jan 2021
Excuse me again, If I want to create a new .xlsx file with the disagrees which command should I use?
Walter Roberson
Walter Roberson le 20 Jan 2021
d=[NAME1(~mask), NAME2(~mask)] ;
now writecell or xlswrite d

Connectez-vous pour commenter.

Catégories

En savoir plus sur Entering Commands dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by