Way for matching letters and numbers in two files?

1 Ansicht (letzte 30 Tage)
Ivan Mich
Ivan Mich am 22 Dez. 2020
Kommentiert: Ivan Mich am 23 Dez. 2020
Hello,
I have a question about one code. I have two files. file1, has one column with numbers only. the second file (file2) has two column. in which the first column has numbers and the second columnn has letters/characters. I would like to add a new column in file1 which would have letters/characters, based on the file2 structure.
I send you some pics in order to see what I want to do.
file1
file2
final file
I attach the two files (final1.xlsx & file2.xlsx) and the final file (final_file.xlsx) I would like to create
could you help me please?

Akzeptierte Antwort

Image Analyst
Image Analyst am 22 Dez. 2020
Not sure how file1 is involved. If you want to sort the cell array file2 based on the contents of column 1, use sortrows(ca, 1). If you need anymore help, attach the two files.
  3 Kommentare
Image Analyst
Image Analyst am 23 Dez. 2020
Ivan, I'm sure you've figured it out by now, but a simple for loop will do the trick. Here is what I have:
m1 = readmatrix('file1.xlsx')
ca2 = readcell('file2.xlsx')
col2a = cell2mat(ca2(:, 1))
% Make output cell array
ca3 = cell(size(m1, 1), 2);
for row = 1 : size(m1, 1) % For every row in file 1
rowIn2 = find(col2a == m1(row), 1, 'first'); % Find the first matching row.
ca3{row, 1} = m1(row); % Assign the number
ca3{row, 2} = ca2{rowIn2, 2}; % Assign the letter.
end
ca3 % Show in command window
outputFileName = fullfile(pwd, 'file3.xlsx');
writecell(ca3, outputFileName);
If it works, can you please "Accept this answer"?
Ivan Mich
Ivan Mich am 23 Dez. 2020
Thank you very much!! It works!!!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by