자료처리
R 패키지 함수 수정 내용이 세션종료 후 저장되지 않는 문제 해결
Prof. Sung-Deuk Choi
2023. 10. 30. 04:35
예전 글에서 설명한 것과 같이 trace 함수를 사용하여 R 패키지 내부 함수를 수정할 수 있습니다. 그러나 해당 세션에서 임시로 수정한 것이고 패키지 함수 자체를 수정한 것이 아닙니다.
R 패키지 함수 편집하기
패키지 함수의 구체적인 소스 코드를 수정하는 방법입니다. 함수 코드 확인 방법 패키지명:::함수명 입력하고 엔터 openair:::trajPlot 함수 코드 편집하기 패키지 불러오고, 아래와 같이 편집 함수명
eacl.tistory.com
이 방법을 이용해서 openair 패키지의 trajLevel 함수를 수정해서 CWT를 제대로 사용할 수 있습니다.
openair CWT 가중치 함수 수정
R 패키지인 openair를 사용하면 대기오염 관련 그림을 아주 빨리 그릴 수 있습니다. 장거리 이동을 평가할 수 있는 대표적인 하이브리드 수용모델인 PSCF와 CWT가 openair에 포함되어 있습니다. 그런데
eacl.tistory.com
그러나 세션이 종료되면 저장 내용이 반영되지 않는 문제가 있습니다. 즉, R을 시작할 때마다 해당 함수의 코드를 수정해야 야 합니다. 이를 해결하기 위해서 수정한 함수를 R 파일로 저장했다가 필요할 때 해당 함수를 불러오면 됩니다. 매번 코드를 수정하는 번거로움을 덜 수 있습니다.
save("trajLevel", file = "trajLevel_modified.R") # trajLevel 함수 편집 후에 새로운 R 파일로 저장
load("trajLevel_modified.R") # 세션을 새로 시작할 때(R을 새롭게 실행할 때) 변경된 함수 호출