【问题标题】:How to convert a date to the position of in a year (day of the year)? [duplicate]如何将日期转换为一年中的位置(一年中的一天)? [复制]
【发布时间】:2015-01-24 07:41:38
【问题描述】:

我想在我的模型中使用 a*sin(x)+b*cos(x) 进行季节性分析,其中 x 是一年中的某一天。

例如 "1990-1-1" 会返回 1;或者像 "1990-1-10" 一样返回 10

另外,由于我的数据是以小时为基础的,我打算做的是找出一年中的某一天,然后将其乘以 24,然后加上条带化的“小时数”以表示其在一年内的顺序.您能否也让我知道是否有更好的方法可以做到这一点。

【问题讨论】:

  • 在尝试查找有时称为“朱利安日期”的“一年中的某一天”时。这个网站上还有很多关于朱利安日期的其他问题。
  • 试试这个as.POSIXlt(as.Date("1990-01-10"))$yday + 1,因为yday是零索引的。
  • 谢谢,我以前从未听说过“朱利安约会”,但现在我知道了。谢谢你的帮助。

标签: r datetime time-series dayofweek trigonometry


【解决方案1】:

格式化你的日期,你就完成了:

x <- as.Date(c("1990-1-1","1990-1-10","2010-06-16"))
as.numeric(format(x,"%j"))
#[1]  1 10 167

【讨论】:

    猜你喜欢
    • 2014-08-03
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    • 2016-02-04
    • 2021-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多