我是 R 新手,但需要帮助格式化我的数据框中的一个变量:
> str(g.2015.1990$START.TIME)
int [1:60464] 712 606 1238 708 709 707 407 707 612 1237 ...
尽管 R 将其解释为整数,但它是一个时间变量,格式为 3-4 位(HMM 或 HHMM,取决于时间,其中“小时”的范围是 1:12,而不是 1:24),没有附加日期(尽管有是与每次对应的日期的单独变量)。我已经阅读了所有相关的帖子,搜索了我能想到的所有内容,观看了我能找到的所有 YouTube 视频,甚至还出去买了“R for Dummies”;但是,没有任何效果。这是我尝试过的代码的一小部分:
timex <- mapply(function(x, y) paste0(rep(x, y), collapse = ""), 0, 4 - nchar(g.2015.1990$START.TIME))
timexx <- paste0(timex, g.2015.1990$START.TIME)
timexxx = format(strptime(timexx, format="%H%M"), format = "%H:%M")
timex = format(as.POSIXct(sprintf("%004.0f",g.2015.1990$START.TIME),format="%H%M"),"%H:%M")
timex = format(strptime(g.2015.1990$START.TIME,"%H%M"),"%H:%M")
timex <- gsub("([0-9]{3})","0\\1",g.2015.1990$START.TIME)
timexx = format(strptime("g.2015.1990$START.TIME","%H%M%S"),"%H:%M:%S")
timex = as.numeric(g.2015.1990$START.TIME)
timex = if(g.2015.1990$START.TIME) < 4 nchar(g.2015.1990$START.TIME) + 1
timex = as.Date(origin = g.2015.1990$START.TIME, format = "%H%M")
timex = as.POSIXct(as.character(g.2015.1990$START.TIME))
timex = strptime("g.2015.1990$DATE, g.2015.1990$START.TIME", "%y%m%d, %H%M")
timex = strftime("g.2015.1990$START.TIME", "%H%M")
timex = as.POSIXct(g.2015.1990$START.TIME, format="%H:%M")
timex = times(paste0("00", as.character(g.2015.1990$START.TIME)))
timex = strptime(g.2015.1990$START.TIME, "%I%M")
timex = as.POSIXlt(g.2015.1990$START.TIME, format = "%I%M", origin = "g.2015.1990$START.TIME")
timex = as.POSIXlt(as.character(g.2015.1990$START.TIME), format = "%I%M")
(Where "timex" is a stand in for the variable in question, so as not to mess up my data)
其中一些是序列,一些是单行代码。我什至不能再直截了当。非常感激你的帮助。