일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- python 기초
- #협력적계획이론 #패치힐리 #도시계획이론
- 얀겔
- 지속가능한개발
- 일본연구
- 산업연관분석
- 오사카생활
- R통계
- 얀겔의 위대한 실험
- FUJIx100f
- 산업연관표
- 정선 가볼만한 곳
- 오타루
- 타지리초
- FUJIJILM
- 통계
- 다시장인인다
- 트랜지션타운
- x100f
- python
- 짱구는 못말려 15기
- 사북 석탄
- 문화
- 일본
- Greeen
- 지구정치학담론
- nofilter
- 건담프라모델
- 링크타운
- R프로그램
- Today
- Total
우리가 살아가는 도시
R을 활용한 통계학 이론과 응용 - 2장 코딩 연습 본문
2장. 자료의 구조
x=rep(1,10) #1을 10번 반복
#빈도분석
x=rep(LETTERS[1:3],c(1520,790,510)) #LETTERS[1:3] = a,b,c / a를 1520번 반복, b를 790번 반복, c를 510번 반복
library(prettyR)
freq(x)
freq(x,display.na=FALSE)
#파이차트
pie(table(x)) #pie에서는 x만써서는 안되며, table(x)로 표기해야 함
pie(table(x),main="예제2.2 파이차트")
#파레도차트
x=rep(LETTERS[1:5],c(35,9,45,6,5)) #LETTERS[1:5] = a,b,c,d,e
library(qcc)
pareto.chart(table(X))
pareto.chart(table(X),ylab="Frequency")
#빈도분석
X = c(1, 1, 1, 3, 0, 0, 1, 1, 1, 0, 2, 2, 0, 0, 0,
1, 2, 1, 2, 0, 0, 1, 6, 4, 3, 3, 1, 2, 4, 0) #벡터 생성
freq(X,display.na = FALSE,decr.order = FALSE) #decr.order=FALSE 오름차순
freq(X,display.na = FALSE,decr.order = TRUE) #TRUE는 아래의 아무것도 안쓴 것과 같은 값
freq(X,display.na = FALSE)
#막대그래프와 히스토그램
par(mfrow=c(1,2)) #하나의 화면에 몇개의 그림을 나타낼 것인가 1행 2열, 즉 가로로 2개의 그림을 동시에 그려줌
barplot(table(X),main="예제2.5막대그래프",xlab="Mistake",ylab="Count") #xlab: x축의 명칭, ylab: y축의 명칭
hist(X,sub="Mistake",labels = T,main = "예제2.5막대그래프") #lables=T:히스토그램 위에 수치를 써줌
hist(X)
hist(X,sub="Mistake") #sub="Mistake" 뭐에 대한 히스토그램인지 적어줄 수 있음
hist(X,sub="Mistake",labels = T)
#막대 그래프
beer = c(3,4,1,1,3,4,3,3,1,3,2,1,2,1,2,3,2,3,1,1,1,1,4,3,1)
barplot(beer) # not correct
barplot(table(beer)) # frequency
barplot(table(beer)/length(beer)) # relative frequency
#4분위 수
x=c(1, 3, 4, 6, 6, 7, 8, 8, 9, 10, 15)
quantile(X, c(0.25, 0.75))
#plotchart그리기
x = c(2, 3, 4, 5, 6, 7, 8, 9, 4, 6, 3, 7, 2, 5, 8)
y = c(4, 7, 6, 8,10, 9,13,11, 5, 7, 4,10, 3, 7,11)
par(mfrow=c(1,1))
plot(x, y, pch=1, main="예제 2.12 산점도") #pch=1,19,8은 어떠한 크기가 아니라, 모양이 바뀜 / 참고로 8은 별모양
plot(x, y, pch=19, main="예제 2.12 산점도")
plot(x, y, pch=8, main="예제 2.12 산점도")
x = c(110, 130, 125, 120, 115, 120, 125, 130, 150, 140, 100, 110, 115, 120, 135)
y = c( 75, 90, 80, 80, 70, 75, 90, 95, 90, 85, 60, 65, 75, 75, 90)
plot(x, y, pch=8, main="예제 2.13 산점도")
cor(x, y)
#도수분포표
x = c("Yes", "No", "No", "Yes", "Yes")
table(x)
#factor
x #x가 무엇인지 확인
factor(x) #x를 구성하는 레벨을 확인할 수 있음
===============================================================================
### 연속형 자료
## 중심위치와 흩어짐의 정도
# CEO salaries (in millions)
sals = c(12, .4, 5, 2, 50, 8, 3, 1, 4, 0.25)
mean(sals) # (표본)평균
var(sals) # 분산
sd(sals) # 표준편차
fivenum(sals) # 5 number summary: Min, Q1, Med, Q3, Max
summary(sals) # 그냥 summary: Min, 1st Qu., Median, Mean, 3rd Qu. Max
# (표본)분위수
data = c(10,17,18,25,28,28)
summary(data)
quantile(data, 0.25) #summary의 1st Qu.와 같음
quantile(data, c(0.25, 0.75)) #summary의 1st Qu. 그리고 3rd Qu.와 같음
# 이상치에 둔감한 측도
mean(sals, trim=1/10) #trim: 절삭평균, 절삭할 비율 a를 설정하고 0부터 0.5사이의 값으로 정의한다.
mean(sals, trim=2/10)
IQR(sals) # 사분위수범위=Q3-Q1
mad(sals) # median absolute deviation: med |Xi - med(X)|*1.4826
## 줄기잎그림
scores = c(2,3,16,23,14,12,4,13,2,0,0,0,6,28,31,14,4,8,2,5)
stem(scores)
stem(scores, scale=2)
## 연속형 자료의 범주화(그룹화)
cats = cut(sals, breaks=c(0,1,5,max(sals))) #breaks=c(0,1,5,max(sals)) : breaks를 0에서1, 1에서5, 5에서 50으로 구분함)
cats #cats를 누르면 그 레벨을 확인할 수 있음 / sales를 위에서 나눈 구간으로 표시
table(cats) #table(cats)의 도수분포표
levels(cats) = c("poor","rich","rolling in it") #cats의 레벨을 변경
levels(cats)
table(cats) #위의 table(cats)와 다르게 나타남
## 히스토그램
par(mfrow=c(1,1))
x = c(29.6,28.2,19.6,13.7,13.0,7.8,3.4,2.0,1.9,1.0,0.7,0.4,0.4,0.3,
0.3,0.3,0.3,0.3,0.2,0.2,0.2,0.1,0.1,0.1,0.1,0.1)
hist(x) # 도수
hist(x, probability=TRUE) # 상대도수
hist(x, breaks=10) #break의 의미는 명확히 모르겠음????
hist(x, breaks=c(0,1,2,3,4,5,10,20,max(x)))
'내가 알아가는 도시 > Statistics' 카테고리의 다른 글
R을 활용한 통계학 이론과 응용 - 4장 공식 및 코딩연습 (0) | 2016.12.22 |
---|---|
R을 활용한 통계학 이론과 응용 - 3장 공식 및 코딩연습 (0) | 2016.12.22 |
R통계-3 (0) | 2016.10.11 |
R통계-2 (0) | 2016.09.28 |
R통계-1 (0) | 2016.09.15 |