R

[R] 기초 다지기 (기본 연산/combine/paste/collapse)

AKIRA24 2024. 7. 10. 17:49
728x90

 

Do it! 쉽게 배우는 R 데이터 분석 책을 참고하여 공부를 시작하게 된

R언어 기초 문법에 대한 내용 정리

 

알고가면 좋은 단축키

주석 Shift + CTRL + "C" #
할당 연산자 ( = ) ALT + "-" <-
파이프라인 CTRL + SHIFT + "M" %>% 
명령어 실행 CTRL + ENTER Consol에 실행 결과 출력

 

주석은 Python, SQL에서 사용한것 처럼 실행이 되지않는 내용이라 자주 쓰게 되고

 

R Studio에서는 객체에 값을 할당할 때 "="이 "<-"으로도 사용 가능하다. 

 

파이프라인의 경우 'tidyverse'라이브러리를 이용해 사용 가능하고 '%>%'를 기준으로 왼쪽에 작성된 객체, 함수의 실행결과를 오른쪽에 작성된 함수의 매개변수로 작동하게끔 하는데 덕분에 짧고 읽기 쉬운 코드를 작성할 수 있다.

 

명령어 실행은 실행하고자 하는 부분을 드래그한 뒤 단축키를 입력하면 Console에서 실행 결과를 확인할 수 있다.

 

기본 연산

    #input
    # 변수에 직접 숫자 지정
    a <- 1
    b <- 2
    c <- 3
    d <- 4
    a
    b
    c
    d

    #output
    > a <- 1
    > b <- 2
    > c <- 3
    > d <- 4
    > a
    [1] 1
    > b
    [1] 2
    > c
    [1] 3
    > d
    [1] 4

Python에서 사용했던 a = 1 과 같은 방법으로 숫자를 변수에 지정할 수 있었고 그걸로 계산도 가능했다

 

    # 사칙 연산
    a - b
    > a - b
    [1] -1

    b + c
    > b + c
    [1] 5

    d * b
    > d * b
    [1] 8

    c / d
    > c / d
    [1] 0.75

    # 제곱 계산
    b**2
    > b**2
    [1] 4

    b^2
    > b^2
    [1] 4

    b^3
    > b^3
    [1] 8

제곱연산자의 경우 약간 차이가 있었는데 ** 외에도 ^2 와 같은 방법을 통해 제곱계산을 할 수 있었다.

 

Combine / Sequnce함수를 이용하기

    # combine 함수 - 한개의 변수에 여러개의 값을 저장
    var1 <- c(13,22,36,43,58)
    var1
    > var1
    [1] 13 22 36 43 58

    var2 <- c(13:17) # (시작숫자:끝나는숫자)
    var2
    > var2
    [1] 13 14 15 16 17

    #sequnce 함수 - 연속적인 숫자 값을 지정
    var3 <- seq(4,7)
    var3
    > var3
    [1] 4 5 6 7	

    # 뒤에 by = 값 을 사용하여 값만큼 규칙적인 값을 저장
    var4 <- seq(11,19,by=2) #(시작숫자,끝나는숫자, by=숫자 간격 규칙)
    var4
    > var4
    [1] 11 13 15 17 19

    # 객체의 길이가 같은 경우 각자 위치에 맞게 연산
    var1 - var2
    > var1 - var2
    [1]  0  8 21 27 41

    # 객체의 길이가 맞지 않는 경우 객체의 값 있는 위치까지만 연산,
    #경고메세지 출력
    #var3은 4 5 6 7으로 4개의 값만 있음
    var1 - var3
    > var1 - var3
    [1]  9 17 30 36 54
    경고메시지(들): 
    var1 - var3에서: 두 객체의 길이가 서로 배수관계에 있지 않습니다

자주 쓰이게 될 것 같은 함수는 Combine이였다. 숫자 뿐만 아니라 문자열의 경우에도 사용할 수 있었고,

객체에 값을 부여하는 것 뿐만 아니라 함수에서도 사용이 가능 했다.

 

patse, collapse 함수를 이용하기

    # 문자열
    str1 <- 'a'
    str1
    > str1
    [1] "a"

    str2 <- c('a','b','c','d')
    str2
    > str2
    [1] "a" "b" "c" "d"

    str3 <- c('Hello','World','is','good')
    str3
    > str3
    [1] "Hello" "World" "is"    "good"  # 컴마로 구분되어 각 단어로 객체에 저장 됨

    # paste, collapse를 이용해서 문자열 합치기
    paste(str3,collapse = ' ') # (대상객체, collapse = str3의 값 사이에 들어갈 내용 ex)공백 : ' ')
    > paste(str3,collapse = ' ')
    [1] "Hello World is good"

    paste(str3,collapse = '_') # 동일 내용이지만 공백 대신 _를 삽입
    > paste(str3,collapse = '_')
    [1] "Hello_World_is_good"

 

사실 정말 기본적인 내용들이였지만, 앞으로 자주 쓰이게 될 법한 내용들일 것 같아 정리를 해 보았다.

 

'R' 카테고리의 다른 글

[R] 날짜/시간 데이터 다루기 ( as.POSIXct / as.Date)  (0) 2024.07.15