안녕하세요! 우주신입니다.
오늘은 R 데이터 구조에 대해 배워보겠습니다.
정말 중요한 부분입니다. 지금 잘 짚고 넘어가지 않는다면, 나중에 머리털 다 빠집니다.
이론적으로 한번 보시고, 꼭 직접 해보시길 부탁드립니다.
R 데이터 구조는 1. 벡터 2. 요인 3. 행렬 4. 배열 5. 데이터프레임 6. 리스트로 나뉩니다.
찬찬히 하나씩 보겠습니다.
1. 백터 (Vector)
앞 시간에서 잠시 언급했지만 벡터는 동일한 유형의 데이터로 구성되어 있는 1차원 데이터 구조입니다.
숫자형은 숫자형끼리, 문자형은 문자형끼리, 논리형은 논리형끼리.
2. 요인 (Factor)
요인형은 범주형의 데이터 입니다.
( 1, 2, 3은 숫자이지만, 첫번째, 두번째, 세번째는 범주형이다 )
범주형으로 만들기 위해선 먼저, 범주 카테고리를 문자로 입력합니다.
위에서는 A, B, C로 구성된 벡터를 만들었습니다.
그 후, factor() 함수를 통해 범주형으로 바꿔줍니다.
F2 출력 결과를 보면 Levels: A B C를 확인할 수 있는데
이는 범주가 A, B, C 총 3개로 이루어져있다는 뜻 입니다.
3. 행렬 (Matrix)
행렬은 익숙하죠?
동일한 유형의 2차원 데이터 구조입니다.
matrix() 함수를 이용해서 만드는데,
위 첫번째 코드를 보면 matrix(1:12, nrow=3)는
"1부터 12까지의 숫자를 행(row)의 수가 3개인 행렬로 만들어라"
로 해석하면 됩니다.
두번째 코드를 보면 byrow = TRUE가 추가되었는데, 이는 행(row)기준으로 숫자를 나열해라 라는 뜻입니다.
첫번째 행렬과 비교해보시기 바랍니다.
4. 배열 (Array)
쉽게 말해, 2차원 데이터 구조인 행렬의 조건에 2차원 이상 데이터 구조로 업그레이드 된 데이터 구조입니다.
array() 함수를 이용.
array(1:12, c(2, 3, 2))는
"1부터 12 숫자를 '2x3'행렬로 2층으로 만들어라"
로 해석하면 됩니다.
4. 데이터프레임 (DataFrame)
아주 강력한 데이터 구조입니다.
앞선 데이터 구조들과는 달리 데이터 유형에 상관없이 2차원 형태의 데이터 구조를 생성합니다.
위 코드를 보면 숫자형 d1과 문자형 d2를
data.frame() 함수를 통해 데이터프레임을 생성했습니다.
5. 리스트 (List)
리스트는 끝판왕 입니다.
백터, 행렬, 배열, 데이터프레임과 같은 다른 데이터 구조를 모두 묶을 수 있습니다.
앞선 모든 데이터를 list() 함수를 통해 L1을 생성 후, 출력한 결과 입니다.
TIP> 데이터 구조가 궁금할 땐
is.vector()
is.matrix()
is.array()
is.data.frame()
is.list()
함수들을 사용.
앞선 D3는 데이터프레임이므로 is.matrix(D3)는 FALSE 값이 나온다.
끝.
다음 시간에는 벡터(Vector)에 대해 더 자세히 배워보겠습니다.
수고하셨습니다.
'R' 카테고리의 다른 글
[R] 행렬(Matrix) 기본함수 및 인덱싱 (0) | 2017.02.01 |
---|---|
[R] 벡터(Vector) 기본함수 및 인덱싱 (0) | 2017.01.27 |
[R] 객체 만들기 (1) | 2017.01.25 |
[R] 작업폴더 경로 설정하기 (1) | 2017.01.25 |
[R] R Studio 화면 구성 (0) | 2017.01.25 |
댓글