데이터 분석 보고시, 데이터에 대한 설명이 필요합니다.
Tool에 대한 설명, 해석에 대한 설명도 필요합니다.

  1. 문제설정 <- 우선순위 2
  2. 데이터 
  3. 분석 Tool
  4. 결과
  5. 활용   <- 우선순위 1

mydata_classification.csv

------------------------------


setwd("c:/bigdataApp/Rtest") # 데이터소스 path

install.packages("party") #의사결정나무를 작동시키는 pakage => party
library(party)

result <- read.csv("mydata_classification.csv", header=FALSE)
View(result)

# 만약에 csv header에 이름을 미리 지정했으면 필요없는 루틴
install.packages("reshape")
library(reshape)

result <- rename(result, c(V1="total", V2="price", V3="period", V4="variety", V5="response"))
View(result)
###############################################################

set.seed(1234) #랜덤으로 데이터 나눌때. 랜덤

resultsplit <- sample(2, nrow(result), replace=TRUE, prob=c(0.7, 0.3))
#prob=c(0.7, 0.3) -> 데이터를 random으로 2조각을 내라는 뜻
#전체 데이터 중 70%는 모델만드는데 쓰고, 30%는 테스트하는데 씀.
trainD <- result[resultsplit==1,]  # 70% 모델만들기
testD <- result[resultsplit==2,]   # 30% 테스트

rawD <- response ~ total + price + period+ variety
#   response -> Y값, 나머지(total...)에 대한 관계를 만들어라
trainModel <- ctree(rawD, data=trainD)

table(predict(trainModel), trainD$response)
#R 스퀘어 값과 연관, 모델이 얼마나 트레이닝 데이터를 잘 설명하는 가에 대해..보여줌...
#overspecialization => 너무 상세한 spec, 예측을 조금만 넘어가도 해석 불가
#overgeneralization => 너무 모호한 spec
#high  low  nr
#high    29    2   0
#low      1   36   0
#nr       0    0  35,
# 100/103 => R ratio 97% 정도로... 정확하다고 볼 수 있음.
print(trainModel)

plot(trainModel)
plot(trainModel, type="simple")

testModel <- predict(trainModel, newdata=testD)
table(testModel, testD$response)

Posted by 건희아범
:
BLOG main image
by 건희아범

공지사항

카테고리

분류 전체보기 (35)
01.정보처리기술사로 가는 길 (20)
02.기술사 그 이후~ (5)
21.일상 (6)
91.신앙 (0)

최근에 올라온 글

최근에 달린 댓글

Total :
Today : Yesterday :