본문으로 건너뛰기

R 기초

기본문법

연산자

대입 연산자

  • 변수에 값을 할당하기 위해 사용하는 연산자
  • 변수에 값이 정상적으로 할당되었다면, 환경 창에 변수와 값 혹은 데이터의 개요가 등록됨

비교 연산자

  • 할당된 값과 변수를 비교하거나 임의의 숫자, 문자 혹은 논리값을 비교할 수 있다.
  • NA는 비교할 값이 존재하지 않으므로 어떤 것과 비교 하더라도 NA를 반환한다.

산술 연산자

  • 두 숫자형 타입의 계산을 위한 연산자로서 다양한 연산이 가능

기타 연산자

  • 논리값을 계산하기 위한 연산자로는 부정 연산자, AND 연산자, OR 연산자가 있다.

R 데이터 구조 ⭐️

벡터

  • 타입이 같은 여러 데이터를 하나의 행으로 저장하는 1차원 데이터 구조다.
  • ‘연결하다’라는 의미의 ‘concatenate’ 의 c를 써서 데이터를 묶을 수 있다.
  • 벡터를 생성할 때 c 안에 콤마를 구분자로 써서 성분을 직접 입력할 수 있지만 콜론(:)을 활용하여 시작값과 끝값을 지정해 벡터를 생성할 수도 있다.

행렬

  • 2차원 구조를 가진 벡터다. 벡터의 성질을 가지고 있으므로 행렬에 저장된 모든 데이터는 같은 타입이어야 한다.
  • 그렇지 못할 경우 자동으로 타입 변환을 수행한다.
  • matrix를 사용하여 행렬을 만들 경우
    • nrow를 사용하여 행의 수를 결정하거나,
    • ncol을 사용하여 열의 수를 결정할 수 있다.
  • matrix를 사용하여 행렬을 만들 경우 행렬의 값들이 열로 저장되는 것을 볼 수 있다. 하지만 byrow 옵션에 T(TRUE)를 지정하면 값들이 열이 아닌 행으로 저장된다.
  • 행렬을 만드는 또 다른 방법은 벡터에 차원을 주는 방법이다.
  • dim 함수를 사용하면 행의 개수와 열의 개수를 지정하여 행렬로 변활할 수 있다.
  • 또한 dim 함수는 벡터를 행렬로 변환할 뿐만 아니라 주어진 행렬이 몇 개의 행과 몇개의 열로 구성되어 있는지 형렬의 크기를 나타내기도 한다.

배열

  • 3차원 이상의 구조를 갖는 벡터
  • 배열 또한 벡터의 성질을 가지고 있으므로 하나의 배열에 포함된 데이터는 모두 같은 타입이어야 한다.
  • array를 사용하여 배열을 만들 수 있으나 몇 차원의 구조를 갖는지 dim 옵션에서 명시해야 함
  • 그렇지 않으면 1차원 벡터가 생성
  • 행렬과 마찬가지로 dim 함수를 사용해서 벡터에 차원을 지정해 만들 수 있다.

리스트

  • 데이터 타입, 데이터 구조에 상관없이 사용자가 원하는 모든 것을 저장할 수 있는 자료구조
  • 즉, 리스트는 성분 간에 이질적인 특징을 가지고 있다.

데이터프레임

  • 데이터 분석을 위한 2차원 구조를 갖는 관계형 데이터 구조로서 R에서 가장 많이 활용되는 데이터 구조
  • 행렬과 같은 모양을 갖지만 여러 개의 벡터로 구성되어 있기 때문에 각 열은 서로 다른 데이터를 가질 수 있다.

R 내장 함수

기본 함수

통계 함수 ⭐️


R 데이터 핸들링

데이터 이름 변경

  • 행렬, 배열, 데이터프레임과 같이 2차원 이상의 데이터 구조는 colnames와 rownames 함수를 사용하여 행과 열의 이름을 알 수 있으며, 이름을 지정할 수 있다.

데이터 추출

  • R은 여러 데이터 구조에 모두 인덱싱을 지원하기 때문에 대괄호 기호([ ])를 사용하여 원하는 위치의 데이터를 쉽게 얻을 수 있으며 행과 열의 이름으로도 데이터를 얻을 수 있다.
  • 데이터프로엠에서는 $ 기호를 사용하여 원하는 열의 데이터를 구할 수 있으며, $와 [ ]를 혼용할 수 있다.

데이터 결합

  • 데이터를 행으로 결합하는 rbind와 열로 결합하는 cbind 가 대표적이다.
  • 행렬과 행렬, 데이터프레임과 데이터프레임의 경우 행의 수 혹은 열의 수가 같은 결합이 가능하다.
  • 하지만 벡터와 벡터의 결합에서는 재사용 규칙으로 인하여 부족한 데이터를 앞에서부터 다시 재활용하여 사용하며 오류와 함께 결과를 반환한다.

제어문

반복문

  • 특정 부분의 코드가 반복적으로 수행되도록 한다.
  • for 반복문과 while 반복문의 두가지 종류가 있다.

조건문

  • 참과 거짓에 따라 특정 코드가 수행될지 혹은 수행되지 않을지를 결정

사용자 정의 함수

  • 자주 사용되는 구문을 필요할 때마다 작성하지 않고 하나의 함수로 명명하여 저장하였다가 필요한 경우 함수를 호출해서 대신할 수 있다.

주석

  • 주석은 실행되지 않는 문장으로, #을 사용해 표시

통계분석에 자주 사용되는 R 함수

숫자 연산

문자 연산

벡터 연산

행렬 연산

데이터 탐색

데이터 전처리 ⭐️

정규분포(기본값은 표준 정규 분포로 mean = 0, sd = 1이다.)

표본추출

날짜

산점도

파일 읽기 쓰기

기타