해당 포스트에서는 R에서 날짜 형식 데이터를 불러오고 변환하는 방법을 소개합니다.

날짜 데이터 불러오기

날짜(Dates)는 base 패키지의 as.Date() 함수를 사용하여 문자, 숫자, POSIXlt 및 POSIXct 형식에서 가져올 수 있습니다. 데이터가 Excel에서 내보낸 경우 숫자 형식일 수 있으며, 그렇지 않으면 대부분 문자 형식으로 저장됩니다.


1. 문자 형식의 날짜 불러오기

날짜(dates)가 문자로 저장되어 있는 경우에는 as.Date() 함수에 '날짜 벡터'와 '날짜가 현재 저장되어 있는 형식'을 입력하면 됩니다.

'날짜가 현재 저장되어 있는 형식'은 아래에서 일부 확인할 수 있는데, 예를 들어 '05/27/84'은 %m/%d/%y형식이고 'May 27 1984'은 %B %d %Y형식 입니다.

만약 as.Dates() 함수를 사용할 때 날짜 형식을 지정하지 않는다면 R에서는 %Y-%m-%d를 시도한 다음 %Y/%m/%d를 시도합니다.


예시 코드 1

> dates <- c("05/27/84", "07/07/05")
> betterDates <- as.Date(dates, format = "%m/%d/%y")
> betterDates
[1] "1984-05-27" "2005-07-07"

예시 코드 2

> dates <- c("May 27 1984", "July 7 2005")
> betterDates <- as.Date(dates, format = "%B %d %Y")
> betterDates
[1] "1984-05-27" "2005-07-07"

2. 숫자 형식의 날짜 불러오기

Excel에서 데이터를 가져오는 경우 숫자 형식의 날짜가 있을 수 있으며, 이 경우에도 as.Date() 함수를 사용해 불러올 수 있습니다. Excel에서 날짜 데이터를 처리할 때 시작하는 날짜를 확인하여 as.Date() 함수에 입력해주면 됩니다.

일반적으로 Windows 용 Excel 이고 1900년 이후 날짜라면 1899년 12월 30일을 입력하면 되고, Mac 용 Excel 이라면 1904년 1월 1일을 입력하면 됩니다.


예시 코드 1 : Windows

# from Windows Excel:
> dates <- c(30829, 38540)
> betterDates <- as.Date(dates, origin = "1899-12-30")
> betterDates
[1] "1984-05-27" "2005-07-07"

예시 코드 2 : Mac

# from Mac Excel:
> dates <- c(29367, 37078)
> betterDates <- as.Date(dates, origin = "1904-01-01")
> betterDates
[1] "1984-05-27" "2005-07-07"

날짜 데이터 형식 변경

표준 날짜 형식인 %Y-%m-%d 이외의 형식으로 날짜를 사용하려면 base 패키지 의 format 옵션을 사용하면 됩니다.

> format(betterDates, "%a %b %d")
[1] "Sun May 27" "Thu Jul 07"

참고 : 날짜 형식

R의-날짜-형식-옵션
[출처] https://www.r-bloggers.com/2013/08/date-formats-in-r/


관련 링크

[1] [R-BLOGGERS] Date Formats in R


blog-logo


도움이 되셨다면 💗공감 꾸욱 눌러주세요! 😊