우분투 R 3.5.0


23

Ubuntu Xenial (16.04) 용 R 3.5.0 설치 패키지는 아직 ubuntu 미러 사이트에 없습니다. 우분투 xenial에서 R을 3.5.0으로 업데이트하는 다른 방법이 있습니까? 또는 R을 3.5.0으로 업데이트하는 다른 방법이 있습니까?


1
연습을 살펴 보셨습니까 ? 저자는 명시 적으로 어디에도 말하지 않지만, 다음은 3.5
Hee Jin

여기를보십시오 : askubuntu.com/questions/862403/…
valiano

1
@Emily : 연결 한 연습은 소스에서 R을 설치하는 것입니다.
krlmlr 2016 년

1
@valiano : 이것은 다른 질문에 대답합니다.
krlmlr 2016 년

답변:


24

일부 CRAN 패키지에는 R 3.5로 빌드하는 데 문제가 있으므로 R 3.5는 현재 PPA에서만 사용할 수 있습니다.

자신의 책임하에 진행하십시오.

나를 위해 일한 절차는 다음과 같습니다.

  1. r-cran-*시스템에서 모든 패키지를 제거하십시오 (YMMV, 일반적으로 소스에서 패키지를 설치하고 있으며 패키지는 거의 없습니다)

    • 로 검색 dpkg -l | grep r-cran-
  2. Michael Rutter의 PPA 추가 :

    sudo add-apt-repository ppa:marutter/rrutter3.5
    sudo apt-get update
    
  3. 업그레이드 R

    sudo apt install r-api-3.5
    
  4. 소스를 통해 (를 통해 개인 또는 사이트 라이브러리로 install.packages()) 또는 해당 r-cran-*Ubuntu 패키지를 설치하여 필요한 모든 패키지를 설치하십시오 .

    다음 스크립트를 사용하여 R 3.4 용 개인 사이트 라이브러리에서 패키지를 모두 다시 설치합니다.

    installed <- rownames(installed.packages())
    pkgs <- dir("~/R/x86_64-pc-linux-gnu-library/3.4")
    new <- setdiff(pkgs, installed)
    new
    install.packages(new)

    여러 CPU가있는 머신이있는 경우 프로세스 속도를 높일 수 있습니다. 예를 들면 다음과 같습니다.

    install.packages(new, Ncpus = 6)
    

참고 문헌


3
위의 방법은 전적으로 올바르게 작동했습니다. (Krlmlr에게 감사합니다.) Ubuntu에 경험이없는 사람들을위한 두 가지 추가 제안 : 1. 다음과 같이 이전 r-cran- * 패키지를 제거하십시오. sudo apt-get remove r-cran- * 2. Michael Rutter의 PPA를 추가 한 후 다음을 실행해야합니다. sudo apt-get 업데이트
Larry

위의 방법은 전적으로 올바르게 작동했습니다. (Krlmlr에게 감사합니다.) Ubuntu에 경험이없는 사람들을위한 두 가지 추가 제안 : 1. 다음과 같이 이전 r-cran- * 패키지를 제거하십시오. sudo apt-get remove r-cran- * 2. Michael Rutter의 PPA를 추가 한 후 다음을 실행해야합니다. 실행하기 전에 sudo apt-get 업데이트 : sudo apt install r-api-3.5
Larry

@Larry : 감사합니다. 게시물을 편집 할 수 있습니까?
krlmlr

@krlmlr Ncpus = 6답변에서 제거하는 것이 좋습니다 . 특히 (i) 복사 / 붙여 넣기 전에 코드를 완전히 읽지 않는 사람들에게는 예기치 않은 속도 저하가 발생할 수 있습니다. (ii) 개인용 컴퓨터에서이 작업을 수행합니다. 답변에는 옵션이 필요하지 않습니다.
fridaymeets

1
@fridaymeetssunday : 댓글을 추가했습니다. 그 동의 Ncpus = 6약한 기계에 속도가 느려질 수 있습니다,하지만 아무도 적어도 코드를 스캔하지 않고 복사 - 붙여 넣기 없습니다.
krlmlr

13

CRAN 사이트는 6 월 초 https://cran.r-project.org/bin/linux/ubuntu/ 에서 @krlmlr의 답변 이후 업데이트되었습니다 .

CRAN 명령에는 몇 가지 단계가 있지만 요약은 sources.list파일이 버전 3.5.x 및 3.6.x에 특정한 저장소를 참조해야 한다는 것입니다 . 항목은 다음과 같습니다

deb https://cloud.r-project.org/bin/linux/ubuntu xenial-cran35/

이전 (버전이없는) 항목 대신

deb https://cloud.r-project.org/bin/linux/ubuntu xenial/

웹 사이트의 관련 설명 (결국 변경됨) :

i386 및 amd64의 Ubuntu 용 R 3.6 패키지는 공식적인 수명 종료일까지 Ubuntu의 가장 안정적인 데스크탑 릴리스에서 사용할 수 있습니다. 그러나 최신 장기 지원 (LTS) 릴리스 만 완전히 지원됩니다. 2018 년 11 월 18 일 현재 지원되는 릴리스는 Xenial Xerus (16.04; LTS), Trusty Tahr (14.04; LTS), Bionic Beaver (18.04; LTS), Cosmic Cuttlefish (18.10) 및 Disco Dingo (19.04)입니다. R 3.6 패키지를 설치하려면 다른 sources.list 항목이 필요합니다. 자세한 내용은 아래를 참조하십시오. R이 버전 3.6으로 이동했지만 호환성을 위해 sources.list 항목은 여전히 ​​cran3.5 지정을 사용합니다.


2019-05-13 편집 : R 3.6.0의 지난 달 릴리스에 대한 업데이트.


2

xenial-cran35/당신이 APT에서 "기본 버전"세트가있는 경우 환매 특약의 버전은 일부 배포판의 경우는, 작동하지 않는 등의 민트와 같은 우분투의 상단에 작동하는지. 내 민트 배포판의 경우, 파일이 존재 /etc/apt/apt.conf.d/01ubuntu는 선언있는 내부 Default-Release "xenial"; "주객 관계의"릴리스 R-기본 버전 3.2에서 우분투의 repo에 존재하기 때문에, 즉 어떤이 수단을, 그것은에서 3.6 분기를 사용하지 않을거야 해당 리포지토리의 릴리스 이름이 "xenial-cran35"이므로 다른 리포지토리. 기본 릴리스를 "xenail-cran35"로 변경하거나 적절한 환경 설정 파일 ( https://wiki.debian.org/AptPreferences#A.2Fetc.2Fapt.2Fpreferences )을 사용하여보다 구체적인 작업을 수행하려면 해당 파일을 편집해야합니다 .

이것은 기본적으로 형식이 잘못된 저장소를 갖는 R의 잘못입니다. 그들은 각각 2 개의 repos를 가져야하는데, 각각은 "xenial"릴리스 폴더를 가지고 있었고, 하나는 3.2 분기 작업에 대한 URL이고 하나는 3.5 분기 작업에 대한 URL입니다. 대신 그들은 하나의 저장소를 가지고 있으며 대신 "릴리즈 이름"을 개작했습니다.이 릴리스는 기본 우분투에서 작동하지만 이런 방식으로 apt의 기본 구성이 아닌 경우 작동하지 않습니다.


0

이 작업은 현재 다음과 같이 수행해야합니다.

sudo apt purge r-base* r-recommended r-cran-*
sudo apt autoremove
sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/'
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
sudo apt update
sudo apt install r-base-dev

'bionic'은 우분투 버전으로 변경할 수 있습니다. R 문서를 확인하십시오 : https://cran.r-project.org/bin/linux/ubuntu/

/programming//a/56378217/4549682

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.