R 데이터 형태 = 데이터 타입(자료형)
- NA : Not Available → 사용 불가능. 데이터에 값이 존재하지 않음
- NULL은 값이 정의되지 않아 아예 없는 것. NA는 정의되지 않은 값
> A_score <- c(90, 80, 43, 50, NA) > A_score [1] 90 80 43 50 NA > B_score <- c(90,50,98,59,NULL) > B_score [1] 90 50 98 59
- -Inf 및 Inf : 음과 양의 무한대
- NaN : Not a Number → 수의 연산이 불가능한 경우(0/0, Inf/Inf 등)
- True or False → T, F로도 표현 가능
> x <- c(TRUE, FALSE) > y <- c(T,F) > x [1] TRUE FALSE > y [1] TRUE FALSE > z Error: object 'z' not found > z <- true Error: object 'true' not found > z <- TRUE > Z Error: object 'Z' not found > z [1] TRUE
- 요인(factor) : 명목형, 범주형을 위한 일차원의 벡터 타입
- 범주형 데이터 : 데이터가 사전에 정해진 특정 유형으로만 분류되는 것
sex 변수를 출력해보면 값은 m이고 이 변수가 가질수 있는 수준은 m, f 중에 하나이다. 요인들이 가질 수 있는 값들을 수준(Level)이라고 한다. 만약 이 범주안에 없는 값(첫번째 인자)을 넣어주면 NA라고 뜬다. 요인은 명목형과 순서형으로 구분되는데, 명목형은 값들 간에 순서비교가 불가능하고, 순서형은 가능(ordered=TRUE)하다. 기본적으로 명목형이다.
> sex <- factor(c("m", "f", "f","m","f")); sex [1] m f f m f Levels: f m > levels(sex) [1] "f" "m" > nlevels(sex) [1] 2
- factor(값, levels, ordered=T 또는 F) 로 호출하면 요인을 반환한다. levels 인자를 생략하면 값으로부터 자동으로 레벨의 목록을 파악한다.
- nlevels(요인변수) : 범주의 수를 반환한다.
- levels(요인변수) : 범주목록을 반환한다.
- 문자형 : 작은 따옴표, 큰따옴표 둘다 가능
- 숫자형 : 정수integer, 실수numeric, 복소수complex
- 특정 데이터 타입 확인 : is.*
# 객체 타입은 double 이지만 클래스 및 storage mode는 numeric이므로 같은 표현으로 받아들인다.
- storage mode : 물리적인 자료형으로 객체가 메모리에 어떻게 저장되는 지를 가르킨다.
e.g. numeric, character, list, function
> x <- c(1,2,3,4,5) > typeof(x) [1] "double" > is.integer(x) [1] FALSE > is.character(x) [1] FALSE > is.double(x) [1] TRUE > is.numeric(x) [1] TRUE
데이터 타입의 명시적 변환
- as.factor(객체): 요인으로 변환
- as.numeric(객체) : 숫자를 저장한 벡터로 변환
- as.character(객체) : 문자열을 저장한 벡터로 변환
- as.matrix(객체) : 행렬로 변환
- as.array(객체) : 배열로 변환
- as.data.frame(객체) : 데이터프레임으로 변환
'Data Analysis > R' 카테고리의 다른 글
[R] 자주 쓰는 단축키 모음 (0) | 2021.06.10 |
---|---|
[R] 프로젝트 관리 (0) | 2021.06.10 |
[R] 자주 사용하는 패캐지와 데이터 경로 함수 (0) | 2021.06.09 |
[R] 데이터 구조 (0) | 2021.06.08 |
[R] 파일 불러오기 (0) | 2021.06.08 |