ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • R 기초
    R 2020. 7. 2. 12:21

    R 기초

    1-1 함수와 객체

    함수 사용 방법

    # hello world 출력
    print('Hello World')
    [1] "Hello World"
    # R은 계산기
    9*8*7*6*5*4*3*2*1
    # factorial(9)
    factorial(9)
    # 함수 인자 
    rep(x='밥먹자', times=5)
    # 함수 인자 생략
    rep('밥먹자', 5)
    # 함수 인자 위치 바꾸기
    rep(times=5, x='밥먹자')
    # 함수 인자 생략시 순서 중요
    rep(5, '밥먹자')
    Warning message in eval(expr, envir, enclos):
    "강제형변환에 의해 생성된 NA 입니다"
    Error in rep(5, "밥먹자"): 'times' 인자가 잘못되었습니다
    Traceback:

    R studio 화면

    참고) 함수 help : 함수 위에서 F1

    그래프 함수 plot()

    plot(10,10)

    img

    plot(c(5,7), c(20,30))

    img

    # runif() 랜덤 숫자 리턴
    plot(runif(100), runif(100))

    plot은 우측 하단 plot탭에 표시됨

    객체(변수) 사용

    obj1 <- 1
    obj1
    obj2 = 2
    obj2
    자주쓰는 단축키
    crtl + shift + m
    %>%
    alt + -
      <- 
    str1 <- 'Hello '
    str2 <- 'R'
    # paste() 여러 객체를 합쳐서 보여 줌
    paste(str1,str2)
    bool1 <- TRUE
    bool2 <- FALSE
    paste(bool1, bool2)

     

    우상단 value값 확인

    R의 자료 최소 단위는 벡터

    • R에는 포인터 개념이 없음

    i <- 3 # i는 스칼라가 아니고 벡터
    i1 <- 10
    i2 <- 20
    i1 <- i2
    i2 <- 100
    # i1의 값은 ?

    객체(변수)에 함수 넣기

    • 함수의 리턴 값이 들어감

    excel1 <- read.csv('r-ggagi-data/example_studentlist.csv')
    #excel1

    백터를 다루는 함수 c()

    • c() 안에 벡터로 묶을 데이터 입력
    • 백터는 한가지 데이터 형식만 가짐
    a <- c(1,2,3)
    a
    is.vector(a)
    b <- 1
    is.vector(b)
    s1 <- c('aaa','bbb','ccc')
    s1
    # 모두 문자열로 변경됨
    s2 <- c(111,'aaa')
    s2

    여러값을 넣을땐 c()

    백터의 추가 / 삭제 / 수정

    • R은 index를 1부터 함

    obj <- c(2,3,4)
    obj <- c(1, obj)
    obj
    obj <- c(obj, 5)
    obj
    # 중간에 넣기
    obj <- append(obj,2.5, after = 2)
    obj
    # 삭제
    obj <- obj[-3]
    obj
    # 마지막 데이터 삭제
    obj <- obj[-length(obj)]
    obj
    # 특정 위치값 변경
    obj[2] <- 22
    obj
    # 조건으로 값 변경
    obj <- c(1,2,3,1,2,3,1,5,2,3,1,2,3,1,2,3,5)
    obj
    obj[obj == 5] <- 55
    obj

    백터의 추가/삭제/수정

    Tip

    Alt+Shift+K

    # 만든 모든 객체(변수) 보기
    ls()
    # 자세히 보기
    ls.str()
    a :  num [1:3] 1 2 3
    b :  num 1
    excel1 : 'data.frame':    17 obs. of  8 variables:
     $ name     : Factor w/ 17 levels "강수친","김길동",..: 2 12 17 6 10 7 1 14 13 9 ...
     $ sex      : Factor w/ 2 levels "남자","여자": 1 2 1 1 2 2 2 2 1 1 ...
     $ age      : int  23 22 24 23 20 21 22 23 23 22 ...
     $ grade    : int  3 2 4 3 1 2 1 1 3 2 ...
     $ absence  : Factor w/ 2 levels "무","유": 2 1 1 1 2 1 1 1 1 1 ...
     $ bloodtype: Factor w/ 4 levels "A","AB","B","O": 4 2 3 2 1 4 4 1 3 3 ...
     $ height   : num  165 170 175 182 168 ...
     $ weight   : num  68.2 53 80.1 85.7 49.5 52 45.3 55 64.2 61.3 ...
    obj :  num [1:17] 1 2 3 1 2 3 1 55 2 3 ...
    s1 :  chr [1:3] "aaa" "bbb" "ccc"
    s2 :  chr [1:2] "111" "aaa"
    # 객체 지우기
    rm(a,b)
    ls()
    # 모든 객체 지우기
    rm(list = ls())
    ls()

    변수 clear

    패키지(Package)

    # 패키지 설치
    install.packages('rgl')
    Installing package into 'C:/Users/205/Documents/R/win-library/3.6'
    (as 'lib' is unspecified)
    also installing the dependencies 'miniUI', 'webshot', 'manipulateWidget'
    package 'miniUI' successfully unpacked and MD5 sums checked
    package 'webshot' successfully unpacked and MD5 sums checked
    package 'manipulateWidget' successfully unpacked and MD5 sums checked
    package 'rgl' successfully unpacked and MD5 sums checked
    
    The downloaded binary packages are in
        C:\Users\205\AppData\Local\Temp\RtmpQFLiJf\downloaded_packages
    # 패키지 사용 
    library('rgl')
    # rgl 패키지 함수 사용
    example(plot3d)

    3d로 보여주는 rgl

     

    'R' 카테고리의 다른 글

    기술통계  (0) 2020.07.06
    데이터 개념 예제로 이해하기  (0) 2020.07.06
    데이터 개념 이해하기  (0) 2020.07.02
    R 필수 설치 패키지  (0) 2020.07.02
    Python 가상환경 생성 및 R 주피터 노트북 연결  (0) 2020.07.02
Designed by Tistory.