我在转换类似于此日期的日期时遇到问题:character string is not in a standard unambiguous format
我已经从JSON中检索到信息到data.frames列表,称为“ lista.alarmes”。这是日期字段上的值:
> lista.alarmes[[1]][[2]][8]
[1] "1578332914"
我能够将其转换为日期格式:
> d <- as.POSIXct(as.numeric(lista.alarmes[[1]][[2]][8]), tz="America/Sao_Paulo", origin="1970-01-01")
> str(d)
POSIXct[1:1], format: "2020-01-06 14:48:34"
问题是当我尝试将此值保存在原始列表中时。第一件事,好像什么都没有更新
> lista.alarmes[[1]][[2]][8] <- d
> str(lista.alarmes[[1]][[2]][8])
chr "1578332914"
而且,我无法从该内容中检索信息
> year(unlist(lista.alarmes.2[[1]][[2]][8]))
Error in as.POSIXlt.character(x, tz = tz(x)) :
character string is not in a standard unambiguous format
> year(as.POSIXct(lista.alarmes[[1]][[2]][8][[1]], origin="1970-01-01"))
Error in as.POSIXlt.character(x, tz, ...) :
character string is not in a standard unambiguous format
为什么原始列表不接受转换为as.POSIXct的值?我也尝试过使用as.Date,但结果相似。
此外,我想使用lapply处理所有列表。我猜命令很好,除了没有实现更新:
lista.alarmes <- lapply(lista.alarmes,function(x){
x[[2]][8] = as.POSIXct(as.numeric(x[[2]][8]), tz="America/Sao_Paulo", origin="1970-01-01")
return(x)})
unlist
,我们可以将do.call
与c
结合使用