我有一個數據集,其中日期分爲三列:年,月,日。我想將其轉換爲標準的R日期格式(即自1-1-1970年以來的天數)。現在我有這個:將三列轉換爲unix時間R
date <- as.Date(paste(year,month,day, sep="-"))
但是我想知道這是否是正確的方法/如果有更有效的方法。
我有一個數據集,其中日期分爲三列:年,月,日。我想將其轉換爲標準的R日期格式(即自1-1-1970年以來的天數)。現在我有這個:將三列轉換爲unix時間R
date <- as.Date(paste(year,month,day, sep="-"))
但是我想知道這是否是正確的方法/如果有更有效的方法。
的as.Date
函數表示日期爲天數自1月1日,1970年Unix時間是指自1月1日的秒的數量,1970年你會想使用as.POSIXct
功能,然後將其轉換爲數字對象:
as.double(as.Date(paste(year, month, day, sep="-"))) # days since 1970-1-1
as.double(as.POSIXct(as.Date(paste(year, month, day, sep="-")))) # seconds since 1970-1-1
謝謝你,我猜Unix時間不是正確的,從1-1-1970工作起只有幾天。 –
這幾乎是執行此操作的標準方法。實際上,如果您查看ISOdatetime
的代碼,則可以看到它使用了類似的算法。
請發佈[可重現的例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。另外,你是什麼意思的有效? –
我的問題基本上是這樣的,你期望這樣做,或者是否有一個特定的功能/方法。 –