Translate

2017년 4월 9일 일요일

자주 사용하는 R 코드를 모아 자신만의 소스 만들기

R뿐만 아니라 프로그래밍 작업을 하다보면 같은 코드를 반복해서 사용하게 되는 경우가 흔합니다. 바로 앞에서 언급했던 mygroup 같은 코드는 매우 짧지만, 만약 코드가 꽤 길어진다면 필요한 코드를 그때마다 실행시키기 귀찮겠죠. 그래서 R 스튜디오에서 이런 코드를 모아 자신만의 소스로 만들 수 있습니다. 만드는 방법도 매우 단순합니다. 


 그냥 R 스크립트 창을 열고 자동으로 실행시킬 코드를 넣은 후 Source on Save 를 체크해주기만 하면 됩니다. 앞서 했던 예제 가운데 다이아몬드의 확률 밀도 함수를 그리는 예제를 하나의 명령어로 실행해 보겠습니다. 아래 코드입니다. 


#density plot 

library("ggplot2")
d=density(diamonds$carat[diamonds$cut=="Fair"],na.rm=TRUE)
plot(d,"Density Plot of Diamonds carat",col="red",lty=1)
rug(diamonds$carat)

d1=density(diamonds$carat[diamonds$cut=="Fair"],na.rm=TRUE)
d2=density(diamonds$carat[diamonds$cut=="Good"],na.rm=TRUE)
d3=density(diamonds$carat[diamonds$cut=="Very Good"],na.rm=TRUE)
d4=density(diamonds$carat[diamonds$cut=="Premium"],na.rm=TRUE)
d4=density(diamonds$carat[diamonds$cut=="Ideal"],na.rm=TRUE)
plot(d1,"Density Plot of Diamonds carat",col="red",lty=1)
lines(d2,col="blue",lty=2)
lines(d3,col="salmon",lty=3)
lines(d4,col="black",lty=4)
lines(d4,col="green",lty=5)
legend("topright",legend=c("Fair","Good","Very Good","Premium","Ideal"),col=c("red","blue","salmon","black","green"),lty=1:5)


 새로운 R 스크립트 창을 열고 난 후 여기에 코드를 넣은 후 이름을 R script라는 명칭을 부여해 보겠습니다. R script 창 열고 코드를 옮긴 후 저장 (디스크 파일 버튼)을 누르고 이름을 지정해주면 됩니다. 이 때 중간 경로에 한글이 들어가면 에러가 날 수 있다는 점은 이미 이야기했습니다. 





 정상적으로 되었다면 다음 같은 모양이 나올 텐데 여기서 Source on Save 부분을 체크 한 후 옆에 있는 저장 버튼을 눌러줍니다.  





 그러면 source('H:/R post/R post/R script.R') 라는 코드가 뜨는데 소스로 저장이 되었다는 의미죠. 소드 코드의 저장 위치는 R 스튜디오에서 지정해준 위치로 들어가게 되어 있으니 참조하시기 바랍니다. 이제 source('H:/R post/R post/R script.R')를 실행시키면 코드가 실행되어 아래의 화면이 뜨게 됩니다. 






 물론 보통 소스를 이런 목적으로 저장하지는 않습니다. 그보다는 앞으로 설명할 다양한 패키지와 자신만의 함수를 불러오는 데 사용하게 됩니다. 수백줄에 달하는 코드를 저장했다가 한 번에 불러와서 작업 속도를 빠르게 하는 것이 목적이죠. 

댓글 없음:

댓글 쓰기