오늘은 R의 데이터 유형 6가지를 알아보도록 하겠습니다.
R의 데이터 유형 6가지 < Vector, Factor, Matrix, Array, Data.Frame, List >
1. Vector
< Vector 만들기 >
c, :, seq, sequence, rep
1. c(elements1, elements2, elements3, ...)
- 규칙이 없는 elements
- v1 <- c(10, 21)
- v2 <- c("치킨", "피자", "핫도그")
2. start : end
- 규칙이 있는 elements
- start 부터 end 까지 1씩 증가/감소
- 1:-2.3 , 1 0 -1 -2
3. sequence(from= , to= , by= )
- 규칙이 있는 elements
- from 부터 to 까지 by 의 간격으로
4. rep(vector, times= , each= )
- times : vector를 times 만큼 반복
- each : vector의 값들을 각각 each 만큼 반복
< Vector의 속성 >
length, names
1. length(vector)
- vector의 길이
2. names(vector)
- vector의 이름을 정의
< Vector의 Slicing >
- vector[1]
- vector[1, 2, 3, 4]
- vector[1:4]
- vector[seq()]
< Vector의 연산 >
- v1 <- 1:3
- v2 <- 1:8
- v1 + v2 ( => Vectorization, 벡터화 )
=> v1 : 1, 2, 3, 1, 2, 3, 1, 2
=> v2 : 1, 2, 3, 4, 5, 6, 7, 8
=> Recyclig 규칙 적용됨. v1 이 반복됨
2. Factor
< Factor 만들기 >
factor(vector, lables= , levels= , ordered= )
1. lables
- vector에서의 집단의 이름을 표시
2. levels
- vector 집단의 순서를 표시
3. ordered
- True/False
- 순서형 자료 표시
- True 라고 입력하면, levels에 순서를 표시해줌
- default : False
< Factor의 속성 >
levels, mode
1. levels
- 벡터의 집단 조회
- 집단 이름은 문자형으로 나타나지만 실제로는 순서를 숫자로 저장하고 있음
- 숫자가 문자형보다 메모리를 덜 차지하기 떄문
2. mode
- 벡터의 데이터 유형 조회
3. Matrix
< Matrix 만들기 >
rbind, cbind, matrix
1. rbind(vector1, vector2, ...)
- elements 가로로 추가
- 추가 될 때 Recyclig 규칙 적용
2. cbind(vector1, vector2, ...)
- elements 세로로 추가
- 추가 될 때 Recyclig 규칙 적용
3. matrix(vector, nrow= , ncol= , byrow=TRUE)
- byrow : TRUE - 값을 가로로 채움, FALSE(DEFAULT) - 값을 세로로 채움
< Matrix Slicing >
- drop = FALSE : matrix의 형태 유지되어 slicing
- drop = TRUE (default) : vector형태로 slicing, matrix 형태 유지되지 않음
< 전치행렬 >
- t(matrix)
- 행과 열을 바꿈
4. Array
< array 만들기 >
1. array(vector, dim= )
- dim : 차원
2. ex)
- array(1:4, dim = 10) // 1차원 1, 2, 3, 4. 1. 2. 3. 4. 1. 2
- array(1:9, dim = c(3, 3)) // 2차원 1 4 7 값이 세로로 채워짐
2 5 8
3 6 9
- array(1:9, dim = c(2, 3, 3)) // 3차원, 벡터화 됨
< array 속성 >
- dim(array) : 차원을 구할 수 있음
5. Data.Frame
- 행과 열로 구성되어 있으며, 2차원 구조임
- 여러 개의 데이터 유형을 가짐
- 단, 하나의 열에는 하나의 데이터 유형만 가짐
- R에서의 기본적인 데이터 유형
- Recyclig Rule 이 작동하지 않음
< data.Frame 만들기 >
- data.Frame(vector, matrix)
6. List
- 가장 유연한 형태의 데이터
- element로 모든 데이터 유형을 가질 수 있음
- vector, factor, matrix, array, data.frame 은 데이터유형이 달라도 element 사이즈는 다 같음
- list는 element 사이즈가 다 다를수 있음
-> vector(1) - factor(1) - data.frame(3,4)
- result[1] -> 결과값을 vector(1) 이 있는 list 로 반환
- result[[1]] -> 결과값을 vector(1)로 반환
< List 만들기 >
1. list(vector, factor, matrix, array, data.frame, list)
- result <- list(hobby, gender.factor, survey) // hobby : Vector, gender.factor : Factor, survey : Data.Frame
2. 결과값
- result[1] -> List로 반환
- result[[1]] -> Vector로 반환
틀린내용이 있거나, 궁금한점이 있으시면 댓글로 알려주세요 : )
'R' 카테고리의 다른 글
[R프로그래밍] R의 Recycling Rule(재활용 규칙), Vectorization(벡터화)에 대해 알아보자 (0) | 2018.11.13 |
---|