How to write the name of file into entry of matrices?

1 Ansicht (letzte 30 Tage)
Frisda Sianipar
Frisda Sianipar am 27 Mai 2021
Kommentiert: Stephen23 am 28 Mai 2021
I want to write the name of some pictures as a entry of a matrices
i have code like this:
myFolder = uigetdir;
filePattern = fullfile(myFolder, '*.jpg');
theFiles = dir(filePattern);
BanyakGambar=length(theFiles)
for k = 1 : BanyakGambar
baseFileName = theFiles(k).name;
fullFileName = fullfile(theFiles(k).folder, baseFileName);
fprintf(1, 'running %s\n', baseFileName);
D(k,1)=k;
s=string(baseFileName);
D(k,2)=s; %This line is the problem!!
end
but why the name of the pictures can't display in matrices D, and i got this result for matrices D
i expect the result is like this (manually write in excel). Thankyou in advance
  5 Kommentare

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 27 Mai 2021
Bearbeitet: Walter Roberson am 28 Mai 2021
You cannot do that. It is never possible to store a string() or character vector into a numeric object.
You need to use a cell array or struct or table()
  2 Kommentare
Frisda Sianipar
Frisda Sianipar am 28 Mai 2021
Can you give some example to do that sir?
Walter Roberson
Walter Roberson am 28 Mai 2021
word = {'hello'; 'Frisda'}
word = 2×1 cell array
{'hello' } {'Frisda'}
number = [86; 99]
number = 2×1
86 99
as_cell = [word, num2cell(number)]
as_cell = 2×2 cell array
{'hello' } {[86]} {'Frisda'} {[99]}
as_table = table(word, number)
as_table = 2×2 table
word number __________ ______ {'hello' } 86 {'Frisda'} 99
as_struct = struct('word', word, 'number', number)
as_struct = 2×1 struct array with fields:
word number

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Environment and Settings 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