簡體   English   中英

字符2位數的年份轉換為僅年份

[英]Character 2 digit year conversion to year only

使用R

有大量的臨床健康數據可供使用,但日期很奇怪

問題最多的是2digityear/halfyear ,如98/2 ,即1998 July 1 1998之后的某個時候

我已將該列拆分為2個字符列,例如982但現在需要將2位數的年份字符串轉換為實際年份。

我嘗試了as.Date(data$variable,format="%Y")但不僅將年份轉換為0098 ,還不如將其轉換為1998 ,我還任意添加了今天的月份和年份(實際數據沒有月份)或一天)。

0098-06-11

我怎樣才能得到1998年呢?

不優雅。 但是使用lubridate和as.Date的組合可以達到目的。

library(lubridate)
data <- data.frame(variable = c(95, 96, 97,98,99), date=c(1,2,3,4,5))
data$variableUpdated <- year(as.Date(as.character(data$variable), format="%y"))

並且僅在基數為R的情況下

data$variableUpdated <- format(as.Date(as.character(data$variable), format="%y"),"%Y")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM