%b-%Y 日期转换给出 NA
%b-%Y date conversion gives NA
我正在尝试将字符串转换为 R 中的日期。这些是字符串的示例:
"Aug-1973" "Aug-1974" "Aug-1975" "Aug-1976" "Aug-1977"
我 运行 下面一行日期字符串与上面的类似:
exportsDF$Date <- as.Date(as.character(exportsDF$Date), format = "%b-%Y")
这 returns 所有值的 NA。我将日期列转换为字符 returns 正确值的步骤。知道为什么 as.Date() 命令不起作用吗?数据中没有 NA 或缺失值。每个值都有一个“%b-%Y”格式。
感谢任何帮助!
日期格式也需要一天,因此您可以添加一个月中的任意一天。在这里,我选择了第一天:
dates <- c("Aug-1973", "Aug-1974", "Aug-1975", "Aug-1976", "Aug-1977")
res <- as.Date(paste0("01-", dates), format = "%d-%b-%Y")
print(res)
#[1] "1973-08-01" "1974-08-01" "1975-08-01" "1976-08-01" "1977-08-01"
原因是基础 Date
数据类型是一个整数,用于计算自某个参考日以来的天数。具体来说,自 1970-01-01 以来的天数。参见 ?Date
。
现在可以通过
随意显示 Date
对象 res
format(res, "%B-%Y")
#[1] "August-1973" "August-1974" "August-1975" "August-1976" "August-1977"
或类似。
month(res)
函数及其同类函数也很有帮助。参见 ?month
。
我正在尝试将字符串转换为 R 中的日期。这些是字符串的示例:
"Aug-1973" "Aug-1974" "Aug-1975" "Aug-1976" "Aug-1977"
我 运行 下面一行日期字符串与上面的类似:
exportsDF$Date <- as.Date(as.character(exportsDF$Date), format = "%b-%Y")
这 returns 所有值的 NA。我将日期列转换为字符 returns 正确值的步骤。知道为什么 as.Date() 命令不起作用吗?数据中没有 NA 或缺失值。每个值都有一个“%b-%Y”格式。
感谢任何帮助!
日期格式也需要一天,因此您可以添加一个月中的任意一天。在这里,我选择了第一天:
dates <- c("Aug-1973", "Aug-1974", "Aug-1975", "Aug-1976", "Aug-1977")
res <- as.Date(paste0("01-", dates), format = "%d-%b-%Y")
print(res)
#[1] "1973-08-01" "1974-08-01" "1975-08-01" "1976-08-01" "1977-08-01"
原因是基础 Date
数据类型是一个整数,用于计算自某个参考日以来的天数。具体来说,自 1970-01-01 以来的天数。参见 ?Date
。
现在可以通过
随意显示Date
对象 res
format(res, "%B-%Y")
#[1] "August-1973" "August-1974" "August-1975" "August-1976" "August-1977"
或类似。
month(res)
函数及其同类函数也很有帮助。参见 ?month
。