R 개발자가 ‘R-universe’로 패키지 생태계 운영하는 법

  • 관리자 신현승
  • 카테고리: 개발이슈
  • 조회수: 646
  • 작성일:

<출처: R-universe.dev, 작가 캡처>

 

R 패키지는 R에서 사용할 수 있는 기능들의 집합으로, 다른 프로그래밍 언어의 라이브러리와 유사하다. 매트랩(Matlab)과 같은 통계 분석 프로그램에 가까우며, 다양한 데이터 분석 도메인에 필요한 확장성을 갖추고 있다. 이번 글에서는 R-universe 플랫폼의 패키지 배포 방식을 통해 R 생태계를 살펴본다.

 

R 패키지

현재 R 패키지는 10만 개 이상 존재하며, ‘ggplot2’를 예로 들어 산점도 그리기 코드를 소개한다.

 

산점도 예시 코드 <출처: 작가>

 

‘ggplot’을 사용할 경우 시각화와 코드 작성의 편의성이 향상된다.

 

산점도 결과 <출처: 작가> 

 

R 패키지 만들기

사용자가 자신만의 통계 분석 코드나 시각화 코드를 만들고 이를 공유하기 위해 R 패키지를 만들 수 있으며, 배포 방법에는 4가지가 있다.

 

  1. Mirror
  2. VCS(Version Control System)
  3. 압축 파일
  4. 텍스트

 

주로 1번 미러와 2번 VCS를 통해 공유된다. VCS에서는 개인이 리포지토리를 생성하고 패키지를 커밋하여 공유할 수 있다. 미러는 CRAN, Bioconductor, R-forge와 같은 플랫폼을 포함하며, 게시 기준이 존재한다.

 

CRAN과 깃허브

<출처: rdirr.io, 작가 캡처>

 

R 패키지를 CRAN에 올리는 것은 까다로운 과정이지만, 많은 개발자들이 깃허브를 선호한다. 그러나 무관리 상태로 방치되는 경우가 많다. R 패키지 정보를 확인할 수 있는 검색 페이지 ‘rdrr.io’가 존재한다.

 

‘useR!2024’ 콘퍼런스에서 R-universe에 대한 논의가 이루어졌다. 이는 개인 R 패키지를 통합하여 한 곳에서 관리할 수 있도록 돕는다.

 

<출처: Dean Attali - R-universe, 작가 캡처>

 

퍼스널 ‘R-universe’ 만들기

퍼스널 R-universe는 기존 CRAN 데이터를 기반으로 생성되며, 새로운 패키지를 추가할 수 있다. 이를 위해 다음 절차를 따른다.

1) 깃허브 리포지토리 만들기

R-universe 개인 페이지를 생성하기 위해 리포지토리를 만든다.

 

2) packages.json 만들기

R 패키지 이름 및 URL을 담은 레지스트리 파일을 생성한다.

 

3) 깃허브 앱 설치하기

R-universe 앱을 설치하고 권한을 설정한다.

 

4) 연동 대기하기

연동 과정에서 GHA(Github Action)가 작동하여 패키지를 동기화한다.

 

5) 결과 및 마무리

<출처: jhk0530.r-universe.dev, 작가 캡처>

 

R-universe는 패키지 빌드 현황, 패키지 관리, 그리고 여러 지표를 제공한다. 사용자는 R 패키지 검색과 사용을 더욱 편리하게 할 수 있다.

 

마치며

R-universe는 R 패키지를 쉽고 비용 없이 관리할 수 있는 웹 서비스이다. CRAN 및 깃허브 패키지를 통합 관리할 수 있어, 개발자들에게 유용한 환경을 제공한다.

 

<출처: 작가 캡처>

 


해당 기사는 GPT를 이용하여 요약한 내용입니다.

원문보기


코멘트 (0)