ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • R 연산기능 정리!
    program_language 및 궁금한것/R 빅데이터 2019. 5. 11. 20:02
    # 사칙연산
    
    7%/%3 # 몫구하기 
    7%%3 # 나머지 구하기
    7/3 # /는 몫과 나머지 구함
    
    # 제곱구하기
    2**2
    2^2
      
    # R이 0을 처리하는 방법
    10000
    # 0의 자리를 지수로 바꿔버린다 ex) e+x로 왜? 금융권에서 만들었기 때문에 0의 단위가 길다.
    10000000000000000000000000000000000000000000000000000000000000000000 # 1e+67출력 
    5e3 # 5000 출력
    
    # 변수만들기 
    var1 <- 1
    var2 = 2
    
    # 변수명 규칙
    # 시작이 숫자나 _로 시작이 불가능
    # 변수명 .으로 시작되려면 바로 뒤에 문자가 와야한다.
    var_name.1 <- 7
    x<-10
    y<-20
    # 비교연산자, 결과는 논리형
    # | or
    # || or ( 객체의 첫번쨰 요소만 비교)
    # & and
    # && and ( 객체의 첫번째 요소만 비교 )
    TRUE==!FALSE
    
    # 변수조회
    objects()
    ls()
    
    # 변수초기화
    rm(x) # x제거 remove
    rm(list=ls()) # 모든변수 제거
    
    ################## Data Type #############################
    txt1 <- 'We are the one'
    num1 <- 20000
    datel <- '2013-01-04'
    
    # 데이터 타입 확인방법 두가지!
    typeof(txt1)
    class(txt1)
    
    # Numeric(숫자), character(문자), logical(논리), NA/NULL
    # - NA: Not Avaliable로 결측치(값이 빠져있음)을 의미한다.
    # 값이 있어야 하는데 없는 것 == 결측되었다 라고 한다.
    # - NULL: 객체 없음, 미정의 된 값
    typeof(TRUE)
    typeof(NA)
    # 값이 뭔지 모르는 상태이다. 연산에서 NA사용시 NA출력!
    1+NA 
    
    # NA를 무시해라!
    sum(1,NA,3,na.rm=TRUE)
    
    # NA가 영향을 미치는것은 mean이다.
    b <- 1:3
    mean(b)
    c <- c(1, NA, 3)
    mean(c)
    mean(c,na.rm = TRUE)
    # na의 자리가 어디야? is.na
    c[which(is.na(c))] <-0 # na의 값을 0으로 대입해라.
    mean(c)
    
    # NULL 예제
    # NULL은 연산에 영향을 끼치지 않는다. 
    sum(1,NA,3)
    d<-c(1,NULL,3)
    d
    sum(d)
    mean(d)
    
    # 날짜형으로 만들어 줘야 날짜로 처리가 된다.
    class(as.Date(datel)) # typeof로 조회하면 안된다.
    
    # 날짜의 계산
    date2 <- as.Date('2019-05-01')
    date3 <- as.Date('2019-05-10')
    
    date2-date3
    date3-date2 # 짜라란 연산가능하지롱
    
    ###############################함수################
    # 내장함수 
    round(3.14) # 반올림
    round(3.64,0) # 4출력
    round(3.64,1) # 3.6출력
    
    ceiling(3.14) # 올림
    trunc(3.14) # 소수점 버림
    
    sqrt(9) # 제곱근 
    
    a <- 1:5
    max(a) # 가장큰수
    min(a) # 가장 작은수!
    sum(a) # 다 더해버려라!
    mean(a) # 평균
    
    b <- 3:7
    
    # 데이터를 합치기
    union(a,b) # 중복값은 한번만 출력된다.
    
    # 객체 붙이기
    txt1 <- 'hello'
    txt2 <- 'world'
    # txt1+txt2 같이 문자와 문자 붙이는 것은 R에서 작동하지 않는다.
    paste(txt1,txt2) # 띄어쓰기해주고
    paste0(txt1,txt2) # paste0은 띄어쓰기를 없애준다.
    
    # 비교하기 - 앞의 객체와 뒤 객체의 차집합( x - y)
    setdiff(a,b) # diff가 비교하기 이다. 
    setdiff(b,a)
    
    # 교집합
    intersect(a,b)
    
    
    반응형

    댓글

Designed by Tistory.