-
데이터 분석을 위한 연장 1 - 변수(Variable)머신러닝 with R 2019. 6. 29. 21:30
[변수란?]
프로그래밍을 시작하면 어떤 언어든 공통적으로 필요한 기초 지식이 있다.
바로 그 기초 중의 기초, 또 그만큼 중요한 수가 있는데 바로 '변수'이다.
변수(Variable)은 간단히 말해서 '변하는 수'라는 의미이다.
이와 상반되는 개념으로 상수가 있는데, 상수는 변하지 않는 수를 의미한다.
변수는 다양한 값을 지니고 있는 하나의 속성으로 데이터 분석의 대상이 된다.
위 사진에서 소득, 성별, 학점은 각 개체에 따라 변하지만, 국적은 대한민국이라는 값으로 동일하다.
따라서 소득, 성별, 학점은 변수라고 할 수 있으며 국적은 상수라고 할 수 있다.
[변수 만들기]
이제 간단한 변수를 만들어보자.
R에서 변수를 선언하고 값을 넣을 때에는 <- 를 사용한다.
a <- 1 a b <- 2 b c <- 3 c d <- 3.5 d
편집기 창에서 a, b, c, d 라는 변수에 각각 1, 2, 3, 3.5를 입력해 보았다.
그러면 콘솔 창에서 다음과 같은 결과를 볼 수 있다. 파란 글씨가 입력된 명령어이고 검은색 글씨는 그 결과 값이다.
즉 a <- 1 이라는 명령을 통해 a라는 변수에 1이라는 값을 집어 넣었으며, 다시 a 라는 명령어를 입력하면 그 결과 값이 출력되는 것이다. 콘솔 창에는 편집창에서 실행 코드 및 결과 값에 대한 정보를 얻을 수 있으며, 또한 콘솔에 직접 코드를 입력해서 실행 시킬 수 있다.
작업 환경 창을 보면 a, b, c, d라는 값에 각각 1, 2, 3, 3.5가 정의되어 있음을 볼 수 있다.
이처럼 작업환경 창에서는 정의한 모든 정보를 확인 가능하다.
또한 이전에 실행한 명령어의 이력을 조회하고 재실행 할 수 있으며, ODBC를 이용한 DB 및 SPARK에 연결 할 수 있다.
[여러 값으로 구성된 변수]
또한 R에서는 여러 값으로 구성된 변수를 만들 수 있다.
바로 c( ) 와 seq( ) 라는 함수 이다.
var1 <- c(1, 2, 5, 7, 8) #숫자 다섯 개로 구성된 var1 생성 var1 var2 <- c(1:5) #1~5까지 연속 값으로 var2 생성 var2 var3 <- seq(1, 5) #1~5까지 연속 값으로 var3 생성 var3 var4 <- seq(1, 10, by = 2) #1~10까지 2 간격 연속 값으로 var4 생성 var4 var5 <- seq(1, 10, by = 3) #1~10까지 3 간격 연속 값으로 var5 생성
c( )는 combine의 c로 데이터나 객체를 하나로 결합한다는 의미이다.
또한 콜론 c(:) 연산자를 통해 연속 값으로 데이터를 생성 할 수 있다.
seq( ) 함수는 c( ) 함수가 하지 못하는 간격을 설정할 수 있으며, 이때 원하는 간격만큼 'by = ' 를 추가해 준다.
var 4에는 1, 3, 5, 7, 9 라는 값이 저장되고, var5에는 1, 4, 7, 10 이라는 값이 저장된 것을 볼 수있다.
[간단한 연산]
그렇다면 이제 만들어진 변수로 간단한 연산을 해 보자.
[문자로된 변수 만들기]
변수에는 문자를 저장할 수도 있으며, c( ) 함수를 이용해 연속 문자 변수도 만들 수 있다.
하지만 문자로된 변수는 연산을 할 수 없다.
str1+ 2 와 같은 코드를 실행해보면 에러가 날 것이다.
str1 <- "a" str2 <- "text" str3 <- "Hello World!" str4 <- c("a", "b", "c") str5 <- c("My", "name", "is", "ybeaning!")
반응형'머신러닝 with R' 카테고리의 다른 글
데이터 분석을 위한 연장 3 - 패키지(packages) (0) 2019.06.30 데이터 분석을 위한 연장 2 - 함수 (function) (0) 2019.06.30 데이터 분석 방법론, CRISP-DM (1) 2019.06.29 R과 RStudio 설치하기 (Windows OS 기반) (0) 2019.06.28 머신러닝(machine learning)과 R (0) 2019.06.28