R은 통계 계산과 통계 그래픽을 위한 프로그래밍 언어이자 소프트웨어 환경이다. 오픈소스로 제작했고 무료이다.[2]뉴질랜드오클랜드 대학의 로버트 젠틀맨(Robert Gentleman)과 로스 이하카(Ross Ihaka)가 시작해 현재는 R 코어 팀이 개발한다. R은 또한 GNU의 GPL 아래에서 배포하는 S 프로그래밍 언어을 구현하므로 때때로 GNU S 로도 부른다.[3][4][5][6]R는 통계 소프트웨어 개발과 자료 분석에 널리 사용하며, 패키지 개발이 용이해 통계 소프트웨어 개발에 많이 쓴다.
소개
R의 문법과 통계처리 부분은 AT&T 벨 연구소가 개발했던 S를 참고했고, 데이터 처리부분은 스킴에서 영향을 받았다.
R는 다양한 통계 기법과 수치 해석 기법을 지원한다. R는 사용자가 제작한 패키지를 추가하여 기능을 확장한다. 핵심적인 패키지는 R와 함께 설치하며, CRAN(the Comprehensive R Archive Network)에서 2022년 1월 기준 18,700개 이상의 R 패키지(R package)를 내려 받을 수 있다.
R의 또 다른 강점은 그래픽 기능으로 수학 기호를 포함하는 출판물 수준의 그래프와 다양한 그래픽을 제공한다.
R는 통계 계산과 소프트웨어 개발 환경이 필요한 통계학자와 연구자들과 행렬 계산 도구로서 사용하며 이 부분에서 GNU Octave나 MATLAB에 견주어도 흠이 없다.
인터프리터 언어라는 이유로 처리속도가 낮다는 평가를 받는 경우가 있다. 그러나 실제로는 S의 상용판인 S-PLUS보다 많은 경우 속도가 빠르며, 범용행렬계 언어의 표준과도 같은 MATLAB과 그 파생어인 GNU Octave, Scilab보다도 종합적으로 빠르다는 평가가 있다.[출처 필요]
RStudio는 오픈 소스인 R를 좀 더 편하게 사용려고 개발한 프로그램(IDE, 통합 개발 환경)이다.
통계적 특성
R 및 그 라이브러리는 선형 및 비선형 모델링, 고전 통계 테스트, 시계열 분석, 분류, 클러스터링 등 다양한 통계 및 그래픽 기술을 구현한다. R는 자체 기능으로 쉽게 확장 가능하며, R 커뮤니티는 패키지와 관련한 다양한 결과를 기여한다. R의 표준 함수 중 대부분 R 자체로 작성하여 사용자가 쉽게 알고리즘을 사용한다. 계산 작업의 경우 C, C ++ 및 Fortran 코드를 런타임에 링크하고 호출한다. R 객체를 직접 C, C ++,[10] Java[11],NET[12]또는 파이선(Python) 코드로 작성할 수 있다. R는 많은 사람들이 만든 패키지를 공유해 특정 기능이나 특정 분야의 연구 분야에서 적용 가능하다. S의 전통으로 R는 대부분의 통계 컴퓨팅 언어보다 강력한 객체 지향 프로그래밍 기능을 제공한다.
R의 또 다른 장점은 수학 그래픽을 포함해 고품질의 그래프를 만드는 정적 그래픽이다. 역동적이고 대화형적인 그래픽도 추가 패키지로 제공한다.[13][14]
R에는 LaTeX와 유사한 자체 문서 형식인 Rd(R documentation,Rd format)[15]가 있으며, 이는 온라인과 하드카피에서 포괄적인 문서를 제공한다.
R Core Team (2016). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL http://www.R-project.org/.
↑Ross Ihaka; Robert Gentleman (9월 1996), “R: A Language for Data Analysis and Graphics”, 《Journal of Computational and Graphical Statistics》 5 (3), doi:10.2307/1390807, JSTOR1390807다음 날짜 값 확인 필요: |date= (도움말), 위키데이터Q56268347, cited from Roger Peng (3 9 2020), 《R Programming for Data Science》, ISBN값 없음|isbn= 값 확인 필요: invalid character (도움말)다음 날짜 값 확인 필요: |date= (도움말), 위키데이터Q101068131, section 2.4.