for loop arcgridread files

3 Ansichten (letzte 30 Tage)
Kayelyn
Kayelyn am 31 Aug. 2023
Kommentiert: Mathieu NOE am 1 Sep. 2023
Hello, I have several digital elevation rasters saved as *.asc files in a folder. I am using arcgridread and I would like to create a function that would read each file in with the appropriate Z,R parameters.
Example Code
all_dems=dir('filnename')
for i=length(a)
baseFileName=as(K).name;
fprintf(1,'Now reading %s\n',fullFileName);
[Z,R]=arcgridread(fullFileName);
end

Antworten (1)

Mathieu NOE
Mathieu NOE am 1 Sep. 2023
hello
try this
I didn't index Z and R with k, as I suspect you want to use it right after (inside the for loop)
otherwise you may want to index it like
[Z{k},R{k}]=arcgridread(FileName);
d = dir('*.asc'); % d is a structure array
for k = 1:numel(d)
FileName=d(k).name;
fprintf(1,'Now reading %s\n',FileName);
[Z,R]=arcgridread(FileName);
% your code
end
  2 Kommentare
Kayelyn
Kayelyn am 1 Sep. 2023
Hmm Thank you for your help.This gave me an error: Error: "Assigning the function output to this expression is not supported." I was hoping the [Z,R] output would be a structure array for each variable and each raster
Mathieu NOE
Mathieu NOE am 1 Sep. 2023
hello again
are you using the code with
[Z,R]=arcgridread(FileName);
or
[Z{k},R{k}]=arcgridread(FileName);

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Performance and Memory 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