[英]Character 2 digit year conversion to year only
使用R
有大量的臨床健康數據可供使用,但日期很奇怪
問題最多的是2digityear/halfyear
,如98/2
,即1998
July 1
1998
之后的某個時候
我已將該列拆分為2個字符列,例如98
和2
但現在需要將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.