Rucrazia's Blog
주말과 공휴일 날짜를 가져오는 R 코드 본문
##
# 주말 리스트
##
#1년 일자를 생성하고 요일 표시하기
#시작일 지정
start_date <- as.Date("1950-01-01")
#종료일 지정
end_date <- as.Date("2018-12-31")
#일단위로 일련의 날짜 생성하기
df <-data.frame(seq(as.Date(start_date), as.Date(end_date), by=1))
names(df) <-"date_yr"
df$weekday <- weekdays(as.Date(df$date_yr))
myData = df[(df$weekday == '토요일') | (df$weekday == "일요일"),]
head(myData)
tail(myData)
write.csv(myData,'주말 날짜.csv')
R로 알아보는 공휴일 리스트
- T Developers에서 제공해주는 API를 이용(미리 API 신청해야 한다.)
1. Tdevlopers 사이트에서 가입을 하고 Workspace로 들어간다.
2.Workspace에서 신규프로젝트 추가 누르기, 프로젝트 추가하기
3. 프로젝트 이름 누르기 -> Service 누르기
4. Service 에서 밑에 위치한 EventDay 서비스 이용 신청하기
5. 신청했으면 프로젝트 명 밑에 EventDay를 클릭
6. Setting에서 TDCProjectKey를 복사한다. 아래의 R코드에 해당 TDCProjectKey에 넣는다.
##
# 공휴일 알아내는 코드 (2014년 이후)
##
library(httr) # for GET(...)
library(rjson) # for fromJSON(...)
base="https://apis.sktelecom.com/v1/eventday/days?month="
year = "2014"
month = ""
day = ""
type = "h"
query <- paste(base,month,"&year","=", year,"&type=",type,"&day=",day, sep="")
getdata<-GET(url=query, add_headers(TDCProjectKey="여러분의 TDC Project Key를 여기에 넣으세요."))
holyday <- fromJSON(content(getdata,type="text"))$results
holyday_array <- seq(1,1, length=length(holyday))
holyday_name_array <- seq(1,1, length=length(holyday))
for(i in 1:length(holyday)){
holyday_array[i] <- paste(holyday[[i]]$'year', holyday[[i]]$month, holyday[[i]]$day, sep="-")
holyday_name_array[i] <- holyday[[i]]$name
}
holyday_df <- data.frame(holyday_array, holyday_name_array)
holyday_df
write.csv(holyday_df,'2014 공휴일.csv')
결과 파일
출처
https://jonnyomme.blogspot.com/2017/03/r-programming-weekdays-1-365.html
'기술 - Data Science > Data Science' 카테고리의 다른 글
[Python] 데이터 수집 - 웹 크롤러 만들기 (0) | 2018.11.10 |
---|---|
(R 전처리) 테이블의 컬럼들로 다른 테이블의의 컬럼을 수정 및 확인하는 방법 (0) | 2018.10.25 |
파이썬(Python) 데이터 분석 라이브러리 (0) | 2018.07.30 |
Data Engineering - Hadoop 설치기 (0) | 2018.03.01 |
Data Engineering - Docker 설치기 (0) | 2018.02.27 |