从dataframe列创建时间戳,并在绘图中用作xaxis
我有一些数据框,列中有从dataframe列创建时间戳,并在绘图中用作xaxis,r,ggplot2,R,Ggplot2,我有一些数据框,列中有日期,小时,和分钟。我想用某种时间戳来绘制值列。不管怎样,你想这么做吗 > head(fl) date hour min value 1 2014-02-23 0 0 81 2 2014-02-23 0 1 65 3 2014-02-23 0 2 73 4 2014-02-23 0 3 81 5 2014-02-23 0 4 89 6 2014-02-2
日期
,小时
,和分钟
。我想用某种时间戳来绘制值
列。不管怎样,你想这么做吗
> head(fl)
date hour min value
1 2014-02-23 0 0 81
2 2014-02-23 0 1 65
3 2014-02-23 0 2 73
4 2014-02-23 0 3 81
5 2014-02-23 0 4 89
6 2014-02-23 0 5 69
...
现在我使用的是ggplot2,但它将每小时和每一天的分钟数结合在一起:(
有什么想法吗?库(lubridate)
library(lubridate)
fl$datetime <- ymd_hm(paste(fl$date,fl$hour,fl$min,sep='-'))
ggplot(fl, aes( datetime, value) ) + geom_line()
fl$datetime<代码>库(lubridate)
fl$datetime尝试功能ISOdatetime(年、月、日、小时、分钟、秒)
:
fl尝试功能ISOdatetime(年、月、日、小时、分钟、秒)
:
flaas.POSIXct
alternative给出与@RobertKrzyzanowski相同的结果
fl <- data.frame(date=c('2014-02-23', '2014-02-22'), hour = c(0,0), min = c(1,2))
fl$stamp <- with(fl, as.POSIXct( paste(date,hour,min), format="%Y-%m-%d %H %M"))
#> fl
# date hour min stamp
#1 2014-02-23 0 1 2014-02-23 00:01:00
#2 2014-02-22 0 2 2014-02-22 00:02:00
flaas.POSIXct
alternative给出与@RobertKrzyzanowski相同的结果
fl <- data.frame(date=c('2014-02-23', '2014-02-22'), hour = c(0,0), min = c(1,2))
fl$stamp <- with(fl, as.POSIXct( paste(date,hour,min), format="%Y-%m-%d %H %M"))
#> fl
# date hour min stamp
#1 2014-02-23 0 1 2014-02-23 00:01:00
#2 2014-02-22 0 2 2014-02-22 00:02:00
fldfdfthanks。我有一个错误。>fl$datetime谢谢。我有一个错误。>fl$datetime
fl <- data.frame(date=c('2014-02-23', '2014-02-22'), hour = c(0,0), min = c(1,2))
fl$stamp <- with(fl, as.POSIXct( paste(date,hour,min), format="%Y-%m-%d %H %M"))
#> fl
# date hour min stamp
#1 2014-02-23 0 1 2014-02-23 00:01:00
#2 2014-02-22 0 2 2014-02-22 00:02:00
df<- within(df[5:6], { DT=format(as.POSIXct(paste(df$date, df$time, sep = ' ')),
"%Y-%m-%d %H:%M:%S")
})