Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Python
- Apple
- 라즈베리파이
- 주식
- 공모주
- 현대통신
- esp32
- 힐스테이트 광교산
- 애플
- 국내주식
- RS-485
- 빅데이터분석기사
- cluster
- 해외주식
- ConnectedHomeIP
- Bestin
- Home Assistant
- homebridge
- Espressif
- MQTT
- 나스닥
- 배당
- raspberry pi
- 미국주식
- 홈네트워크
- matter
- 월패드
- 파이썬
- SK텔레콤
- 매터
Archives
- Today
- Total
YOGYUI
R 스크립트 파일 경로 가져오기 본문
반응형
파이썬은 __file__ 변수를 통해 현재 실행되는 스크립트의 절대경로를 쉽게 가져올 수 있다
R은 이리저리 검색해보니 tidyverse 라이브러리를 사용한 함수를 활용하는게 제일 확실한 것 같다
출처: https://stackoverflow.com/questions/47044068/get-the-path-of-current-script
# install.packages("tidyverse")
library(tidyverse)
getCurrentFileLocation <- function()
{
this_file <- commandArgs() %>%
tibble::enframe(name = NULL) %>%
tidyr::separate(col=value, into=c("key", "value"), sep="=", fill='right') %>%
dplyr::filter(key == "--file") %>%
dplyr::pull(value)
if (length(this_file)==0)
{
this_file <- rstudioapi::getSourceEditorContext()$path
}
return(dirname(this_file))
}
shell에서 실행할 경우 명령줄 인자(argument)를 파싱해서 실행 스크립트 파일이 포함된 디렉터리의 경로를 반환하며, R Studio로 실행할 경우 rstudioapi의 getSourceEditorContext() 함수를 사용한다
위 함수를 사용해서 실행되는 스크립트 파일의 디렉터리를 작업경로로 설정할 수 있다
# install.packages("tidyverse")
library(tidyverse)
getCurrentFileLocation <- function()
{
this_file <- commandArgs() %>%
tibble::enframe(name = NULL) %>%
tidyr::separate(col=value, into=c("key", "value"), sep="=", fill='right') %>%
dplyr::filter(key == "--file") %>%
dplyr::pull(value)
if (length(this_file)==0)
{
this_file <- rstudioapi::getSourceEditorContext()$path
}
return(dirname(this_file))
}
setwd(getCurrentFileLocation())
반응형
'Software > R' 카테고리의 다른 글
R caret::preProcess - 수치형 데이터 정규화, 표준화 (0) | 2021.06.17 |
---|---|
R 회귀분석 모델 성능판단 - RMSE, MAE, R squared (0) | 2021.06.16 |
R pROC 패키지::ROC 커브 그리기, AUC 메트릭 계산하기 (0) | 2021.06.15 |
R NA 처리하기 (with dplyr) (0) | 2021.06.13 |
R 작업 경로(working directory, wd) Set/Get (0) | 2021.06.05 |