0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

制作netcdf数据:如何转换时间变量的单位?

冬至子 来源:猫肚肚的随笔 作者:猫肚肚 2023-05-30 10:52 次阅读

制作netcdf数据时,常遇到需要转换时间变量单位的问题。

netcdf数据常用时间单位有"days since xxx-xx-xx"、"hours since xxx-xx-xx"、儒略日。如何切换成各单位?

本文提供matlab几个函数,实现时间单位切换。

一、单位是"days since xxx-xx-xx":

以计算2023-1-1距离2020-1-1多少天为例:

代码:

startDate = datenum('1-Jan-2020 00:00:00');

endDate = datenum('1-Jan-2023 00:00:00');

delta_days = endDate-startDate;

结果:

delta_days = 1096

二、单位是"hours since xxx-xx-xx":

在上面结果*24即可。

以计算2023-1-1 12:00:00距离2020-1-1 00:00:00多少天为例:

代码:

startDate = datenum('1-Jan-2020 00:00:00');

endDate = datenum('1-Jan-2023 12:00:00');

delta_days = endDate-startDate;

delta_hours = delta_days * 24;

结果:

delta_days =1096.5

delta_hours =26316

三、单位是儒略日:

以计算2023-1-1 00:00:00的儒略日为例:

代码:

date_time = datetime("2023-01-01 00:00:00")

time_juliandate = juliandate(date_time)

结果:

time_juliandate = 2459945.5

四、单位从"days since 2019-1-1"转成"days since 2020-1-1"

代码:

time = 1461;

endDate = time + datenum(2019,1,1);

startDate = datenum('1-Jan-2020 00:00:00');

delta_days = endDate-startDate;

结果:

delta_days =1096

总结:通过下面几个函数就可以实现时间单位的转换:

datenum:时间转成数值,用于计算时间的差值;

datetime:转成时间数据类型;

days:数值加上天数的单位;

juliandate:时间转成儒略日

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • MATLAB仿真
    +关注

    关注

    4

    文章

    175

    浏览量

    19715
收藏 人收藏

    评论

    相关推荐

    如何解决单位时间内采集数据数量不等的问题

    各位大侠好,我最近遇到了数据处理的一个小问题,如图所示:左边的数据分别表示年月日时分秒,右边是对应的采集数据。我想问的是,如何求出同一时刻的平均值并且依然左右两列输出,即同一时刻对应一个采集
    发表于 05-14 21:33

    如何解决单位时间内采集数据数量不等的问题

    各位大侠好,我最近遇到了数据处理的一个小问题,如图所示:左边的数据分别表示年月日时分秒,右边是对应的采集数据。我想问的是,如何求出同一时刻的平均值并且依然左右两列输出,即同一时刻对应一个采集
    发表于 05-14 21:38

    精品:欢乐哥制作版《 PCB单位转换V03 》。

    精品:欢乐哥制作版《 PCB单位转换V03 》。分享给大家下载,如果觉得资源好,记得给我加分哦![groupid=514]PCB和单片机技术交流群[/groupid]
    发表于 11-06 20:40

    单位转换小软件mil和mm转换

    单位转换小软件mil和mm转换
    发表于 12-03 20:17

    CC2530数据包timestamp是用什么单位记录时间的?

    CC2530数据包timestamp是用什么单位记录时间的?cc2530 Z-stack中收到的数据包格式为afIncomingMSGPacket_t ,我想知道其中uint32 ti
    发表于 04-06 10:40

    PID 输出数据 如何转换为控制变量

    如题,PID的输出数据如何转换为控制变量。××××××××××模型一:加热箱设定值SV, 检测值PV,PID计算结果MV。 执行结构是加热块。MV是一个数值,无单位。 执行结构通常是P
    发表于 07-18 19:55

    基础:stateflow中变量的强制类型转换

    使用:例:我定义了一个变量speed作为输出,某时刻指定speed=0,当我把speed改为uint8类型,就报错误,找了一阵没找到方法,就放弃了。今天在看别的帖子是发现了强制类型转换,将赋值命令改为speed= uint8(0)就将双精度的0
    发表于 10-29 10:42

    电容单位转换,电容公式有哪些

      电容单位转换  在了解电容公式前,我们要先来看看电容单位转换。在国际单位制里,电容的单位
    发表于 12-25 16:14

    单片机内部的时间单位

    单片机内部的时间单位
    发表于 03-29 09:12 3976次阅读
    单片机内部的<b class='flag-5'>时间</b><b class='flag-5'>单位</b>

    压力单位转换

    压力单位转换
    发表于 01-14 09:06 1208次阅读

    变量水质参数时间异常事件检测算法

    在供水管网中部署传感器网络实时获取多个水质参数时间序列数据,当供水管网发生污染时,高效准确地检测水质异常是一个重要问题。提出多变量水质参数时间异常事件检测算法( M-TAEDA),利用
    发表于 12-07 16:17 0次下载
    多<b class='flag-5'>变量</b>水质参数<b class='flag-5'>时间</b>异常事件检测算法

    如何创建单位转换Java程序

      在第二个 LengthConverter 对象至上调用 fromMeters()方法,并使用 meters 作为 fromMeters()方法所需的参数。将返回的值(现在以所需的输出单位)分配给 double 变量。我们将此变量
    的头像 发表于 09-24 11:30 1971次阅读
    如何创建<b class='flag-5'>单位</b><b class='flag-5'>转换</b>Java程序

    嵌入式Linux环境变量分区制作

    嵌入式Linux环境变量分区制作嵌入式环境变量分区准备一个存放环境变量的文本文件制作环境变量的工
    发表于 11-02 10:35 8次下载
    嵌入式Linux环境<b class='flag-5'>变量</b>分区<b class='flag-5'>制作</b>

    AD17 CAD文档单位转换

    AD17 CAD文档单位转换
    发表于 06-20 10:16 0次下载

    C语言_标准时间与秒单位转换

    这篇文章介绍 标准时间与秒单位,秒单位与标准时间转换方式,这份代码一般用在嵌入式单片机里比较多,比如:设置RTC时钟的
    的头像 发表于 08-14 09:49 2469次阅读