當我將金融時間序列從 Excel 匯入 R 時,日期變成整數。每列代表一個日期。我知道 Excel 將它們轉換為一種形式,它們代表自 01/01/1900 的原始日期以來的天數。如何將這些數字轉回 R 中的“正常”日期?
uj5u.com熱心網友回復:
as.Date您可以使用函式和設定日期原點將資料型別從整數更改為日期。
如果您的資料集被呼叫df并且帶有日期的列被呼叫event_date,例如:
df$event_date <- as.Date(df$event_date, origin = "1899-12-30")
或者,使用mutatefrom package dplyr:
df <- mutate(df, event_date = as.Date(event_date, origin = "1899-12-30"))
uj5u.com熱心網友回復:
我會使用以下功能之一:
xlsnum_to_POSIXct <- function(n)
{
as.POSIXct(
x = n*24*60*60,
origin = "1900-01-01 00:00:00"
);
}
xlsnum_to_POSIXlt <- function(n)
{
as.POSIXlt(
x = n*24*60*60,
origin = "1900-01-01 00:00:00"
);
}
它將天數轉換為自 1900/01/01 以來的秒數,并將其方便地包裝成 R 日期時間型別。
也應該適用于一天的小數部分、天數的向量等。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/447528.html
