Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从dataframe列创建时间戳,并在绘图中用作xaxis_R_Ggplot2 - Fatal编程技术网

从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(年、月、日、小时、分钟、秒)


fla
as.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

fla
as.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

fl
df
dfthanks。我有一个错误。>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") 
                     })