R에서 날짜를 숫자로 변환하는 방법(예제 포함)
R에서 날짜 값을 숫자 값으로 변환하는 데 사용할 수 있는 두 가지 방법이 있습니다.
방법 1: as.numeric() 사용
as. numeric (my_date)
그러면 날짜 개체와 1970년 1월 1일 사이에 경과된 시간(초)이 반환됩니다.
방법 2: lubridate 패키지 기능 사용
library (lubridate) #get seconds value in date object second(my_date) #get minutes value in date object minute(my_date) ... #get year value in date object year(my_date)
그러면 초, 분, 연도 등의 값이 반환됩니다. 날짜 개체의
다음 예에서는 각 방법을 실제로 사용하는 방법을 보여줍니다.
방법 1: as.numeric() 사용
다음 코드는 as.numeric() 함수를 사용하여 날짜 객체를 숫자로 변환하는 방법을 보여줍니다.
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#convert date object to number of seconds since 1/1/1970
as. numeric (my_date)
[1] 1634189700
#convert date object to number of days since 1/1/1970
as. numeric (my_date) / 86400
[1] 18914.23
#convert date object to number of years since 1/1/1970
as. numeric (my_date) / 86400 / 365
[1] 51.81982
결과를 바탕으로 다음을 확인할 수 있습니다.
- 날짜 개체와 1970년 1월 1일 사이에는 1,634,189,700초의 차이가 있습니다.
- 날짜 개체와 1970년 1월 1일 사이에는 18,914.23일 의 차이가 있습니다.
- 날짜 개체와 1970년 1월 1일 사이에는 51.81982년 의 차이가 있습니다.
방법 2: lubridate 패키지 기능 사용
다음 코드는 R의 lubridate 패키지에 있는 함수를 사용하여 날짜 객체를 숫자로 변환하는 방법을 보여줍니다.
library (lubridate)
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#extract various numerical values from date object
second(my_date)
[1] 0
minute(my_date)
[1] 35
hour(my_date)
[1] 5
day(my_date)
[1] 14
month(my_date)
[1] 10
year(my_date)
[1] 2021
이 함수를 사용하면 날짜 개체에서 초, 분, 시간, 일, 월, 연도 값을 추출할 수 있습니다.
Lubridate 패키지에서 가장 일반적으로 사용되는 기능을 완전히 이해하려면 이 온라인 치트 시트를 참조하십시오.
추가 리소스
다음 튜토리얼에서는 R에서 다른 일반적인 변환을 수행하는 방법을 설명합니다.
R에서 문자열을 날짜/시간으로 변환하는 방법
R에서 숫자를 날짜로 변환하는 방법
R에서 날짜별로 데이터 프레임을 정렬하는 방법