R 프로그래밍이란?


R 프로그래밍이란?

R은 오늘날 통계 프로그래밍을 위한 가장 인기 있는 스크립팅 언어 중 하나입니다. R 프로그래머의 수요는 2010년대 초부터 지속적으로 증가해 왔으며 R은 여전히 데이터 과학자들 사이에서 선호하는 프로그래밍 언어로서의 지위를 누리고 있습니다.

R은 또한 요즘 딥 러닝에 적응되어 여러 통계학자들이 각자의 분야에서 딥 러닝을 쉽게 접할 수 있도록 도왔고 R은 현재 급성장하는 AI 시나리오에서 없어서는 안 될 부분이 되었습니다.

권장 읽기: Python 데이터 과학 라이브러리

R 프로그래밍 언어의 역사

R에는 통계 계산을 위해 AT&T에서 개발한 S(S는 통계를 나타냄) 언어라는 선구자가 있습니다. AT&T는 이전에 FORTRAN 라이브러리로 구현되었던 내부 통계 분석 환경의 일부로 1976년에 S에 대한 작업을 시작했습니다.

S 뒤에 있는 사람은 John Chambers였습니다. 단일 문자 이름 S는 당시 프로그래밍을 위한 유비쿼터스 C 언어에서 영감을 받았습니다.

R은 Ross Ihaka와 Ross Gentleman이 1992년 뉴질랜드 오클랜드 대학에서 구상한 프로젝트에서 개발되었습니다. 첫 번째 버전은 1995년에 출시되었으며 첫 번째 안정적인 베타 버전은 2000년에 나왔습니다.

R은 처음에 기존 S 기능 위에 어휘 범위 지정 의미 체계를 추가했기 때문에 S와 달랐습니다. 단일 문자 이름 R은 S에서 다시 영감을 받아 두 저자의 이름 첫 글자를 따왔습니다.

R은 GNU 공개 라이선스로 개발되었으며 공개적으로 배포할 수 있습니다.

S 프로그래밍 언어는 나중에 AT&T에서 구입한 TIBCO Corporation에서 일부 고급 분석 기능과 OOP 기능을 추가하여 S-plus로 개발했습니다.

R 프로그래밍의 특징

  • 플랫폼 독립적 - Windows, Linux 및 Mac OS와 같은 여러 컴퓨팅 플랫폼에서 실행됩니다.
  • 휴대성 - 모바일, 태블릿 및 게임 콘솔에서 쉽게 실행할 수 있습니다.
  • 빈번한 릴리스 - 시기적절한 버그 수정 및 불만 감소
  • 우수한 그래픽 - ggplot2 및 plotly와 같은 미적 그래픽 라이브러리와의 호환성으로 출판 품질의 그래픽 시각화를 보장합니다.
  • 다양성 - 특정 목적을 위한 수백 개의 패키지가 개발자 커뮤니티에서 매일 개발 및 개선되고 있습니다.

R 프로그래밍의 장점

R은 여전히 S 및 S-plus에 비해 더 많이 사용되는 통계 프로그래밍 언어로 남아 있으며, R의 장점이 많기 때문에 당연히 그렇습니다.

  • R은 S의 오픈 소스 구현을 구축하려는 의도로 개발되었으므로 R은 항상 오픈 소스 소프트웨어로 남을 것입니다.
  • R에는 수천 명의 전문 과학자와 통계학자가 R을 지속적으로 사용하고 개선하고 있습니다.
  • R은 Windows, Mac 및 Linux와 호환됩니다. 거의 모든 곳에서 실행되며 많은 공간을 차지하지 않습니다.
  • 통계 처리 기능 외에도 R은 함수형 프로그래밍 및 객체 지향 프로그래밍 기능을 갖춘 일반 프로그래밍 언어로도 사용할 수 있습니다.
  • R은 ggplot2 및 plotly의 참여로 인해 여러 상용 제품에 비해 훨씬 뛰어난 시각화 기능을 가지고 있습니다.
  • R에서 제공하는 그래픽은 더욱 아름다워 전 세계 전문가들이 선호합니다.
  • R은 타고난 그래픽 사용자 인터페이스 기반 환경이 아닙니다. 명령만 입력으로 사용하므로 명령을 스크립트로 쉽게 저장하고 도메인 간에 포트할 수 있습니다.
  • R 세션은 효율적으로 관리됩니다. 명령 기록과 데이터는 세션 사이에 저장되므로 번거로움 없이 떠난 곳을 선택할 수 있습니다.
  • R에는 풍부하고 반응이 빠른 온라인 개발자 커뮤니티가 있습니다.

R의 한계

R은 가장 싫어하는 프로그래밍 언어로 여겨집니다. 모든 장점에도 불구하고 R은 다른 언어와 마찬가지로 완벽하지 않습니다. R 학습에 뛰어들기 전에 단점을 염두에 두는 것이 유용할 것입니다.

  • 가파른 학습 곡선: R은 시작하기 쉬운 언어가 아닙니다. 초보자는 명령줄 인터페이스로 인해 발을 적시는 것이 어렵다는 것을 알게 됩니다. RStudio와 같은 IDE는 이러한 한계를 어느 정도 극복하는 데 도움이 될 것입니다. 또한 다양한 패키지가 초보자에게 혼란을 줄 수 있습니다.
  • Hungry for Physical Memory: 강력한 경쟁자인 Python과 달리 R은 모든 데이터를 물리적 메모리에 저장합니다. 이로 인해 거대한 데이터 세트를 처리하기가 어렵습니다. 그러나 다행스럽게도 요즘 R용 Hadoop 통합이 많이 개선되어 문제가 크게 완화되었습니다.
  • 느린 실행: 코드가 MATLAB이나 Python에서처럼 빠르게 실행되기 전에 R은 많은 최적화가 필요합니다. 느린 실행을 피하기 위해 프로그램을 설계할 때 개체의 내부 작업에 대한 깊은 이해가 필요합니다.

R의 가용성

R은 CRAN 프로젝트(Comprehensive R Archive Network의 약어)에서 명령줄 인터페이스 환경으로 사용할 수 있습니다. 그러나 초보자는 IDE의 도움으로 더 빨리 배울 수 있습니다. IDE에는 R에 대한 것이 꽤 많이 있습니다.

  • RStudio : R을 시작하는 데 가장 많이 사용되는 IDE입니다. 데스크톱 및 엔터프라이즈 버전이 모두 있습니다.
  • StatET : R 프로그래밍 및 패키지 구축을 위한 Eclipse 기반 IDE.
  • ESS-R 프로젝트: R 외에도 S-Plus, SAS, Stata 및 OpenBUGS/JAGS와 같은 여러 통계 패키지를 지원합니다.