Making 3d array using 2d arrays and how to do that
2 次查看(过去 30 天)
显示 更早的评论
I have 438 files which are containing a 2d data. The size of the 2d data varies, sometimes the size is 215x3245 and sometimes this is 215x3246. Now my objective is to make a 3d array od 438x215x3245 or 438x215x3246. I have written the code like below :
files_jan = dir('S5P_OFFL_L2__CH4____2019*.*');
h = zeros(215,3245,438);
for j = 1:438
h(:,:,j) = ncread(files_jan(j).name,'/PRODUCT/methane_mixing_ratio'); % Note that I shifted j to the third position
end
This code is giving error,as i prelocate the data size of 215x3245x438 and sometimes the right side has a dimension of 215x3246x438. How can i solve this problem?
0 个评论
采纳的回答
KSSV
2021-6-18
编辑:KSSV
2021-6-18
files_jan = dir('S5P_OFFL_L2__CH4____2019*.*');
h = zeros(215,3245,438);
for j = 1:438
temp = ncread(files_jan(j).name,'/PRODUCT/methane_mixing_ratio'); % Note that I shifted j to the third position
if size(temp,1) ~= 3245
temp = imresize(temp,[3245 438]) ;
end
h(j,:,:) = temp ;
end
5 个评论
KSSV
2021-6-18
This is a different error. Check your ncfile, is the file corrupt or does the file exist or does the file have said variable.
Try reading the file seperately.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 NetCDF 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!