相关疑难解决方法(0)

生成两个月中最后一天的序列

我使用lubridate并认为这将是如此简单

ymd("2010-01-31")+months(0:23)
Run Code Online (Sandbox Code Playgroud)

但看看会得到什么.这一切都搞砸了!

 [1] "2010-01-31 UTC" "2010-03-03 UTC" "2010-03-31 UTC" "2010-05-01 UTC" "2010-05-31 UTC" "2010-07-01 UTC" "2010-07-31 UTC" "2010-08-31 UTC" "2010-10-01 UTC"
[10] "2010-10-31 UTC" "2010-12-01 UTC" "2010-12-31 UTC" "2011-01-31 UTC" "2011-03-03 UTC" "2011-03-31 UTC" "2011-05-01 UTC" "2011-05-31 UTC" "2011-07-01 UTC"
[19] "2011-07-31 UTC" "2011-08-31 UTC" "2011-10-01 UTC" "2011-10-31 UTC" "2011-12-01 UTC" "2011-12-31 UTC"
Run Code Online (Sandbox Code Playgroud)

然后我读到了lubridate如何迎合间隔,持续时间和周期等现象.那么,好吧我知道一个月实际上是由(365*4 + 1)/ 48 = 30.438天定义的天数.所以我试图变得聪明并将其重写为

ymd("2010-01-31")+ as.period(months(0:23))
Run Code Online (Sandbox Code Playgroud)

但那只是一个错误.

Error in as.period.default(months(0:23)) : 
  (list) object cannot be coerced to type 'double'
Run Code Online (Sandbox Code Playgroud)

r date lubridate

37
推荐指数
2
解决办法
2万
查看次数

R Strptime年份和月份没有分隔符返回NA

我可能做了一些愚蠢而没有看到它的东西,但是:

> strptime("201101","%Y%m")
[1] NA
Run Code Online (Sandbox Code Playgroud)

从帮助strptime:

%Y年份与世纪
%m月份为十进制数字(01-12)

time r

12
推荐指数
1
解决办法
6074
查看次数

将POSIXct日期舍入到第二天

我有一个类似于圆形POSIX日期(POSIXct)和基本R功能的问题,但我希望始终将日期从第二天的午夜(00:00:00)开始.

基本上,我想要一个等效ceiling于POSIX格式日期的函数.与相关问题一样,我正在编写自己的包,并且我已经有几个包依赖项,所以我不想添加更多.在基地R有一个简单的方法吗?

r posixct

4
推荐指数
1
解决办法
2632
查看次数

数据表中的 R 轮 PosixCT 变量

以下代码以 POSIXct 格式创建一个 10 行数据表,其中包含一个变量 timeStamp。

library(data.table)
dt <- data.table(timeStamp = seq( as.POSIXct("2017-07-01 14:51:50"), by=60, len=10))
Run Code Online (Sandbox Code Playgroud)

我想将时间戳舍入到最近的分钟。

此命令在 timeStamp2 的每一行中放置一个列表,而不是修改后的 POSIXct 变量。

dt[, timestamp2 := round(timeStamp, "mins")]
Run Code Online (Sandbox Code Playgroud)

下面的代码行做了我想要的(在这个例子中四舍五入),但在数据表中不起作用。

timestamp2 <- round(dt$timeStamp, "mins")
Run Code Online (Sandbox Code Playgroud)

我正在使用 data.table 版本 1.10.4-3 和 MRAN R 版本 3.4.1。

r posixct data.table

4
推荐指数
1
解决办法
414
查看次数

将年月格式转换为 POSIXct

我有一些年月形式的数据,我想将其格式化以在ggplot.

date <- c("2016-03", "2016-04", "2016-05", "2016-06", "2016-07", "2016-08", 
"2016-09", "2016-10", "2016-11", "2016-12")
Run Code Online (Sandbox Code Playgroud)

我正在使用parsedate::parse_date,但自从更新 R 后它不再起作用。

我看过

R 中的日期格式(年月)

as.yearmon工作正常,但它没有格式化为我需要的 POSIXct ggplot。其他格式(例如as.POSIXct和 )strptime会给出 NA 或错误。

注意:我不介意是否将每月的第一天添加到“年-月”格式中。

r date

1
推荐指数
1
解决办法
3416
查看次数

标签 统计

r ×5

date ×2

posixct ×2

data.table ×1

lubridate ×1

time ×1