How do I append new data to a new variable in a NETCDF file ?
10 ビュー (過去 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!