본문 바로가기
공부/R & Python

6-1. 데이터 탐색-데이터 다루기 (데이터 결합, 분할, 정렬)

by 드인 2020. 2. 15.

6. 데이터 탐색

6-1. 데이터 다루기 (데이터 결합, 분할, 정렬)


1) 데이터 다루기

- 데이터 결합 : merge(data1, data2, by="ID")

data1과 data2는 아래와 같이 식별변수 ID를 기준으로 결합

data1 : 게임장르, 나이, 성별

data2 : 주당게임시간, 음주경험, 흡연경험

 

dat1<-read.csv(file="data1.csv")
dat2<-read.csv(file="data2.csv")

dat12<-merge(dat1, dat2, by="ID")

dat1과 dadt2를 ID를 기준으로 결합 (관측지수는 동일함, 변수들의 정보가 추가됨)

 

- 데이터 결합 : rbind(data3, data4)

dat3<-read.csv(file="data3.csv")
dat123<-rbind(dat12, dat3)
dat123

data3과 data4가 동일한 변수들을 갖고 있을때 두개 데이터를 행(row)으로 결합

 

- 데이터 정렬 : 데이터이름[order(변수1, 변수2), ]

dats1<-dat12[order(dat12$age),]
dats1


dats2<-dat12[order(dat12$gender, dat12$age), ]
dats2

성별(gender)로 정렬한다음 그 다음은 연령별(age)로 정렬

 

- 데이터 추출 - subset(데이터이름, 조건1 & 조건2)

newdat<-subset(dat12, dat12$gender=="F" & dat12$age>15)

newdat

dat12에서 gender=F이고 age>15이상인 데이터를 newdat라는 이름의 데이터로 저장

 

- 데이터에서 일부변수 제거하기 - 데이터이름[!names(데이터) %in% c("변수", "변수2")]

exdat<-dat12[!names(dat12) %in% c("age","gender")]
exdat

dat12에서 age와 gender를 제외하고 exdat라는 이름의 데이터로 저장 (!는 not을 의미)

 

2) 데이터분석 : 데이터 사이언티스트

- 데이터 핸들링 -> 데이터 탐색 -> 통계적 모델링 (통계모형, 기계학습, 인공지능)

(1) 탐색적 데이터분석

 - 기술통계량 (평균, 빈도) : 고객의 연령, 성별, 주거형태, 직업, 거주지

 - 히스토그램, 산점도, 파레토 그래프 : 연령대별, 제품가격대별, 구매수단별, 서비스, RFM

 - 구매주기 - 제품의 교체주기 파악 : 2회이상 구매자들의 재구매시점을 계산, 히스토그램 및 평균으로 분석

where we are!

 

(2) 통계적 분석기법

 - 상관분석 : X, Y 모두 continuous variable)

 - 카이제곱분석 - 범주형 변수간 상관관계 : X, Y 모두 범주형 변수, 유의수준 0.1, 0.05에서 판단

 - 분산분석(ANOVA) : 매장평수별 판매금액, 횟수의 차이, 그룹간 유의한 차이는 0.05, 0.1에서 결정

구매 중요 요인 도출(마케팅)

불량 요인 도출 (제조업)

위험 요인 도출 (금융업)