我正在编写R代码,但无法将Date格式拆分为年,月,日,小时格式。
我有一个名为Metadata的数据帧,其中有一个列X_date
,包含像'01.01.2020 00:00:00', '01.01.2020 01:00:00'
这样的时间戳,依此类推。
我想将此x_date
列更改为另外四个列,即year
,month
,day
和hour
。我使用以前的答案尝试过这种方式:
Metadata$Date <- as.Date(Metadata$X_date)
Metadata$Time <- format(as.POSIXct(Metadata$X_date) ,format = "%Y:%m:%d %H")
它给了我这个错误:
Error in as.POSIXlt.character(as.character(x), ...) :
character string is not in a standard unambiguous format
我对R编程非常陌生。请帮我。抽空抽时间吧。
答案 0 :(得分:0)
指定的mean_decade_object <- matrix(0, ncol = 3, nrow = 2)
for (array in 1:dim(play_array)[4]) {
for (decade in 1:floor(dim(play_array)[3]/10)){
decade_start <- decade*10 - 9
decade_end <- decade*10
mean_decade_object[decade, array] <- mean(play_array[,,decade_start:decade_end, array],
na.rm = T)
print(mean_decade_object[decade, array])
print(paste("decade",decade))
}
if (dim(play_array)[3] %% 10 != 0){
# dim(play_array)[3] %% 10 ----> are the remaining years
decade_start <- dim(play_array)[3] - (dim(play_array)[3] %% 10) + 1
decade_end <- dim(play_array)[3]
mean_decade_object[decade+1, array] <- mean(play_array[,,decade_start:decade_end, array],
na.rm = T)
}
}
应该与原始向量中“日期/时间”的所有分量出现的顺序相匹配。假设首先是“天”,然后是“月”,则“ POSIXct”中的范围将是
format
我们要创建新列时,可以使用as.POSIXct(Metadata$X_date, format = "%d.%m.%Y %H:%M:%S")
tidyverse