请选择 进入手机版 | 继续访问电脑版
爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 7256|回复: 10

[讨论] MATLAB存储dat文件

[复制链接]

新浪微博达人勋

发表于 2015-8-11 14:25:37 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
我在用matlab运算得出结果存储为*.dat类型的文件。但是我再读取该*.dat文件后却发现数据与原来的数据(.mat)有微小的差别。有谁知道是为什么呢?
存入的程序f=fopen('F:\DATA7\abc.dat','w');
fwrite(f,amip,'float');
fclose(f);

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-11 15:07:03 | 显示全部楼层
这个问题论坛里好像有人问过,你找找看
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-8-11 15:29:05 | 显示全部楼层
rs06 发表于 2015-8-11 15:07
这个问题论坛里好像有人问过,你找找看

哦,是吗。我找找看
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-11 16:01:57 | 显示全部楼层
看到某青年居然在学习,过来mark下,晚上萨拉
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-11 17:44:33 | 显示全部楼层
微小的差别指的什么?写成float32试一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-8-12 11:11:36 | 显示全部楼层
Aires 发表于 2015-8-11 17:44
微小的差别指的什么?写成float32试一下

就是按正常情况来说,当一组数据存为dat格式的时候,再用fread读取,应该和原来的数据一模一样才对。可是用
float(float32也是)存储的话和原来的数有10e-6的量级的微小差异。不过我试了试double存储的话就好了,没有差异了。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-12 11:17:16 | 显示全部楼层
卡拉蜂空间 发表于 2015-8-12 11:11
就是按正常情况来说,当一组数据存为dat格式的时候,再用fread读取,应该和原来的数据一模一样才对。可是 ...

不太明白你的意思,我是觉得如果你数据是double型的,那么写进去读出来应该是一样的才对,你是不是存储的数据是single?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-8-12 19:58:38 | 显示全部楼层
Aires 发表于 2015-8-12 11:17
不太明白你的意思,我是觉得如果你数据是double型的,那么写进去读出来应该是一样的才对,你是不是存储的 ...

数据是double类型,但我一开始存储的时候用的参数是float,如:fwrite(f,amip,'float');就会出现写进去dat的和读出来的有微小差别。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-13 19:02:31 | 显示全部楼层
来取个经的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-5-28 16:27:14 | 显示全部楼层
学习一下,也在做这个部分
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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