7. R로 하는 데이터 분석 : 데이터 ID처리에 대해서 (7)
7.1.1 목표
- iris 데이터를 보면 데이터의 관측수는 표시돼 있지만 데이터의 ID는 없습니다.
- 즉, [그림1]과 같이 변수(Variable)로서의 ID값이 없다는 말입니다.
>View(iris)
>head(iris)
[그림1] iris 원래 데이터 : ID값이 없음
- 이번 챕터에서는 변수로서의 ID를 부여해서 분석하는 방법을 알아봅니다.
7.1.2 사용패키지
: writexl
:
7.2 데이터 추출 패키지 : writexl (데이터를 엑셀로 저장)
- 데이터를 엑셀로 저장해서 ID변수를 만들기 - 데이터를 iris1 이라는 데이터로 저장한다.
>install.packages("writexl")
>library(writexl)
>writexl::write_xlsx(iris, path = "d:/iris.xlsx")
저장할 데이터명 : iris / 저장할 곳 : d:/
[그림2] iris1 데이터 : ID값 부여
7.3 ID가 있는 데이터로 다시 분석하기
7.3.1 iris1 데이터 불러오기
>library(readxl)
>iris1 <- read_excel("iris1.xlsx")
>View(iris1)
[그림3] iris1 데이터 : 불러오기
7.3.2 iris 데이터로 k-means 클러스터링 작업 하기
>ibrary(caret)
>set.seed(1712)
>inTrain <- createDataPartition(y = iris$Species, p = 0.7, list =F)
>training <- iris[inTrain,]
>testing <- iris[-inTrain,]
>training
>training.data <- scale(training[-5])
>summary(training.data)
>iris.kmeans <- kmeans(training.data[,-5], centers = 3, iter.max = 10000)
>iris.kmeans$centers
>training$cluster <- as.factor(iris.kmeans$cluster)
>qplot(Petal.Width, Petal.Length, colour = cluster, data = training)
>table(training$Species, training$cluster)
7.4.1 데이터 셑 참조해서 합치기
- [그림4]와 같이 데이터를 참조해서 엑셀시트에 삽입
[그림4] 엑셀에서 vlookup 함수
- merge.data.frame 명령어 사용
: 데이터를 참조해서 두개의 시트를 하나로 만듬
: training 데이터에 iris1에 있는 id값을 삽입해서 하나의 시트로 다시 만들기
>merge.data.frame(training,iris1)
>iris3<-merge.data.frame(training,iris1)
>View(iris3)
[그림5] iris3 : id값이 포함된 training 데이터
: iris3 데이터 저장하기
>library(writexl)
>writexl::write_xlsx(iris3, path = "d:/iris3.xlsx")
댓글
댓글 쓰기