정량적 데이터 = 연속형 데이터
faithful : 미국 옐로스톤 국립공원의 간헐천 분석자료
eruptions : 분출 기간, wating : 분출 간격
> head(faithful)
eruptions waiting
1 3.600 79
2 1.800 54
3 3.333 74
4 2.283 62
5 4.533 85
6 2.883 55
분출 간격 분류해보기
#분출 기간 값만 빼내오기
> duration <- faithful$eruptions
> range(duration)
[1] 1.6 5.1
#분출 기간을 분류할 기준, breaks (1.5~5.5까지 0.5간격)
> breaks <- seq(1.5,5.5,by=0.5)
> breaks
[1] 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
#분출 기간을 기준에 따라 나누기(분류하기)
> duration.cut <- cut(duration, breaks, right=FALSE)
#기준별 데이터 갯수 파악하기
> table(duration.cut)
duration.cut
[1.5,2) [2,2.5) [2.5,3) [3,3.5) [3.5,4) [4,4.5) [4.5,5) [5,5.5)
51 41 5 7 30 73 61 4
[ 1.5, 2) -> 1.5이상 2 미만
데이터 상대빈도수 확인하기
> duration.freq <- table(duration.cut)
#분류 기준에 따른 건 / 전체 갯수 => 상대비율 구하기
> duration.relfreq <- duration.freq / nrow(faithful)
#갯수와 상대빈도 함께 보기
> cbind(duration.freq, duration.relfreq)
duration.freq duration.relfreq
[1.5,2) 51 0.18750000
[2,2.5) 41 0.15073529
[2.5,3) 5 0.01838235
[3,3.5) 7 0.02573529
[3.5,4) 30 0.11029412
[4,4.5) 73 0.26838235
[4.5,5) 61 0.22426471
[5,5.5) 4 0.01470588
데이터 상대누적도수분표 확인하기
#누적 도수 계산하기
> duratin.cumfreq <- c(0, cumsum(duration.relfreq))
#누적 도수 분포표 그리기
> plot(breaks, duratoin.cumfreq)
데이터 누적도수 그래프 그리기
> fn <- ecdf(duration)
#경험적 누적 분포 함수 ecdf 사용
> plot(fn)
줄기-잎 그림 그리기
숫자의 자릿수를 기준으로 한 문자형 그래프
그래프의 모양과 위의 누적분포 그래프의 기울기와 일치함
> stem(duration)
The decimal point is 1 digit(s) to the left of the |
16 | 070355555588
18 | 000022233333335577777777888822335777888
20 | 00002223378800035778
22 | 0002335578023578
24 | 00228
26 | 23
28 | 080
30 | 7
32 | 2337
34 | 250077
36 | 0000823577
38 | 2333335582225577
40 | 0000003357788888002233555577778
42 | 03335555778800233333555577778
44 | 02222335557780000000023333357778888
46 | 0000233357700000023578
48 | 00000022335800333
50 | 0370
>
eruption(duration)과 wating 간의 상관관계를 산점도로 그리기
> waiting <- faithful$waiting
#duration과 waiting 산점도 그리기
> plot(duration,waiting)
#waiting과 duration 회귀분석 선 그리기
> abline(lm(waiting~duration))
반응형