2015-09-25 137 views
-1

我有三列,日期,时间和数据的最近作出data.frame。我期待将日期和时间变量合并到一个Date.Time变量中。如何合并的日期和时间为一个datetime列

我data.frame叫,data_dataframe,看起来像这样:

Date  Time Data 
1/26/94 13:00 8.4 

我想:

as.POSIXct(paste(data_dataframe$Date, data_dataframe$Time), format="%d/%m/%Y %H:%M:%S") 

但这并没有工作。阅读周围似乎没有帮助我的问题。有小费吗?

+0

'as.POSIXct(粘贴(data_dataframe $日期,data_dataframe $时间)新的一列,格式= “%m /%d /%Y%H:%M”)'remove':%S'因为你的时间没有秒。 –

回答

1

你可以尝试

data_dataframe$Date <- with(data_dataframe, as.POSIXct(paste(as.Date(Date, format="%m/%d/%y"), Time))) 

后,人们可以删除 “时间” 栏;因为它集成在 “日期” 现在:

data_dataframe <- data_dataframe[,-2] 

结果:

> data_dataframe 
#     Date Data 
#1 1994-01-26 13:00:00 8.4 
#2 1989-02-20 11:00:00 7.5 
> class(data_dataframe$Date) 
#[1] "POSIXct" "POSIXt" 

数据:

text<-"Date  Time Data 
     1/26/94 13:00 8.4 
     2/20/89 11:00 7.5" 
data_dataframe <- read.table(text=text, header=T) 
+0

我得到这个错误时,我想,“字符串是不是标准明确的格式为” – user2920249

+1

@ user2920249它为我工作。从您提供的数据... – Jaap

+0

我试图复制和粘贴这个答案并改变DF1到data_dataframe在这两个地方,但仍然得到那个错误 这里是我输入 data_dataframe $ date < - with(data_dataframe,as.POSIXct(paste(as.Date(Date,format =“%m /%d /%Y% H:%M“)))) – user2920249

0

您的格式字符串不匹配您的数据。这工作,但:

as.POSIXct(paste("1/26/94", "13:00"), format="%m/%d/%y %H:%M") 
+0

我得到这个错误,当我试图“字符串不是在一个标准的明确格式” – user2920249

1

你可以试试这个,这将创建一个 'New_DateTime'

data_dataframe$New_DateTime <- paste(data_dataframe$Date, data_dataframe$Time) 
相关问题