R은 데이터분석을 위해서 태어난 언어이다보니 다양한 통계 함수들이 별도의 라이브러리를 호출하지 않아도 기본적으로 내장이 되어 있다. 통계 함수가 잘 돌아가는지 쉽게 이해하기 위해서, 아이리스같은 분석용 데이터셋을 사용하지 않고 별도의 데이터셋을 생성하여 진행해보고자 한다. 실험 데이터 > korean sum(korean) [1] 1530 모든 벡터를 더한다. 평균(mean) > mean(korean) [1] 153 모든 벡터를 더한 수 벡터 수로 나눈 값이다. 중앙값, 중위수(median) > median(korean) [1] 67.5 중앙값과 평균의 차이를 설명하기 위해서 1000이라는 값을 넣어봤는데 중앙값은 평균이 아니라 값을 정렬했을 때 중앙에 위치하는 값이 어딘지를 뜻한다. > sort(kore..
R의 버전을 업데이트하기 위해서 사이트에서 R을 다운로드하여 인스톨을 하는 등의 작업을 할 필요 없이 R 명령어를 몇개 입력하여 최신 버전으로 Install 할 수 있다. Step 1. install.packages("installr")> install.packages("installr") WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding: https://cran.rstudio.com/bin/windows/Rtools/ Installing package into ‘C:/U..
R에는 다양한 포맷의 파일들을 매우 쉽게 가져오는 기능을 제공하고 있다. 파일의 입출력 실습은 붓꽃(IRIS) 데이터를 기반으로 진행해보도록 한다. 아이리스 데이터1,5.1,3.5,1.4,0.2,Iris-setosa 2,4.9,3,1.4,0.2,Iris-setosa 3,4.7,3.2,1.3,0.2,Iris-setosa 4,4.6,3.1,1.5,0.2,Iris-setosa 5,5,3.6,1.4,0.2,Iris-setosa 6,5.4,3.9,1.7,0.4,Iris-setosa 7,4.6,3.4,1.4,0.3,Iris-setosa 8,5,3.4,1.5,0.2,Iris-setosa 9,4.4,2.9,1.4,0.2,Iris-setosa 10,4.9,3.1,1.5,0.1,Iris-setosa 11,5.4,3.7,1..
IRIS 데이터 인공지능을 하는 사람이면 가장 자주 보는 범용적인 데이터 셋의 2개가 있는데 하나는 손글씨 이미지 집합들인 MNIST이고, 분류 문제를 하는 간단하고 쉬운 데이터 집합으로 IRIS가 존재한다. IRIS하면 아무래도 드라마를 생각하거나 인간의 홍채를 생각할 수 있는데 인공지능에서 사용하는 이 데이터셋은 특정 꽃을 뜻한다. 이 꽃이 아이리스(한글명 붓꽃)이다 IRIS 데이터는 데이터프레임으로 구성되어 있으며 매우 심플하고, 사이즈가 작기 때문에 알고리즘을 이해하기가 상당히 쉽다. 다만 데이터가 작기 때문에 딥러닝과 같이 데이터 많을수록 유리한 알고리즘에서는 검증하기가 애매한 면이 있긴 하다. IRIS 데이터셋 구조 R에서는 IRIS 데이터가 내장이 되어 있어서 별도로 호출을 할 필요가 없다...
매트릭스와의 차이점 데이터 프레임에 배우기에 앞서 같은 2차원 데이터 주고인 매트릭스와의 차이점을 다시 한번 상기해보도록 하겠다. 매트릭스동일한 데이터 구조만 허용 데이터 프레임다양한 데이터 구조의 허용 데이터 프레임은 쉽게 엑셀을 머리속에서 떠올리면 된다. 엑셀에서 우리가 열에 저마다 다른 타입의 데이터를 넣을 수 있다. 번호이름 키 몸무게 1 홍길동 180 70 2 고길동 170 70 3 둘리 150 60 4 또치 150 50 위와 같은 숫자, 문자형 등이 섞여 있는 2차원 데이터 구조가 데이터 프레임이며, 매트릭스는 숫자 혹은 문자형 등의 한가지 타입으로만 통일되어 있는 차이가 있다. 데이터 프레임 생성 위의 테이블 예제를 토대로 데이터 프레임을 생성해보도록 하자 > numbers numbers[1..
2차원 데이터 앞서, 벡터(Vector)에 관련된 포스팅을 길게 썼는데 벡터는 1차원 데이터 구조이다. 벡터를 사용하는 경우도 많이 존재하지만, 사실상 벡터보다는 2차원 데이터를 더 많이 사용하게 된다. 우리가 흔히 사용하는 엑셀(Excel)만 하더라도 행만 사용하는 경우는 단순히 계산하기 위해서 데이터를 넣는 정도를 제외하면 없다고 봐도 무방할 정도이다. 이번편은 2차원 데이터의 가장 기본적인 매트릭스(Matrix) 명령어를 사용해보고, 다음 포스팅에는 본격적으로 가장 많이 사용하게 될 데이터 프레임(Data.Frame)에 대해서 포스팅 하고자 한다. Matrix와 Data.Frame의 차이 우선 본격적으로 매트릭스에 대한 설명에 앞서 매트릭스와 데이터프레임에 대한 차이를 설명한다면, Matrix를 데..
인트로 이전 시간에는 벡터(Vector)의 심화 사용 방법에 대해서 알아봤습니다. 오늘은 R이 왜 데이터 분석에 특화된 언어인지 보여줄 수 있는 벡터의 연산에 대해서 보여드리도록 하겠습니다. R와 파이썬은 바로 이 벡터라는 부분이 자바나 C, C++과 다르게 매우 쉽게 핸들링이 가능하기 때문에 머신러닝이나 데이터 분석 등에 매우 유용하게 쓰입니다. 물론 데이터를 최종적으로 이쁘게 출력해주는 비주얼 적인면도 있지만, 제일 좋은건 강력한 기능들을 쉽게 다루는 것이겠지요. 벡터 연산 R은 일반적인 언어와 다르게 벡터와 같은 데이터를 매우 쉽고 강력하게 다룰 수 있는 방법을 제공합니다. 아래는 쉽게 벡터들을 연산하는 방법들입니다. > a b d d ## [1] 10 11 12 13 14 15 16 17 18 1..
인트로 프로그램에 대한 기본 지식이 없는 분들도 이해할 수 있는 R언어 강의를 표방하며, 첫번째 강의 주제를 데이터 기본 구조로 잡아봤었습니다. 그러나 사실 변수가 무엇인지 상수가 무엇인지 정확히 개념을 모르는 분들은 이 부분부터 막힐 수 있다고 생각이 들어서 오늘은 좀 더 기본적인 변수에 대해서 알아보도록 하겠습니다. 변수의 사전적 의미 변수에서 사용되는 한자 변은 "변하다 변(變)" 입니다.즉, 값이 계속 바뀐다는 것이죠. 쉽게 생각하면, 어떤 값이 계속 바뀔 수 있다면 변수로 지정을 하면 됩니다. 어떤 사람의 키라든지, 성적, 월급 이 세상의 거의 대부분의 값은 계속 변하기 때문에 사실 변수가 아닌 것을 찾기가 힘이 들지 모르겠네요. 변수의 반대말은 상수인데, 파이(3.14), 광복절(8.15) 이..
그냥 인트로 이 강의는 R언어를 처음 접해보거나, 아직 R에 대해서 익숙치 않는 사람들을 위한 강의입니다. 프로그래밍에 숙달하지 않는 분들을 타겟으로 포스팅을 할 예정이라, 긴 설명이 들어갈 수 있으니 프로그래밍이 어느정도 숙달 되신 분들은 주저리 주저리 단 긴말들은 읽지 마시고, 빠르게 넘어가주세요 :) 강의 주제로 R을 잡은 이유는, 데이터 분석을 하는 사람이 R을 할 줄 모르면 솔직히 이건 아니지라는 생각도 들었고, 주변 비개발자 분들중에서 파이선이나 자바는 어렵더라도 R은 어느정도 이해하는 모습을 보고, 그래도 R이 타 언어보다 편하구나라는 것을 느껴서 데이터 분석의 강의를 R로 정했습니다. 현재, 텐서플로우, 블록체인도 포스팅하고 있으나, R도 매주 최소 하나씩은 작성해서 병행해보도록 하겠습니다..
1. 함수의 도움말 보기 R studio까지 설치했다고 한다면 (http://needjarvis.tistory.com/44 포스팅 참조) 이제 슬슬 R이 어떤 기능들이 있는지 확인해봐야 한다. R은 통계 및 데이터분석에 특화된 언어이기 때문에 이런 기능들을 매우 쉽게 제공하고 있다. > help(함수명) 위와 같이 명령을 하게 되면, 함수에 관련된 help 값을 가져올 수 있다. 시각화를 위한 plot 함수를 help 명령어에 argument로 실행하면 studio에서 우측 하단의 붉은색 네모영역에 표시가 된다. help에서 많은 부분을 알려주기 때문에 유용하게 쓰이지만, 인자값(Arguments)만 알고 싶은 경우가 있다. 위 help에 표시된 Usage 밑에 나온 "plot(x, y, ...)" 이 ..
데이터를 분석하는 사람이나, 혹은 데이터를 다루는 현업이라면, R을 현재 다루고 있거나 다루는 것에 고민을 할것이다. 현재, R이라는 언어겸 플랫폼은 데이터 분석의 상징적인 언어가 되어버렸다. 그만큼 빠르고, 쉽게 분석이 가능하기 때문이다. 사실, 그동안 자바로 프로그램을 짜면서 데이터를 분석했었는데 (이게 사실 더 많은 데이터를 핸들링할 수 있는 장점이 있다) 데이터의 일부를 핸들링 하거나 검증등을 할 때는 R툴은 필수 아닌 필수로 보인다. R을 사용할려면 당연히 설치를 해야 한다. R은 오픈소스 이기 때문에 누구나 설치할 수 있고, 사용할 수 있다. http://cran.r-project.org 사이트로 접속한 후 아래와 같은 Step대로 설치한다. 참고로, 설치는 내 컴퓨터는 현재 윈도우 7 64b..