R:개요

학교의 모든 지식. SMwiki
둘러보기로 이동 검색으로 이동

R언어 공부를 위한 틀 틀:R

  1. R:개요
    1. R:코딩팁
    2. R:연산자
  2. R:객체
    1. R:자료형
    2. R:자료구조
  3. R:함수
    1. R:자주사용하는 함수
      1. R:aplly계열(반복문, 중복작업)
  4. R:제어문
    1. R:조건문
    2. R:반복문
  5. R:자료조작
    1. R:데이터프레임
    2. R:행렬
  6. R:데이터 저장과 불러오기
    1. R:데이터베이스
    2. R:특정조건 추출하기
  7. R:패키지
    1. R:magrittr(파이프연산자)
    2. R:dplyr(데이터프레임 조작)
    3. R:ggplot2(그래프그리기)
    4. R:KoNLP(한글 텍스트마이닝), wordcloud2(워드클라우드)
    5. R:ddply(데이터 집계, 조작)
    6. R:tidyverse(데이터를 정제하는 패키지들의 집합)
    7. R:jsonlite(JSON 파일 다루기)
    8. R:pbapply(apply계열에 진행바를 보여준다.)
  8. R:활용
    1. R:데이터 접근
    2. R:연관성분석
    3. R:분류분석
  9. R:팁
    1. R:연구용 팁

개요[편집 | 원본 편집]

1995년 뉴질랜드 오클랜드대학의 로버트 젠틀먼, 로스 이하카에 의해 개발 시작.(그래서 R) R development core team에서 지속적인 개선중.

객체지향의 오픈소스 언어.

목적[편집 | 원본 편집]

배열, 행렬형태의 데이터를 다루기 위한 것.

통계나 데이터처리를 위해.

장점[편집 | 원본 편집]

- 무료배포 소프트웨어

- SPSS, java, C, DBMS 등 다양한 프로그램언어와 서비스에 대한 확장성.

- 재현가능성. 이전의 분석을 다시 재현한다.

- 소통. stack overflow 등을 통해 교류하기 용이하다.

- 데이터 시각화에 특화.

많은 명령어가 있는데, 같은 기능을 하는 명령어들이 많다. -> 코드가 작성자에 따라 개성 넘친다. 가장 큰 장점이자 단점.(메뉴얼을 만들기가 정말 어렵다;)

단점[편집 | 원본 편집]

데이터크기에 제약이 있다.(데이터를 ram에 저장하기 때문) => SQL 등을 통해 사전처리하거나 패키지로 개선 가능.

가르쳐주는 사람에 따라 방식이 굉장히 다르다. 저마다 취향으로 쓰는 패키지가 있는데, 사용하는 패키지가 달라지면 구성방법이 상당히 달라지기 마련. 독학하는 입장에선 굉장히 당황스럽고 짜증난다.(정리하기 어려워) 그런데, 패키지를 쓰지 않고 기본 함수로만 코딩하는 경우는 극히 드문 상황에서... 비슷한 기능을 하는 패키지들이 상당하다;

주요 사용처[편집 | 원본 편집]

- 기업. 구글, 페이스북, 트위터 등에서 통계, 분석에 사용한다.

할 수 있는 것[편집 | 원본 편집]

다양한 시각화. 각종 그래프, 스타차트, 산포도, 소셜네트워크분석, 지도시각화, 텍스트마이닝, 워드클라우드,

학습조언[편집 | 원본 편집]

파이썬과 달리, 복잡한 데이터를 다루기에, 책만으론 어려웠다. 게다가, 코딩스타일도 사용자에 따라 엄청나게 달라질 수 있기에 영상의 도움을 받는 편이 좋다.

학습매체 개요
스마트미디어인재개발원 10분 내외의 무료강의들로 구성.

기초에서 기본적인 자료구조, 패키지 이용법을 가르치며, 중급에서 dplyr, 고급에서 연관성분석, 교류분석을 가르쳐준다.


설치[편집 | 원본 편집]

http://www.r-project.org

편집기IDE[편집 | 원본 편집]

기본적으로 대화식이지만, 파일>새로운 스크립트 안에서 코드를 짤 수 있다. 코드의 실행은 편집>전부실행

R만으로도 작성은 가능하나, 불편하다. 편의성을 위해 편집기가 필요하다.

Rstudio[편집 | 원본 편집]

기본은 Rstudio 편집기로 편집. 기본적인 편집편의기능은 타 언어나 리눅스와 동일.

우측에 변수나 파일을 볼 수 있어 관리에 용이하다.

스크립트를 작성하기 위해선 프로젝트 단위로 관리하는 게 편하다. File 안에서 만들 수 있다.

가로스크롤 비활성화[편집 | 원본 편집]

코드를 작성하다 길어지면 메모장마냥 우측으로 끝없이 길어지는데, tool>global option>code>soft-wrap resource files 를 선택하면 창 크기에 따라 자동 줄바꿈이 일어난다.

단축키[편집 | 원본 편집]

ctrl+enter는 실행. 해당 한 줄을 콘솔창에서 실행하며 한 줄 내린다. 기본적으로 한 줄을 실행하지만, 줄의 일부를 실행하고 싶을 땐 블록지정 후 하면 된다.

서버[편집 | 원본 편집]

서버 형태로 사용할 수도 있어, 컴퓨터 사양에 구애받지 않고 다룰 수도 있다.

Tinn-R[편집 | 원본 편집]

http://sourceforge.net/projects/tinn-r

문법에 따라 함수, 키워드 등으로 글꼴을 구분해주어 작성, 내용파악에 도움을 준다.