티스토리 뷰

R

R 데이터 타입, 수학 & 논리 연산자

Jaime.Lee 2020. 10. 20. 19:27

기본 데이터 유형(Basic Data Type)

R 프로그래밍은 다음과 같은 다양한 데이터 유형으로 작동합니다.

  • Scalars
  • Vectors (numerical, character, logical)
  • Matrices
  • Data frames
  • Lists

기본 유형

  • numeric: 십진수
    • ex) 4.5
    • integer: 정수, numeric의 한 종류
      • ex) 4
  • boolean: 부울 값, logical 이라고 불림
    • ex) TRUE, FALSE
  • string: 문자열, "" 또는 '' 사이의 텍스트, character라고 불림

class(var) 함수로 변수의 유형을 확인할 수 있습니다.

> x = 28
> class(x)
[1] "numeric"
> x <- 2.4
> class(x)
[1] "numeric"
> y = TRUE
> class(y)
[1] "logical"
> z = "R test"
> class(z)
[1] "character"
> 

변수(variables)

기본적으로 R의 아웃풋에 해당하는 모든 것(숫자, 객체, 통계 결과, 벡터, 데이터셋, 모델 예측 등)을 저장할 수 있습니다. 저장한 이후에는 변수 호출을 통해 해당 변수를 사용할 수 있습니다.

 

변수를 선언하려면 바로 위에서 확인하셨겠지만 공백이 없는 이름이 필요하고 언더스코어("_")를 통해 단어를 연결할 수 있습니다. 값을 추가하려면 <- 또는 =를 사용하시면 됩니다.

 

  • 변수 선언 및 할당
> name_of_variable <- value

 

  • 변수 출력
> x = "print this"
> x
[1] "print this"

 

  • 사칙 연산 및 출력
> x = 10
> y = 2
> x + y
[1] 12
> x - y
[1] 8
> x * y
[1] 20
> x / y
[1] 5
> x ^ y
[1] 100
> x ** y
[1] 100
> x %% y
[1] 0

 

  • 논리 연산 및 출력
> x = 10
> y = 2
> x > y
[1] TRUE
> x < y
[1] FALSE
> x >= y
[1] TRUE
> x <= y
[1] FALSE
> x == y
[1] FALSE
> x != y
[1] TRUE
> z = TRUE
> !z
[1] FALSE
> z & TRUE
[1] TRUE
> z | FALSE
[1] TRUE
> isTRUE(z)
[1] TRUE

 

  • 벡터 선언 및 출력
> characters = c("a", "b", "c")
> characters
[1] "a" "b" "c"

> booleans <- c(TRUE, FALSE, TRUE)
> booleans
[1]  TRUE FALSE  TRUE

 

  • 벡터간 연산 및 출력
> first = c(1, 3, 5)
> second = c(5, 3, 1)
> sum = first + second
> sum
[1] 6 6 6

 

  • 벡터 값 추출
> original = c(1, 2, 3, 4, 5, 6)
> sliced = original[1:5]
> sliced
[1] 1 2 3 4 5

 

  • 범위로 벡터 생성
> vector = c(1:10)
> vector
 [1]  1  2  3  4  5  6  7  8  9 10

 

  • 벡터 논리 연산
> vector = c(1:10)
> vector > 5
 [1] FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE
> vector[vector > 5]
[1]  6  7  8  9 10
> vector[(vector > 4) & (vector < 7)]
[1] 5 6

'R' 카테고리의 다른 글

R Factor  (0) 2020.10.21
R 행렬(matrix): 생성, 출력, 추가, 분할  (0) 2020.10.21
R 다운로드 & 설치(RStudio, Mac)  (0) 2020.10.19
R 프로그래밍 언어란?  (0) 2020.10.15
댓글