Translate

2017년 7월 25일 화요일

R CRAN에서 삭제된, 혹은 구버전 패키지 다운로드하기


Laptop
운영체제Ubuntu 16.04 LTS 64bit
개발프로그램RStudio Version 1.0.143
(R version 3.4.1)

CRAN이란, R 언어에서 사용되는 패키지 등의 자료의 모음이라고 보면 된다.

이 중 같은 기능을 수행하는 다른 패키지로 대체되고 사라지는 패키지들이 존재한다.
https://cran.r-project.org/web/packages/[패키지명]/index.html
[패키지명]부분을 바꿔 주소창에 입력해 들어가면 확인해 볼 수 있다.
Package ‘[패키지명]’ was removed from the CRAN repository. 라는 메시지가 뜰 것이다.

이 경우 install.packages('[패키지명]') 을 입력해도
package ‘[패키지명]’ is not available (for R version [R 버전])
라는 메시지만 돌아올 뿐이다.

하지만 경우에 따라 그 패키지를 사용하고 싶을 수 있다.
혹은 install.packages를 사용하는 경우 최신 버전만 설치되므로, 그 이전 버전을 설치하고 싶을 수도 있다.

당연히 방법이 없는 건 아니고, 현 시점에서는 삭제되었더라도 CRAN에서 기록을 모두 가지고 있다.

여기서 Ctrl+F 로 패키지명을 찾고, 들어가서 버전명을 확인하면 된다.
혹은 상단 링크에 들어간 상태로 두번째 줄에 archive를 클릭해도 같은 경로로 연결된다.
https://cran.r-project.org/src/contrib/Archive/


설치 방법은 두가지가 있는데

첫번째는 다운로드 링크를 그대로 입력하는 방법 (인터넷 연결 필수):
install.packages("https://cran.r-project.org/src/contrib/Archive/[패키지명]/[원하는 버전 파일명].tar.gz", repos = NULL, type="source")

두번째는 wget 등을 이용하여 tar.gz 파일을 다운로드 후, 로컬 안에 저장하여 그 경로를 입력하는 방법이다.
/home 에 저장했다면
install.packages("/home/[파일명].tar.gz", repos = NULL, type="source")

물론 다운받을 때는 인터넷 연결이 필요하지만, 그 후에 혹시 R 개발환경을 다시 설정할 때
tar.gz 파일을 갖고 있다면 그 때는 연결이 필요하지 않다.

+ RStudio 에서는 메뉴에서 탐색기를 이용하여 더 간편하게 선택이 가능하다.




이 후 탐색기 창이 뜨는데, 거기서 tar.gz 파일을 열고 Install 버튼을 눌러 마치면 된다.

Install from을 기본 선택 상태인 Repository(CRAN)으로 하면 CRAN에 존재하는 패키지의 경우에도 더 쉽게 설치할 수 있다.
(여러 개의 패키지를 동시에 다운받을 경우 이름을 , 로 구분하라고 적혀있다.)




댓글 9개:

  1. 안녕하세요. 예전에 게시해주신 방법으로 KoNLP 가 잘 설치되었었는데 중간에 무슨 일이 있었는 지 library도 안되고 설치도 아예 안되네요ㅠㅠ
    Error: package or namespace load failed for 'KoNLP':
    .onLoad failed in loadNamespace() for 'rJava', details:
    call: inDL(x, as.logical(local), as.logical(now), ...)
    error: 공유된 객체 'C:/Users/SG/Documents/R/win-library/3.6/rJava/libs/i386/rJava.dll'를 로드 할 수 없습니다:
    LoadLibrary failure: %1은(는) 올바른 Win32 응용 프로그램이 아닙니다.

    에러: 로딩에 실패했습니다
    실행이 정지되었습니다
    *** arch - x64
    Fail to install scala-library-2.11.8.jar. Recommand to install library manually in C:/Users/SG/Documents/R/win-library/3.6/00LOCK-KoNLP/00new/KoNLP/java
    ERROR: loading failed for 'i386'
    * removing 'C:/Users/SG/Documents/R/win-library/3.6/KoNLP'
    Warning in install.packages :
    installation of package ‘C:/Users/SG/AppData/Local/Temp/RtmpkxqCAr/downloaded_packages/KoNLP_0.80.2.tar.gz’ had non-zero exit status

    JAVA문제인 것 같아 다시 설치하거나, Konlp내 자바를 다시 새로운 자바로 덮어써도 안됩니다ㅠㅠㅠㅠ해결방안을 아실까요?ㅜㅜㅜ

    답글삭제
  2. 저도 동일한 에러메세지가 뜨는데 부디 해결방안 좀 부탁드립니다~~

    답글삭제
  3. ㅋㅋㅋㅋㅠㅠㅠ 저는 동일한 방법으로 3월에 구 패키지인 UsingR은 잘 깔았으면서 5월이 끝나가는 현재 KoNLP는 안깔리네요..;; 결국 교수님께서 알려주신 방법 이용하는 중인데 이게 왜 안되나 하고있습니다....

    답글삭제
    답글
    1. 그래도 해당 포스팅이 지금까지도 제게는 너무 감사한 포스팅이랍니다ㅠㅠㅠ 종종 들를게요..

      삭제
    2. 해결 방법 좀 갈쳐 주십시요

      삭제
  4. 저도 같은 에러가 있는데, 해결 방법 좀 부탁드립니다.

    답글삭제
  5. i386 에러가 뜨시는 분들은 R을 삭제하시고 재설치 하실 때 32,64bit 둘다 설치하지 마시고 64bit만 체크해서 설치하시면 가능합니다!

    답글삭제
  6. 안녕하세요 본 게시물을 보고 DMwR 패키지 설치하려고 했고, 알집파일을 다운받아 Rstudio에서 설치눌렀으나 library(DMwR)
    Error: 패키지 ‘DMwR’는 R 3.0.0 이전에 설치되었으므로 다시 설치해주세요 라는 에러가 뜨는데 다른 방법이 있을까요?

    답글삭제