如何将数字值转换为日期值

时间:2019-04-12 14:56:29

标签: r

因此,我有一个data.frame,其中有一个名为Date.birth的列,但这些值都是数字格式的:

default_encounter_tmp_p

可能是问题格式。但我需要这样的日期格式:

Date.birth
43067
43060

实际上上述格式是正确的。我尝试了以下命令:

Date.birth
11/28/17
11/21/17

但是没有用。有人有建议吗?

谢谢。

4 个答案:

答案 0 :(得分:3)

如果它是一个numeric值,我们需要指定原点

as.Date(data$Date.birth, origin = "1899-12-30")

例如

as.Date(43067, origin = "1899-12-30")
#[1] "2017-11-28"

转换为Date类后,如果需要采用自定义格式,请使用format

format(as.Date(43067, origin = "1899-12-30"), "%m/%d/%y")
#[1] "11/28/17"

答案 1 :(得分:3)

如果这是一个Excel数字日期,janitor有一个很好的解决方案:

library(janitor)

excel_numeric_to_date(data$Date.birth)

答案 2 :(得分:2)

只需使用const hull = new QuickHull().setFromObject(mesh) //Mesh is an already rendered object //hull.vertices //this returns the entire geometry instead of the hull's vertices 软件包-

lubridate

样本数据-

lubridate::as_date(as.numeric(dt$Date.birth),origin="1899-12-30")  
[1] "2017-11-28" "2017-11-21"

答案 3 :(得分:1)

尝试

VariableName <- dt %>% 
mutate(Date.birth = format(excel_numeric_to_date(as.numeric(Date.birth)),"%m/%d/%y"))
#[1] "11/28/17"