How can I write missing value ncwriteatt
8 次查看(过去 30 天)
显示 更早的评论
I created a netcdf file with attributes correctly, but I tried to add also missing value (1.0000e+20) as number to variabel attribute part, I encountering with error. Does anyone know where my mistake is so that I can correct it. I tried below command.
missing_value = 1.0000e+20;
missing = string(missing_value);
ncwriteatt(outputfile,'salinity','missing_value','missing')
Error using netcdflib
The NetCDF library encountered an error during execution of 'putAttText'
function - 'Not a valid data type or missing_value type mismatch (NC_EBADTYPE)'.
Thanks!
2 个评论
Walter Roberson
2024-2-3
ncwriteatt(outputfile,'salinity','missing_value',missing)
would be more likely.
... But I suspect that you want
ncwriteatt(outputfile,'salinity','missing_value',single(missing_value))
回答(1 个)
Walter Roberson
2024-2-6
You cannot set the _FillValue of a variable after the variable is created.
FillValue — Replacement value for missing values
scalar | "disable"
Replacement value for missing values, specified as a scalar or "disable". The default value is supplied by the netCDF library. To disable replacement values, specify a value of "disable". You cannot disable FillValue when writing string data to files with format netcdf4.
Note
The nccreate function assigns the value of FillValue to the _FillValue attribute of the new netCDF variable varname. You cannot change the value of this attribute after you have created the variable.
This argument is available only for files with format netcdf4 or netcdf4_classic.
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!