Reference to non-existent field 'folder'.

Hi I have this coding to extract data from multiple .nc file, however, during running the code there is an error
Here is the code:
clear all;
clc;
files = dir('*.nc');
outputDirectory = '2023_try'; %create your .asc folder eg: 202201
% Create the output directory if it doesn't exist
if ~exist(outputDirectory, 'dir')
mkdir(outputDirectory);
end
for k = 1:length(files)
ncfile = fullfile(files(k).folder, files(k).name);
%SST = ncread(ncfile, 'SST');
%SSSanomaly = ncread(ncfile, 'SSS_anom');
%SSSuncorrected = ncread(ncfile, 'SSS_uncorr');
SSS = ncread(ncfile, 'SSS_corr');
Lat = ncread(ncfile, 'Latitude');
Lon = ncread(ncfile, 'Longitude');
Data = [Lat(:), Lon(:), SSS(:)] %SSSuncorrected(:), SSSanomaly(:), SST(:)];
id = Lat>=0 & Lat<=14 & Lon>=95 & Lon<=126;
Data1 = Data(id,:,:);
% Data1(isnan(Data1(:,3)),:) = [];
%Data1(isnan(Data1(:,4)),:) = [];
%Data1(isnan(Data1(:,5)),:) = [];
%Data1(isnan(Data1(:,6)),:) = [];
%id = (Lat >= 0 & Lat <= 14);
%Data1 = Data(id, :);
% Extract the filename without the extension
[~, baseFileName, ~] = fileparts(ncfile);
% Create the output .asc filename
outputFileName = fullfile(outputDirectory, [baseFileName '.asc']);
% Save the data as an ASCII file
save(outputFileName, 'Data1', '-ASCII');
end
Here is the error:
Reference to non-existent field 'folder'.
Error in SMOS_nc_extract_all (line 10)
ncfile = fullfile(files(k).folder, files(k).name);

답변 (2개)

Jonas
Jonas 2024년 3월 11일
편집: Jonas 2024년 3월 11일

0 개 추천

if there are no .nc files in the current directory, then
files = dir('*.nc');
will be empty, and as consequence
files(k)
will be referring to an empty struct and the field
files(k).folder
will not exist

댓글 수: 1

MAT NIZAM UTI
MAT NIZAM UTI 2024년 3월 11일
In the current directory, there is .nc file.. but there is still same error..

댓글을 달려면 로그인하십시오.

Walter Roberson
Walter Roberson 2024년 3월 11일

0 개 추천

In sufficiently old versions of MATLAB, there is no .folder field in the results of dir.
I think .folder was added roughly R2013b

카테고리

도움말 센터File Exchange에서 Standard File Formats에 대해 자세히 알아보기

질문:

2024년 3월 11일

답변:

2024년 3월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by