2015-09-25 134 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) 
相關問題