R
■ R 소개
- 다양한 OS(운영체제)에서 사용할 수 있음
- 무료 오픈소스 소프트웨어
- 복잡한 통계분석 기법 가능
- S언어 기반의 프로그래밍
- 다양한 형태의 데이터 구조 지원
- 많은 패키지가 수시로 업데이트
- 커뮤니티 활발
■ R 데이터 유형
1) 기본형
- Numeric : 정수, 실수, 복소수, 수학적 연산 및 통계
- Character : 문자, 단어로 구성. ex) "abc"
- Logical : TRUE, FALSE
2) 구조형
- scalar, vector, matrix, array, factor
3) 복합형 : 서로 다른 타입의 데이터를 묶을 수 있음
- list, data.frame, data.table
4) Special Values
- NULL : 변수 값이 초기화되지 않음
- NA : Not Available, 데이터 값 없음(결측치)
- NaN : Not Available Number, 계산 불가능
- INF : Infinite, 무한대
■ R 기초
* 기초 문법만 학습하고, 기출에 나오는 문법들을 추가하자.
- print() : 한 번에 하나만 출력. ex) print(a)
- cat() : 여러 값을 묶어서 출력. ex) cat("a", "b", "c")
- ls() : 변수 목록보기
- rm() : 변수 삭제하기. ex) rm(list=ls()) = 모든 변수 삭제, rm(변수) : 해당 변수 삭제
- c() : 벡터 생성하기. 벡터 원소 중 문자가 하나라도 있으면 문자형 벡터가 됨.
- 1:5 : 수열 생성
- seq(from=0, to=20, by, length) : 수열 생성. by=step을 의미. length=총 개수
ex) seq(1, 10, 2) = 1 3 5 7 9 / seq(1, 10, length=4) = 1 4 7 10
- rep(x, time, each) : x를 몇 번(time) 몇 개씩(each) 반복
■ 벡터 인덱싱
- v[n] : 벡터의 n번째 원소 반환. 1부터 시작.
- v[-n] : 벡터의 n번째 원소를 제외한 나머지 원소 반환.
- v[조건] : 조건을 만족하는 원소 반환
- v[start:end] : start번째 원소부터 end번째 원소까지 반환
■ 벡터의 길이가 동일하지 않은 경우
- 벡터의 원소가 많은 쪽의 벡터와 동일하게 원소의 개수를 맞춘다(경고 메시지와 함께).
- [1 2] + [3 4 5 6 7] = [3+1 4+2 5+1 6+2 7+1]
■ 행렬(Matrix) : 데이터의 형태가 2차원으로 행(row)과 열(column)로 구성
- 행렬 생성
1) matrix(data=NA, nrow=1, ncol=1, byrow=FALSE, dimnames=NULL)
- byrow : 값의 입력 방향. FALSE = ‘열’, TRUE = '행‘. 기본값은 ’열‘.
- dimnames : 각 차원의 이름
2) rbind(vectors or matrices), cbind(vectors or matrices)
■ 행렬 관련 함수
- dim(x), dim(x) <- : 행렬 차원 확인, 부여
- nrow(x), ncol(x) : 행의 수, 열의 수
- dimnames(m), dimnames(m) <- : 각 차원의 이름 확인, 부여
- rownames(m), rownames(m) <- : 각 행의 이름 확인, 부여
- colnames(m), colnames(m) <- : 각 열의 이름 확인, 부여
- t(m) : 전치행렬 반환
- diag(m) : 대각원소 반환
- solve(m) : 역
■ 행렬 인덱싱
- m[nrow,], m[-nrow,] : 특정 행 반환
- m[,ncol], m[,-ncol] : 특정 열 반환
- m[nrow, ncol] : 특정 위치의 원소 반환
■ 배열(Array) : 다차원의 데이터 구조
- 배열 생성 : array(data, dim=(행,열,...))
■ 데이터 프레임(data.frame) : 엑셀의 워크시트와 같은 2차원 구조
- 서로 다른 데이터 타입 담을 수 있음
- 벡터가 모여서 프레임을 구성
- 데이터 프레임 생성 : data.frame(변수명=벡터, ... , stringasFactors = TRUE)
- stringasFactors = TRUE이면 문자열을 factor형으로 저장
■ 리스트(List)
- 서로 다른 데이터 타입 담을 수 있음
- 리스트에 저장된 데이터를 index 또는 key를 사용해 접근
- 리스트 생성 : list(key1=value1, key2=value2, ...)
- a[[1]](첫번째 방)과 a[1](첫번째 원소) 구분하기
'Certificate > ADsP' 카테고리의 다른 글
[ADsP] 3.4 통계분석의 이해 (0) | 2023.02.23 |
---|---|
[ADsP] 3.3 데이터마트(R 심화) (0) | 2023.02.20 |
[ADsP] 3.1 데이터 분석 기법의 이해 (2) | 2023.02.13 |
[ADsP] 2.6 분석 거버넌스 체계 수립 (0) | 2023.02.12 |
[ADsP] 2.5 분석 마스터 플랜 (2) | 2023.02.12 |
댓글