Datetime in r

Published by onesixx on

현재시간

KST (Korea Standard Time),
GMT (Greenwich Mean Time) :  time zone
= UTC (Coordinated Universal Time ) : time standard

R

현재 TimeZone

R

연산을 위해, 1970년1월1일을 기준으로 초단위로 환산
(날짜, 연도단위로 환산할수 있지만, 반대연산은 불가)

00:00:00 disappears 

R
http://statkclee.github.io/data-science/ds-date-basics.html
https://www.cyclismo.org/tutorial/R/time.html#time-data-types
  • ISO 8601 표준에 근거하여 표현된 날짜/시간은 R에서는 String로 인식하고,
  • 이런 String 데이터는 날짜/시간 변환 함수(as.Date, as.POSIXct, as.POSIXlt, strptime)를 통해 DateTime 데이터로 변환한 후,
  • 날짜/시간 팩키지(zoo, xts, lubridate)를 통해 작업을 진행한다.

String-> 날짜형식String으로
(ISO8601표준에 맞게 표현)

R

Date 변환

R에서 날짜와 시간은 각각  다른 클래스를 통해 구현되는데,
날짜(Date)는 Date 클래스이고, (1970-01-01을 기준으로 R 내부적으로) 정수형으로 저장되고,
시간(Time)은 POSIXct, POSIXlt 클래스이고, (1970-01-01을 기준으로 R 내부적으로)  초단위로 저장된다.

R

as.Date()

String->날짜변환

변환 함수을 통해 String 데이터를 DateTime 객체로 변환한다.
먼저 ISO 8601 기준에 맞는 문자열(“1970-01-01”)을 as.Date 함수를 통해 날짜 객체로 변환한다. (내부적으로 보면 정수 0 으로 저장된다) 

R
R

DateTime 변환 POSIXct

as.POSIXct()

String-> DateTime 변환

POSIX :  Portable Operating System Interface for Unix (application programming interface)
– ct  : continuous time  (the number of seconds)
POSIXct 클래스는 매우 큰 정수로 시간정보를 데이터프레임으로 저장할 때 유용하다.

– lt :  list time,  (keeps the date as a list of time attributes (such as “hour” and “mon”))
POSIXlt 클래스는  요일, 년, 월, 일 등의 정보를 리스트 자료형으로  리스트 내부 원소로 저장되어 유용하다.

R
https://3months.tistory.com/289

POSIXct 타입은 내부적으로는 정수를 저장하고 있기 때문에,
Plotting할대 숫자처럼 순차적으로 활용할수 있으면, ggplot에서 scale_x_date / scale_x_time/ scale_x_datetime 를 활용하여 표현가능하다.

R

format(), strftime()

DateTime(POSIXct) -> String변환

R

Lubridate()

String-> DateTime 변환

DateTime(POSIXct) -> String변환

https://lubridate.tidyverse.org/
https://rawgit.com/rstudio/cheatsheets/master/lubridate.pdf
R

hour단위 time series 만들기

https://stackoverflow.com/questions/33782218/how-to-create-a-time-series-of-hourly-data
R

3. DateTime 변환 POSIXlt

POSIX :  Portable Operating System Interface for Unix (application programming interface)
– ct  : continuous time  (the number of seconds)
POSIXct 클래스는 매우 큰 정수로 시간정보를 데이터프레임으로 저장할 때 유용하다.
– lt :  list time,  (keeps the date as a list of time attributes (such as “hour” and “mon”))
POSIXlt 클래스는  요일, 년, 월, 일 등의 정보를 리스트 자료형으로  리스트 내부 원소로 저장되어 유용하다.

as.POSIXlt()

String-> DateTime 변환

연도별 평균값, 월별 평균, 일별 평균 등을 구하기 위해 list형태로 시간을 나누어, year, mon, wday등을 활용한다.

R

strptime()

String-> DateTime 변환

문자열 (character 벡터)를 POSIXlt 클래스로 변환한다.

R

3. 날짜/시간 팩키지 활용

String에서 변환된 날짜/시간 객체는 여러 팩키지를 활용가능하다.

zoo

xts

Categories: Reshaping

onesixx

Blog Owner

avatar