1. 데이터 구조의 정의
특징 | 벡터 | 리스트 | 데이터 프레임 |
원소 자료형 | 동질적 | 이질적 | 이질적 |
원소를 위치로 인덱싱 | 가능 | 가능 | 가능 |
인덱싱으로 여러 개 원소로 구성된 하위 데이터 생성 | 가능 | 가능 | 가능 |
원소들에 이름 부여 | 가능 | 가능 | 가능 |
2. 리스트 다루기
- 리스트 원소 선택 : L[[n]], L[["name"]], L$name
3. 행렬 다루기
- 행렬 설정 : dim(vec) <- c(2,3)
- 행과 열 이름 붙이기 : rownames(mtrx) <- c("lowname1", "lowname2", ...)
colnames(mtrx) <- c("colname1", "colname2, ...)
4. 데이터 구조 변환
변환 | 방법 | 변환 | 방법 |
벡터 -> 리스트 | as.list(vec) | 행렬 -> 벡터 | as.vector(mat) |
벡터 -> 행렬 | 1열짜리 행렬 : as.matrix(vec) 또는 cbind(vec) 1행짜리 행렬 : rbind(vec) n x m행렬 : matrix(vec,n,m) |
행렬 -> 리스트 | as.list(mat) |
벡터 -> 데이터 프레임 | 1열짜리 데이터 프레임 : as.data.frame(vec) 1행짜리 데이터 프레임 : as.data.frame(rbind(vec)) |
행렬 -> 데이터 프레임 | as.data.frame(mat) |
리스트 -> 벡터 | unlist(list) | 데이터 프레임 -> 벡터 | 1열짜리 데이터 프레임 : dfm[[1]] or fm[,1] 1행짜리 데이터 프레임 : dfm[1,] |
리스트 -> 행렬 | 1열짜리 행렬 : as.matrix(list) 1행짜리 행렬 : as.matirx(rbind(list) n x m 행렬 matirx(list,n,m) |
데이터 프레임 -> 리스트 |
as.list(dfm) |
리스트 -> 데이터 프레임 |
목록 원소들이 데이터의 열이면 as.data.frame(list) 리스트 원소들이 데이터의 행이면 rbind(obs[[1]], obs[[2]]) |
데이터 프레임 -> 행렬 |
as.matix(dfm) |
5. 집단으로 분할하기
- 벡터 : split(vec, fac) - 벡터 값과 랙터 값의 길이가 같아야 함
- 데이터 프레임 : split(dfm, fac)
6. 함수 적용하기
- 벡터 : 행렬 : apply(mtr, 1, func), apply(mtr, 2, func)
- 리스트 : lapply(lst, func), sapply(list, func)
- 데이터 프레임 : lapply(dfm, func), sapply(dfm, func), apply(dfm, 1 or 2, func)
7. 집단으로 함수 적용하기
- tapply(vec, fac, func)
- by(dfm, fac, func)
8. 병렬 벡터들과 리스트들에 함수 적용하기
- 벡터 : mapply(func, vec1, vec2, vec3 ...)
- 리스트 : mapply(func, lst1, lst2, lst3 ...)
9. 문자열 다루기
문자열 길이 | nchar("문자열") |
벡터의 길이 | length(vec) |
문자열 연결하기 | paste("단어", "문장", scalar) |
하위 문자열 추출하기 | substr("문자열", 시작번호, 끝번호) |
구분자로 문자열 추출하기 | strsplit("문자열", 구분자) |
문자열 대체하기 | sub("대상문자열", "변경문자열", s), gsub("대상문자열", '변경문자열", s) |
10. 날짜 다루기
- 문자열 -> 날짜 : as.Date("2014-12-25")
as.Date("12/25/2014", format="%m/%d/%y")
- 날짜 -> 문자열 : format(Sys.Date(), format = "%m/%d/%Y")
- format 인자 값
R 표현 | 표시 형태 | R 표현 | 표시 형태 |
%b | 축약된 월 이름("Jan") | %B | 전체 월 이름("January") |
%d | 두 자리 숫자로 된 일("31") | %m | 두 자리 숫자로 된 월("12") |
%y | 두 자리 숫자로 된 년("14") | %Y | 네 자리 숫자로 된 년("2014") |