【问题标题】:Julian date to Month R儒略日期到 R 月
【发布时间】:2014-02-14 23:14:52
【问题描述】:

我有一个时间段(110 年),它被分为五天(5 天),所以我有 8030 个值。我想做的是为每个值分配对应的月份,例如所有期间的前 5 天对应的第一个值将分配给一月,依此类推。

chron 包可以做到这一点吗?

非常感谢

【问题讨论】:

  • 请举例说明您的数据,并告诉我们您到目前为止所做的尝试。

标签: r


【解决方案1】:

有很多方法可以取消日期的月份。我们以今天为例。

(x <- Sys.Date())

对于大多数日期和时间行为,lubridate 包应该是您的第一个停靠点。这有 month 功能,可以满足您的需求。

library(lubridate)
month(x)
## [1] 2
month(x, label = TRUE)
## [1] Feb
## Levels: Jan < Feb < Mar < Apr < May < Jun < Jul < Aug < Sep < Oct < Nov < Dec
month(x, label = TRUE, abbr = FALSE)
## [1] February
## 12 Levels: January < February < March < April < May < June < July < ... < December

chron 包有一个month.day.year 函数,用于检索日期的这三个组成部分。

month.day.year(x)
## $month
## [1] 2
## 
## $day
## [1] 14
## 
## $year
## [1] 2014

data.table 包也有一个month 函数。

library(data.table)
month(x)
## [1] 2

【讨论】:

  • 在基地:as.POSIXlt(x)$mon + 1
  • @Roland 是的。看看body(data.table::month)
猜你喜欢
  • 1970-01-01
  • 2020-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-30
  • 2013-11-30
  • 1970-01-01
相关资源
最近更新 更多