R 설치 및 기초 [ 작성 중 ]
R은 오픈소스 기반의 사용자 라이브러리들로 구성된 통계 전용 언어이다.
1. R 설치
- https://www.r-project.org/ 에서 설치
2. R-Studio 설치
R을 그냥 사용하여도 되지만 코드가 긴 것을 사용하거나 스크립트 형태로 사용하는데 어려움이 있어
R-Studio라는 R전용프로그램을 사용하는 것이 더욱 편하다.
- https://www.rstudio.com/products/rstudio/#Desktop
3. 기초
R의 최소 단위는 벡터라고 한다.
- 벡터는 정수(10), 실수(1.34), 문자('A'), 문자열('Hello') 와 같은 단위를 스칼라 라고하는데 이러한 것들을 여러개 묶은 것을 벡터라고 한다. 다시 말해 스칼라 또한 벡터인데 1개라는 표현을 스칼라로 표현하는 것이다.
이로부터 확장되는 데이터 타입들이 리스트, 테이블, 데이터 프레임 등이 있다. 벡터들의 집합이 어떻게 표현되는지에 따라 여러가지 데이터 타입으로 나뉘어 진다.
R은 다양한 통계, 수학적 수식을 간단하게 표현 가능하다. 물론 컴퓨터 메모리상에서 연산은 기초방법대로 진행되고있지만.
FACTORIAL(10) 과 같이 사용하면 10 * 9 * ... * 1 의 결과가 출력된다. 이 외에도 다양한 함수가 존재한다. 기본적으로 제공되는 함수는 물론, 오픈소스 기반이기때문에 사용자들이 만들어놓은 User Library가 다양하게 존재한다.
install.packages("pryr")
library(pryr)
# [단축키]
# CTRL + ENTER : 스크립트 실행
# CTRL + 1 / 2 : 스크립트와 콘솔창 이동
# ALT + - : <-
abc <- 1
abc <- "Hello"
와 같이 스칼라 값을 넣는 변수에 할당하는 방법도 있이며,
abc <- c(1,2,3,4)
이와 같이 스칼라 값들의 집합을 만들어 ( 집합을 만드는 방법은 다양하게 존재하지만 c() combine 함수를 활용하여 묶어서 넣는 방법이 기초적이다.) 할당 할 수 있다.
seq(1, 10, 2) # from, to, by
rep(1:3, 3)
rep(1:3, times=3)
rep(1:3, times=3, each=2) # 1:3까지 숫자를 3번 반복해서 결과 출력하되 각각의 벡터 값을 2번씩 출력.
sample(1:10, 10, replace=TRUE) # 1:10까지 숫자중 10개를 선택하여 replace = T 중복 허용
sample(1:10, 10, replace=FALSE) # 위와 동일 하지만 중복 불가
set.seed(1) # 샘플을 선택하더라도 seed 값 즉, 뽑는 기준을 변경 할 수 있다. set.seed를 통해.
myVector <- sample(1:10, 5, replace=TRUE)
set.seed(2)
herVector <- sample(1:10, 5, replace=TRUE)
myVector
herVector
setdiff(myVector, herVector) # 3,4 차집합. // 앞 데이터를 기준으로 앞에 꺼가 뒤에 없는 것만 보여주기
setdiff(herVector, myVector)
intersect(myVector, herVector) # 교집합
union(myVector, herVector) #합집합
identical(sampled, eachSampled) # not identical 같으냐?
setequal(sampled, eachSampled) # but two sets has equal unique elements. 엘리멘트만 비교. 동일한 엘리멘트를 가지고 있다.
seq_along(seqAlongVector) # smake seqence 즉, 전체 갯수를 1부터 나열하도록 만드는거.s
'BIGDATA > R' 카테고리의 다른 글
#06. 특강1. [ 경영통계 데이터 요약 및 정리 ] (0) | 2016.07.03 |
---|---|
#05. 데이터 다루기 2 [ 실제 데이터 ] (0) | 2016.06.30 |
#04. 도수분포 [ 연속, 명목 ] (0) | 2016.06.30 |
#03. 데이터 다루기. (0) | 2016.06.27 |
#02. 외부데이터 호출. (0) | 2016.06.26 |