
1. 왜 R이 만들어졌는가
R의 뿌리를 이해하려면 먼저 S 언어를 알아야 한다.
1970년대 후반~1980년대에 미국 벨 연구소(Bell Labs)에서는
통계 분석을 더 유연하게 하기 위해 S라는 언어를 만들었다.
당시 문제는 단순했다.
기존 통계 소프트웨어는 딱 정해진 기능만 제공하는 경우가 많았고
사용자가 직접 분석 절차를 프로그래밍적으로 확장하기가 어려웠다
연구자들은 “데이터를 다루면서 바로 실험하고 모델을 바꾸고 그래프를 그리는” 상호작용적 환경을 원했다
즉, S는 단순한 계산기가 아니라:
“통계 분석을 위한 프로그래밍 언어”
를 지향했다.
이 철학이 나중에 그대로 R로 이어진다.
2. R의 직접적인 기원
R은 1990년대 초 뉴질랜드 오클랜드 대학교(University of Auckland)의
Ross Ihaka와 Robert Gentleman이 만들기 시작했다.
이 둘은 S 언어에서 영향을 받았고,
보다 자유롭게 사용할 수 있는 통계 언어가 필요하다고 봤다.
핵심 배경은 이렇다.
S는 매우 훌륭했지만 상용/제한적 환경의 영향이 컸다
연구와 교육 현장에서는 더 자유로운 구현체가 필요했다
통계학자들이 직접 확장하고 공유할 수 있는 오픈 시스템이 필요했다
그래서 두 사람은 S와 유사한 철학을 가진 새 언어를 만들었고,
그것이 R이다.
3. 왜 이름이 R인가
이건 꽤 유명한 이야기다.
R이라는 이름은 보통 두 층으로 설명된다.
3.1 만든 사람들의 이름 첫 글자
Ross Ihaka
Robert Gentleman
둘 다 이름 첫 글자가 R과 관련되어 있다.
3.2 S의 계승자라는 의미
R은 철학적으로 S의 후속 계열이라는 의미도 가진다.
즉, 알파벳상으로도 S 이전의 글자이지만, 실제로는 “S를 계승한 오픈 구현”이라는 상징이 강하다.
정확히는 그냥 단순한 작명 이상으로:
S 계열 통계 언어의 자유로운 구현체
라는 정체성을 드러내는 이름이다.
4. R의 공개와 성장
R은 1990년대 중반부터 점점 공개적으로 배포되기 시작했다.
그리고 중요한 전환점은 오픈소스화였다.
이게 왜 중요했냐면:
전 세계 통계학자들이 직접 패키지를 만들 수 있게 되었고
대학, 연구소, 기업이 무료로 사용할 수 있었고
특정 통계 기법이 나오면 논문 저자가 바로 R 패키지로 배포하는 문화가 생겼다
즉 R은 언어 자체보다도,
“통계 지식을 코드로 바로 공유하는 생태계”
가 되면서 폭발적으로 커졌다.
5. CRAN의 등장과 생태계의 폭발
R의 역사에서 진짜 중요한 것은 언어 문법만이 아니라 CRAN이다.
CRAN(Comprehensive R Archive Network)은
R 패키지, 소스, 문서 등을 배포하는 거대한 저장소 네트워크다.
이것이 가져온 변화:
누구나 패키지를 배포 가능
특정 분야용 패키지들이 빠르게 축적
통계, 생물정보학, 계량경제, 시계열, 머신러닝, 시각화 등 분야별 도구 확장
전 세계 연구자들이 “논문 + R 코드 + 패키지” 형태로 지식 공유
즉, R은 단순히 하나의 언어가 아니라:
패키지 중심 학술 생태계
가 되었다.
파이썬이 범용 언어 위에 데이터 생태계를 얹었다면,
R은 처음부터 데이터 분석과 통계를 핵심으로 태어난 언어라는 차이가 있다.
6. R이 강해진 이유
R이 오래 살아남은 이유는 명확하다.
6.1 통계학자 친화적
R은 애초에 통계 분석을 위해 만들어졌다.
그래서 회귀, 가설검정, 분산분석, 시계열, 생존분석 같은 개념들이 언어 문화에 깊게 들어와 있다.
6.2 데이터프레임 중심 사고
R은 데이터를 표 형태로 다루는 흐름이 매우 강하다.
이 때문에 실제 데이터 분석 작업과 잘 맞는다.
6.3 시각화 강점
기본 plotting도 강했고, 이후 ggplot2 같은 패키지가 등장하면서
문법적이고 선언적인 시각화 방식이 정착했다.
6.4 연구 재현성
R Markdown, Sweave, knitr 같은 흐름이 생기면서
“분석 코드 + 결과 + 문서”를 하나로 묶는 문화가 발전했다.
즉:
분석을 하고 끝이 아니라,
그 분석 과정을 다시 재현 가능하게 남기는 문화
가 R 생태계의 큰 장점이다.
7. 최근에 R과 파이썬의 역사적 차이
최근에는 통계쪽에서 파이썬을 쓰는 흐름이 일어나고 있으니 역사적 차이도 정리하겠다.
R
출발점: 통계
정체성: 분석 전용 언어에 가까움
강점: 통계 모델링, 시각화, 연구 문화, 패키지 생태계
Python
출발점: 범용 프로그래밍
정체성: 일반 목적 언어
강점: 웹, 자동화, 시스템, AI, 데이터 엔지니어링까지 범용 확장
즉, 둘 다 데이터 분석에 쓰이지만 역사가 다르다.
R은 통계에서 시작해 확장된 언어
Python은 범용 언어가 데이터 분야까지 먹은 언어
그래서 R 문법과 문화는 통계학자의 머리로 설계된 느낌이 강하고,
파이썬은 소프트웨어 엔지니어링적 일관성이 더 강한 편이다.
8. tidyverse 이전과 이후
R 역사에서 또 하나 중요한 사건은
tidyverse 문화의 등장이다.
초기의 R은 강력했지만 다음 문제가 있었다.
문법이 일관되지 않은 경우가 많았고
초보자가 보기엔 다소 난해했고
base R 스타일이 함수마다 감각이 달랐다
이후 Hadley Wickham을 중심으로ggplot2, dplyr, tidyr, readr, purrr, tibble 등을 묶는
tidyverse 흐름이 자리잡았다.
이게 바꾼 것:
데이터 조작 문법의 일관성 강화
읽기 쉬운 파이프라인 스타일 정착
“정리된 데이터(tidy data)” 개념 보편화
현대적인 R 사용법의 표준화
즉, R은 역사적으로:
초기 R = 통계학자 중심의 강력하지만 거친 도구
현대 R = 데이터 분석 워크플로우까지 정리된 언어
로 발전했다.
9. R이 많이 쓰인 분야
R은 특히 아래 분야에서 강하다.
통계학
생물정보학
의학/제약 통계
사회과학 데이터 분석
계량경제학
시계열 분석
학술 연구
실험 결과 분석
리포트 자동 생성
특히 논문 기반 분석 문화에서는
“새 기법 발표 → R 패키지 공개”가 매우 흔했다.
그래서 최신 통계 기법은 한동안 R 쪽이 더 빨리 구현되는 경우도 많았다.
10. R의 한계도 있다
역사를 설명할 때 장점만 말하면 반쪽짜리다.
10.1 범용 소프트웨어 개발에는 약함
R은 대형 애플리케이션 개발 언어로 설계된 것은 아니다.
그래서 웹 서버, 대규모 시스템, 복잡한 백엔드 설계 같은 데서는 파이썬/자바/TS/C#보다 불리하다.
10.2 성능 한계
벡터화된 계산은 강하지만,
전반적인 시스템 프로그래밍 성능이나 메모리 관리 측면에서는 제약이 있다.
10.3 언어 일관성 문제
역사가 길어서 base R, formula, S3, S4, R6, tidyverse 등
스타일이 여러 층으로 겹쳐 있다.
즉 강력하지만 언어가 “깨끗하게 하나의 철학으로만 정리된 느낌”은 아니다.
11. 그럼 지금도 R을 배울 가치가 있는가
있다. 다만 목적이 중요하다.
배울 가치가 큰 경우
통계학 자체를 깊게 다루고 싶다
데이터 분석/리포팅 중심이다
연구/실험 결과 정리에 강한 도구가 필요하다
ggplot2 수준의 시각화 문법을 배우고 싶다
학술/제약/바이오 통계 쪽을 다룬다
상대적으로 덜 적합한 경우
범용 백엔드 개발이 목적이다
제품형 서비스 전체를 만들고 싶다
시스템 통합, 서버, 배포, 웹 앱 중심이다
즉 R은 죽은 언어가 아니라,
목적이 매우 선명한 언어다.
12. 마치며

R의 역사는 이렇게 요약할 수 있다.
Bell Labs의 S 언어 철학을 계승해,
1990년대 오클랜드 대학교에서 탄생한 오픈소스 통계 언어가
전 세계 연구자들의 패키지 생태계와 함께 성장한 역사
레퍼런스: R: A Language for Data Analysis and Graphics(1996)
레퍼런스2:https://cran.r-project.org/doc/manuals/r-release/R-lang.html R공식문서
레퍼런스3: https://cran.r-project.org/
- Ihaka, R., Gentleman, R. (1996). R: A Language for Data Analysis and Graphics
- Chambers, J. (1998). Programming with Data
- R Core Team. An Introduction to R
- CRAN (Comprehensive R Archive Network)
- Wickham, H. R for Data Science
- Wickham, H. Advanced R
- The R Project for Statistical Computing (official website)