R | Google Colaboratory | 구글 코랩에서 R 사용하는 방법 두 가지 | rpy2
Aug 29, 2023
Google Colaboratory는 기본적으로 구글 드라이브에서 Python을 실행하는 환경을 제공해 준다. Local의 내 컴퓨터에 파이썬이 설치되어 있지 않아도 구글 드라이브에서 제공하는 가상의 Ubuntu 환경을 할당 받아서 파이썬을 실행할 수 있다.
또한 Google Colaboratory를 활용하여 R을 사용할 수도 있다.
구글 코랩(Colab)에서 제공하는 R을 사용하는 방법
표준감사시간 계산기 - R에서 구동하기 (R을 설치하지 않고 R 사용하는 방법) 에서 기록한 바와 같이
다음 링크를 통하여 Colab 쥬피터 노트북을 할당 받으면 구글 코랩이 제공하는 파이썬이 아닌 R 환경을 사용할 수 있다. 이렇게 하면 파이썬이 아닌 R이 기본적으로 작동하는 Colab 쥬피터 노트북이 된다.
런타임 메뉴의 런타임 유형 변경을 확인하면 R로 설정되어 있는 것을 확인할 수 있다.
colab.research.google.com/notebook#create=true&language=r
기본적으로 R 언어로 된 환경이 되었으므로 R을 주력으로 하면서 Python을 혼용하여 사용하는 방법을 생각해 볼 수도 있겠다. R에서 Python을 사용하는 방법은 reticulate 패키지를 사용하면 원활하게 R을 주력으로 사용하면서 Python도 혼용하여 쓸 수가 있다. 그러나 이 방법은 Rstudio를 IDE로 사용할 때 어울리는 방법이므로 기본적으로 Python을 제공하는 구글 코랩을 굳이 R 환경으로 할당한 다음 Python을 혼용하고자 하는 것은 적절하지 않은 것 같다.
Magic Command로 R 사용하는 방법
rpy2 Python module을 사용하여 Colab이 기본적으로 제공하는 Python 쥬피터 노트북에서 R을 구동할 수 있다. 이 때에는 파이썬을 주로 사용하면서 R을 일부 혼용하기에 좋다.
<rpy2 공식 문서> https://rpy2.github.io/doc/v2.9.x/html/interactive.html
rpy2를 활성화 한다.
# active R magic
%load_ext rpy2.ipython
rpy2를 설치하지 않아도 이미 설치되어 있어서 활성화 된다. 만약에 활성화 되지 않는다면 다음 Magic Command로 rpy2를 설치한다.
!pip install rpy2==3.5.1
rpy2가 활성화되면 %%R을 입력하고 시작하는 셀은 R 언어로 인식된다. 놀랍게도 tidyverse를 설치하지 않아도 library가 작동한다. 이미 코랩의 Ubuntu 환경에 설치가 되어 있는 것으로 여겨진다.
%%R
# install.packages("tidyverse")
library(tidyverse)
Python에서 R로 변수 값을 보낼 때는 input의 의미로 -i를 사용하고 R에서 변수 값을 Python으로 빼 올 때에는 output의 의미로 -o를 사용한다.
만약 다음과 같은 변수의 계산 값이 있다면
%%R
a <- 12
b <- 15
c <- a+b
이 계산의 결과값인 c 변수를 Python 환경으로 꺼내어 사용하고 싶을 때 -o를 사용하여 c 변수를 꺼낸다.
%%R -o c
그 후 python 셀에서 변수 c 를 확인하면
c
array([27.]) 가 반환된다.
이 안의 27만 가져오고 싶다면
c[0]