data analysis & visualization

Git 다운로드


https://git-scm.com/download/win


git이 자동 다운로드 된다.


git을 설치한 뒤  실행한다.


git config --global user.name '유저이름'


git config --global user.email '이메일@~'


git의 복사는 ctrl+insert 붙여넣기는 ctrl+insert 이다.




R 패키지 만들기

그런다음 https://github.com/에 가입한 뒤 New repository를 생성하자.


비공개는 유료라고 하는데 학생은 무료로 가입 가능하다고 하니 참고하자.


Repository name에 만드려는 패키지의 이름을 적자.


create repository 클릭 



https 가 적혀 있을텐데 조금있다 사용할 예정이다.




이제 R 스튜디오를 열자.


file>New project 클릭


New directory>R Packge>Package name에 Repository name에서 입력한 패키지 이름 입력>

Create project as subdirectory of 본인 컴퓨터에 저장될 경로 지정



tools에서 global options의 git/SVN의 create RSA Key 클릭>Public key를 복사>

 View public key 의 내용 복사> 본인 github 홈페이지에서 오른쪽 상단에 종, +, 옆에 있는 네모에서 설정을 클릭. ssh 키 >

새로운 ssh 키 등록


생성된 프로젝트를 닫거나 스튜디오를 닫은 뒤 방금 저장된 경로로 이동하여 이름을 잠시 바꿔준다.


 package라고 저장했으면 폴더명을 package_로 변경


다시 R 스튜디오에서 file>New project클릭


 version control 클릭 git 클릭


 아까 github 홈페이지에서 생성한 https를 repository URL에 붙여넣자. 


그리고 경로는 아까와 같은 경로, project directory name에는 앞에서와 동일한 생성할 패키지명을 입력


다시 패키지 생성 경로로 들어가 package_로 저장한 폴더안에 파일들을 복사 한다음 package 폴더내에 붙여넣기 한 뒤 덮어쓰기한다.


이제 package_폴더는 제거하여도 된다.


.gitignore를 메모장에서 열든 R스튜디오에서 열든 연다.


.Rproj.user

.Rhistory

.RData

.Ruserdata


라고 입력된 내용을 


.Rproj.user

.Rhistory

.RData

.Ruserdata 패키지이름.Rproj

.gitignore 


라고 변경 후 저장.


.Rbuildignore를 열고 

^.*\.Rproj$

^\.Rproj\.user$


라 입력된 내용을


^.*\.Rproj$

^\.Rproj\.user$

.gitignore

README.md

.Rhistory


라고 변경 후 저장.


R 스튜디오 오른쪽에 Push를 클릭하면 Review Changes라는 창이 뜨는데

 ctrl+A >space bar 해서 모두 체크해준 뒤 commit message에 commit을 입력해준다. 


이제 깃허브 비밀번호를 입력해준다.


전송창에 전송이 끝나면 package가 만들어진다.


패키지의 사용


library(roxygen2)

library(devtools)

install_github('깃허브아이디/패키지')

library(패키지명)

하면 패키지 사용이 가능하다.


use_data(exdata, internal = F,overwrite=T)를 사용해서 패키지에 데이터를 저장 할 수도 있으며 


아래 형식으로 스크립트를 저장해 패키지 내에 함수를 저장할 수 있다.

#' 제목

#'

#' @param 

#' @return 

#' @examples

#' @export

함수이름<-function()


물론 저장 후 아래 코드를 실행하고 push를 해야 가능하며 한글이 있으면 오류가 나는 것 같다.

devtools::document()


'R' 카테고리의 다른 글

leaflet 지도그리기  (0) 2019.04.09
객체지향언어란  (0) 2019.04.08
이미지 벡터화해서 저장하기  (0) 2019.03.21
정규표현식(R)  (3) 2019.03.19
R 기본 플롯 사용하기  (0) 2019.03.19