How do I append new data to a new variable in a NETCDF file ?
11 次查看(过去 30 天)
显示 更早的评论
I want to append new data to a new variable in the existing netcdf file and let other variables remain unchanged. However, when I use:
ncid=netcdf.open('E:\data\Landcover\MCD12Q1\heihe\surfdata_40x40_hh_gravtest.nc','WRITE');
gravid = netcdf.defVar(ncid,'PCT_GRAVEL','double',[40 40 10]);
error shows:
Operation not allowed in data mode (NC_ENOTINDEFINE)
do you know how to solve it ? thanks
1 个评论
dpb
2023-2-21
I "know (almost) nuthink!" per Sgt Schultz about NetCDF files, but the MATLAB interface supplies a higher-level abstracted function <nccreate> that purports to be able to do that. I'd suggest trying it.
If that fails, you'll have to dig a whole lot deeper into the file content of the file you have and the details of the required syntax/operations to add to it.
I dunno if .defVar is the first thing you can call or if you have to do more preliminary work first; it's a pretty complex format/system...
采纳的回答
Raghunathraju
2023-2-27
Hi,
As per my understanding, you want to append new data to a new variable in a NETCDF file.
You have used the following code to get your work done.
ncid=netcdf.open('E:\data\Landcover\MCD12Q1\heihe\surfdata_40x40_hh_gravtest.nc','WRITE');
gravid = netcdf.defVar(ncid,'PCT_GRAVEL','double',[40 40 10]);
But the datatype you used in “netcdf.defVar” is double which is invalid for NETCDF .Instead you can use “NC_DOUBLE”.
For further reference you can go through the link below
更多回答(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!