2016-07-29 88 views
0

數據幀我一起工作:如何在R的數據框中創建一個日期/時間列?

head(ossub3) 

date---------|os5 | os6 | os7| os8 | _ _Year| Month|Day|Hour|Minutes 
11/15/2015|10.06|16.94|10.63|12.94 |2015|11|15| 12|08 

我都分隔成列的時間單位。我想在R.我曾嘗試在R tick data : merging date and time into a single objectStrip the date and keep the time的解決方案,一個datetime列,因爲當我嘗試

#Combine Date 

ossub3$Date<-as.POSIXlt(paste(ossub3$Year, ossub3$Month, ossub3$Day, sep="-"), 
    tz = "US/Central", format = "%Y-%m-%d") 

#Create new column called Time which concatenates Hour, Minute as a POSIXlt 

ossub3$sec=rep(00,nrow(ossub3)) 
ossub3$Time<-as.POSIXlt(paste(ossub3$Hour, ossub3$Minute,ossub3$sec, sep=":"), 
    tz = "US/Central", format = "%H:%M") 

我得到今天的日期在我的時間,所以我不能與日期結合起來。這裏發生了什麼?

回答

1

一個需要最後一步:

ossub3$sec=rep(00,nrow(ossub3)) 
ossub3$Time<-as.POSIXlt(paste(ossub3$Hour, ossub3$Minute,ossub3$sec, sep=":"), tz = "US/Central", format = "%H:%M") 

# Excluding the date information and preserving just the time 
ossub3$JustTime <- sapply(ossub3$Time, function(x) {format(x, format = "%T")}) 

通過這樣做,你要刪除的日期信息(這是在你的情況下,當前的日期和無意義的),你可以只是時間附加到您在另一列中的日期(ossub3$Date)。

+0

嘿馬丁我可能完全無能,但我輸入的代碼作爲書面,我得到一個錯誤。具體來說,在包裝過程中發生錯誤:無效的'trim'參數。我是否需要做任何「x」任何事情或者是否有我缺少的東西? – werner2

+0

應該明確提到'format =「%T」'。現在檢查答案。 –

+0

我不知道你是否檢查過更新後的答案。如果這是解決方案,請將我的回答標記爲您的問題的答案。 –

相關問題