R 소개
R 소개
- R은 1993년 뉴질랜드 오클랜드 대학의 통계학과 교수인 로스 이하카(Ross Ihaka)와 로버트 젠틀맨(Robert Gentleman)이 만들었습니다. R은 통계 언어인 S와 S+의 계보를 잇고 있지만, 무료이며 오픈 소스 프로젝트[1]로 개발되고 있습니다. 따라서 누구나 인터넷에서 다운로드 받아 사용해 볼 수 있습니다. 그리고 필요하다면 소스 코드도 검증하고 수정할 수 있습니다.
- 통계 분석 도구로서 R은 수십에서 수백만원에 호가하는 다른 상용 프로그램(예. SPSS, SAS, Stata 등)과 달리 무료입니다. 대부분의 상용 프로그램은 소수의 개발자에 의해 개발되고, 소스 코드는 철저히 비밀로 유지되기 때문에 다른 사람들이 프로그램의 소스 코드를 살펴볼 수 없습니다. 만약 오류를 발견하더라도 수정할 수 없기 때문에 프로그램 개발자들이 수정해주기를 기다려야 합니다. 하지만 R은 소스코드가 모두 공개되어 있어서 누구라도 프로그램의 정확성을 검증할 수 있고, 오류가 발견되었을 때에는 스스로 수정할 수 있습니다.
- 통계학, 기계 학습, 데이터 사이언스는 계속 발전하고 있으며, 매년 새로운 기법들이 개발되고 있습니다. 상용 프로그램에서는 새로운 기법을 회사의 개발자들이 추가할 때까지 기다려야 했으며, 추가된 기능은 돈을 주고 구매해야 했습니다. 하지만 많은 경우 새로운 기법의 발표와 함께 R로 구현된 패키지도 공개가 되므로 R을 사용하면 누구나 개발된 기법을 사용하고 평가해 볼 수 있습니다.
- 그 밖에 통계 프로그래밍 언어로써 R은 다음과 같은 특징이 있습니다.
- 인터프리터 언어 : 프로그래밍 언어는 크게 컴파일 언어와 인터프리터 언어로 나눌 수 있습니다다. 컴파일 언어는 프로그램 전체를 컴퓨터가 이해할 수 있는 어셈블리어로 바꾼 후 실행합니다. 인터프리터 언어는 프로그램을 한 줄씩 해석하고, 동시에 실행합니다.
- 객체 지향 언어 : R은 함수 기능이 객체의 클래스에 의해 결정된다는 점에서 객체 지향 언어라고 할 수 있다. 더 나아가 S3, S4와 같은 객체를 통하여 본격적인 객체 프로그래밍을 지원합니다.
- 함수형 언어 : R은 함수의 인자로 함수를 쓸 수 있고, 함수의 반환값으로 함수를 받을 수 있다는 점에서 함수형 언어입니다.
[1]: 여러 개발자의 자발적이고 공개적인 참여로 이루어지는 소프트웨어 개발 프로젝트.
Leave a comment