爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
12
返回列表 发新帖
楼主: 夏夜

[讨论] matlab读取nc数据的一个问题

[复制链接]

新浪微博达人勋

发表于 2015-9-23 16:50:16 | 显示全部楼层
{:eb315:}
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2015-10-29 12:11:57 | 显示全部楼层
我也遇到了相同的问题,对比直接打开的结果&ncread之类的数值,证明ncread会自动的将scale加进去,得到正确数值。offset不清楚,应该我处理的数据offset为0。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-10-29 16:45:34 | 显示全部楼层
不错,学到了很多东西,论坛里很多高人
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-11-23 13:06:03 | 显示全部楼层
夏夜 发表于 2014-9-9 09:01
help ncread:

The following attribute conventions are applied

有的nc文件fillvalue跟nc文件中具体某个物理量的missing_value不一致,简直杯具~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-6-4 16:17:11 | 显示全部楼层
kongfeng0824 发表于 2014-9-9 19:18
ncread一般会直接读取成正确的数值。只有getVar之类的才需要转换。版本必须在2012a及以上

你好,我用的是matlab2016版的,但是在使用ncread 读取时,并没有像上面所说的,直接读取了正确值,_Fillvalue 值被nan 替代,数值乘上了scale_factor。请问我的程序可能哪里出现了问题呢?
lat1=ncread(readname{yn,m},'lat');
lon1=ncread(readname{yn,m},'lon');
sla1=ncread(readname{yn,m},'sla');

readname{yn,m} 是存在cell中的文件名。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-7-11 08:58:00 | 显示全部楼层
                                    
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-11-8 09:08:00 | 显示全部楼层
kongfeng0824 发表于 2014-9-9 19:18
ncread一般会直接读取成正确的数值。只有getVar之类的才需要转换。版本必须在2012a及以上

请问怎么转换,我就是用
z=netcdf.getVar(ncid,4,'double');
t=netcdf.getVar(ncid,5,'double');
% t1=t1-273.15;%变为摄氏度;
r=netcdf.getVar(ncid,6,'double');% 'Relative humidity'
u =netcdf.getVar(ncid,7,'double');%'U component of wind'
v=netcdf.getVar(ncid,8,'double');%'V component of wind'
发现数值差别太大了,不知道怎么转换

密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-12-4 19:35:30 | 显示全部楼层
kongfeng0824 发表于 2014-9-9 19:18
ncread一般会直接读取成正确的数值。只有getVar之类的才需要转换。版本必须在2012a及以上

对的,不行就double一下就好了
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表