1. 변수
1) 개념
(1) 변수(Variable) : 데이터 분석의 대상, 다양한 값을 지니고 있는 하나의 속성
(2) 상수(Constant) : 고정된 값, 분석의 대상이 될 수 없음
2) 변수 만들기
(1)'<-' '=' 이용해서 변수 만들기
(2) x <- c(1, 2, 3) 이용해서 변수(벡터) 한꺼번에 저장하기
(3) 벡터이름[몇번째] : 백터의 몇번째 원소
3) 변수 타입
(1) 연속 변수 (Numeric 타입, 양적 변수, Quantitative Variable) vs 범주 변수 (Factor 타입, 명목 변수, Nominal Variable)
(2) 연속 변수의 값으로 할 수 있는 연산 : 값이 같은지 다른지 / 순서와 크기 비교 / 사칙 연산
2. 데이터 프레임
1) 데이터 구조
(1) 벡터 (1차원, 한 가지 변수 타입으로 구성)
(2) 데이터 프레임 (2차원, 다양한 변수 타입으로 구성)
(3) 매트릭스 (2차원, 한 가지 변수 타입으로 구성)
(4) 어레이 (다차원, 2차원 이상의 매트릭스)
(5) 리스트 : 다차원, 서로 다른 데이터 구조 포함
2) 데이터 프레임(Data Frame) : 행과 열로 구성된 표.
(1) 열은 컬럼(Column) 또는 변수 (Variable), 행은 로(Row) 또는 케이스(Case)
(2) 데이터 프레임 만들기 : data.frame() 함수 이용
3. 패키지
1) 패키지 설치 > 로드(스크립트 시작할 때 마다) > 함수 사용
2) 패키지 설치 방법 : install.packages("패키지이름")
3) 패키지 로드 방법 : library(패키지이름)
4. 외부 데이터 불러오기
1) 엑셀 library(readxl) ; read_excel()
2) csv 파일 읽어오기 read.csv() -> 파일로 저장하기 writer.csv()
3) rda 파일 load() -> 파일로 저장하기 save(데이터프레임명, file ="데이터프레임명.rda")
5. 기초 함수
1) mean(), max(), min() : 평균, 최댓값, 최솟값
2) sqrt(), abs() : 제곱근, 절대값
3) ?함수이름 : 설명(도움말)
4) ls() : 변수 목록 확인
5) rm() : 변수 삭제
6) seq(시작값, 최대값, 간격) : 간격이 일정한 리스트 만들기
7) rename(데이터 프레임명, 새 변수명 = 기존 변수명) : 변수명 바꾸기
6. 데이터 파악하기
1) head() 데이터 미리보기 출력
2) tail() 데이터 마지막부분 출력
3) View() 뷰어 창에서 데이터 보기
4) dim() 데이터가 몇 행, 몇 열로 이루어져 있는지 확인
(1) nrow(), ncol() : 데이터의 행의 개수, 열의 개수
5) str() 데이터 속성 출력 *파이썬 string(문자열)과 혼동 주의
(1) obs : 관측치 (행의 수)
(2) variables : 변수 (열의 수)
(3) 데이터 유형 : num(수치형), int(정수형), chr(문자형) ...
6) summary() 요약 기초통계량 출력
(1) Min, 1st qu, median, mean, 3rd qu, max
(2) Na = 결측치
7) which(데이터프레임$변수명 == 값) : 값이 맞는 위치 행 출력
(1) which.max(), which.min() : 값 최대인 위치, 값 최소인 위치
7. 데이터 요약하기
1) hist() : 히스토그램
2) plot(x축 변수, y축 변수) : 산점도
3) table(변수) : 변수에 대한 빈도 분포표 작성
4) tapply(살펴볼 변수, 데이터 구분 변수, 함수) : 변수 두개, 함수를 조건으로 해서 비교
(ex1) tapply(apple$numRatingTotal, apple$type, mean) : 타입 free와 paid에서 ratingtotal의 평균
(ex2) tapply(apple$numRatingTotal, apple$type, mean, na.rm = True) < 결측치 제외
5) 순서대로 정렬하기
(1) 오름차순 : arrange()
(2) 내림차순 : arrange(desc())
6) 집단 별로 요약하기
(1) summarise()
(2) group_by()
8. 변수 변형하기
1) 데이터프레임$변수이름 = c( , , , ) : 데이터 프레임에 변수를 추가해 우변의 값을 저장
2) subset (데이터프레임, 서브셋 조건) : 원하는 부분 집합 분리해 새로운 데이터 프레임 만들기
3) mutate() : 여러 파생변수를 한 번에 추가
(1) mutate()에 ifelse()를 적용하면 조건에 따라 분류 가능
4) 데이터 전처리 (dplyr 패키지)
(1) 데이터 추출하기 : filter() 초과, 미만, 이상, 이하 조건 등도 걸 수 있음
(2) 필요한 변수만 추출하기 : select()
5) 데이터 합치기
(1) 가로로 합치기 left_join()
(2) 세로로 합치기 bind_rows()
6) 결측치 정제하기 (NA)
(1) fillter()를 사용해 제외하거나 평균으로 대체(결측치 대체법(Imputation))
* mean(데이터프레임$변수명, na.rm=TRUE) : 결측치 제외 옵션 설정 (결측치 포함되면 계산 안 됨)
7) 이상치 정제하기 (정상 범주에서 크게 벗어난 값)
(1) 제1사분위수 이하와 제3사분위수 이상(사분위 범위 밖)
(2) 산점도 확인 후 극단값 분류 > 산점도 재확인해 잘 정제되었는지 보기
'데이터 어쩌구 > 통계 ・ 수학' 카테고리의 다른 글
[실습] (4-2) 다중 회귀 with R (0) | 2020.12.23 |
---|---|
[실습] (4-1) 단순 회귀 with R (0) | 2020.12.23 |
[이론] (3) 데이터 마이닝 (0) | 2020.12.23 |
[이론] (2) 통계 이론 기초 (0) | 2020.12.23 |
[이론] 의사결정나무 (0) | 2020.11.24 |