R语言
weekdays
位于 base
包(package)。 说明
提取工作日、月份或季度或儒略时间(自某个来源以来的天数)。这些是通用函数:内部日期时间类的方法记录在此处。
用法
weekdays(x, abbreviate)
## S3 method for class 'POSIXt'
weekdays(x, abbreviate = FALSE)
## S3 method for class 'Date'
weekdays(x, abbreviate = FALSE)
months(x, abbreviate)
## S3 method for class 'POSIXt'
months(x, abbreviate = FALSE)
## S3 method for class 'Date'
months(x, abbreviate = FALSE)
quarters(x, abbreviate)
## S3 method for class 'POSIXt'
quarters(x, ...)
## S3 method for class 'Date'
quarters(x, ...)
julian(x, ...)
## S3 method for class 'POSIXt'
julian(x, origin = as.POSIXct("1970-01-01", tz = "GMT"), ...)
## S3 method for class 'Date'
julian(x, origin = as.Date("1970-01-01"), ...)
参数
x |
从类 |
abbreviate |
逻辑向量(可能被回收)。名字应该缩写吗? |
origin |
从类 |
... |
其他方法的参数。 |
值
weekdays
和 months
返回正在使用的语言环境中的名称字符向量,即 Sys.getlocale("LC_TIME")
。
quarters
将 "Q1"
的字符向量返回到 "Q4"
。
julian
返回自原点以来的天数(可能是小数),原点为"origin"
属性。所有时间计算在R已忽略leap-seconds。
注意
其他组件(例如月份或年份)非常容易计算:只需使用 as.POSIXlt
并提取相关组件即可。或者(特别是如果需要将组件作为字符串),请使用 strftime
。
例子
## first two are locale dependent:
weekdays(.leap.seconds)
months (.leap.seconds)
quarters(.leap.seconds)
## Show how easily you get month, day, year, day (of {month, week, yr}), ... :
## (remember to count from 0 (!): mon = 0..11, wday = 0..6, etc !!)
##' Transform (Time-)Date vector to convenient data frame :
dt2df <- function(dt, dName = deparse(substitute(dt))) {
DF <- as.data.frame(unclass(as.POSIXlt( dt )))
`names<-`(cbind(dt, DF, deparse.level=0L), c(dName, names(DF)))
}
## e.g.,
dt2df(.leap.seconds) # date+time
dt2df(Sys.Date() + 0:9) # date
##' Even simpler: Date -> Matrix - dropping time info {sec,min,hour, isdst}
d2mat <- function(x) simplify2array(unclass(as.POSIXlt(x))[4:7])
## e.g.,
d2mat(seq(as.Date("2000-02-02"), by=1, length.out=30)) # has R 1.0.0's release date
## Julian Day Number (JDN, https://en.wikipedia.org/wiki/Julian_day)
## is the number of days since noon UTC on the first day of 4317 BCE.
## in the proleptic Julian calendar. To more recently, in
## 'Terrestrial Time' which differs from UTC by a few seconds
## See https://en.wikipedia.org/wiki/Terrestrial_Time
julian(Sys.Date(), -2440588) # from a day
floor(as.numeric(julian(Sys.time())) + 2440587.5) # from a date-time
也可以看看
DateTimeClasses
,Date
; Sys.getlocale("LC_TIME")
对于 months()
和 weekdays()
至关重要。
相关用法
- R warning 警告信息
- R with 评估数据环境中的表达式
- R which 哪些指数是正确的?
- R write 将数据写入文件
- R writeLines 将行写入连接
- R withVisible 返回值及其可见性
- R which.min Min() 或 Max() 或第一个 TRUE 或 FALSE 在哪里?
- R warnings 打印警告消息
- R file.path 构造文件路径
- R grep 模式匹配和替换
- R getwd 获取或设置工作目录
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R Sys.getenv 获取环境变量
- R rank 样本排名
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R pushBack 将文本推回连接
- R strsplit 分割字符向量的元素
- R seq.Date 生成规则的日期序列
- R invisible 将打印模式更改为不可见
- R noquote “无引号”字符串打印类
- R rapply 递归地将函数应用于列表
- R basename 操作文件路径
- R formals 访问和操纵形式参数
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Extract Parts of a POSIXt or Date Object。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。