在 R + 错误中将日期转换为分钟 as.POSIXlt.character 消息
Posted
技术标签:
【中文标题】在 R + 错误中将日期转换为分钟 as.POSIXlt.character 消息【英文标题】:Converting dates into minutes in R + Error in as.POSIXlt.character message 【发布时间】:2022-01-15 21:59:44 【问题描述】:我对 R 很陌生。
我有一个名为 enddate 的调查平台(Qualtrics)自动创建的日期和时间变量。我想将该变量转换为从午夜开始的分钟数(日期以这种格式显示:08/03/2020 08:17
)。
我尝试了在网上找到的这段代码:
enddate _mins<- hour(dat$enddate) * 60 + minute(dat$enddate) / 60
但我收到此错误消息:
Error in as.POSIXlt.character(x, tz = tz(x)) :
character string is not in a standard unambiguous format
我搜索了这个错误,发现下面的代码解决了上一个问题:
enddate_num <- parse_date_time(dat$enddate, orders = "mdy HM")
我现在收到此错误:
Warning message: 1306 failed to parse
非常感谢您的帮助,因为我不知道我还能做什么。
【问题讨论】:
您可能拥有不止一种格式。可以吗library(parsedate);enddate_num <- parse_date(dat$enddate)
似乎省略了很多情况。这是我收到的消息 'max' / getOption("max.print") -- 省略了 2659 个条目
请考虑提供一个可重现的示例来说明问题
【参考方案1】:
有一个difftime()
函数。
将字符串转换为日期时间,然后使用函数:
timestring <-"08/03/2020 08:17"
difftime(as.POSIXct(timestring, "%d/%m/%Y %H:%M", tz="GMT"),
as.POSIXct(timestring, "%d/%m/%Y", tz="GMT"),
units="mins")
【讨论】:
谢谢,我仍然收到很多关于 NA 的案例。出于某种原因,它不会转换某些特定观察值的值。 @dandan 上面的代码适用于提供的示例案例。如果您仍然遇到错误,请详细说明并提供示例。如果我不知道问题出在哪里,我无能为力。以上是关于在 R + 错误中将日期转换为分钟 as.POSIXlt.character 消息的主要内容,如果未能解决你的问题,请参考以下文章
在 R 中将日期转换为日期数(星期一 = 1,星期二 = 2)
如何在 .Net / C# 中将日期转换为 HTTP 格式的日期