티스토리 뷰

Data/R

[데이터 분석해보기] Adoptable Dogs

ellie.strong 2021. 7. 1. 11:14
728x90

데이터셋

2019년 12우러 12일 헝가리의 동물 보호소 데이터베이스의 2,937마리의 개에 대한 데이터

- 19개의 컬럼과 2,937개의 행 

 

Adoptable Dogs | Kaggle

 

Adoptable Dogs

Dogs Available for Adoption in the Hungarian Database of Homeless Pets

www.kaggle.com

 

데이터 불러오기

dogs<-read.csv("ShelterDogs.csv", header=T)

 

데이터 속성 탐색

str(dogs)

 

질적 데이터 분석

도수분포표

table(dogs$sex)

 

barplot - 막대그래프 

barplot(table(dogs$sex),main="Sex of Adopted Dogs", col="pink", border="pink")

 

pie - 원그래프

pie(table(dogs$color), main="Color of Adopted Dogs")

 

mosaicplot - 모자이크 그래프

- stats 패키지 설치 후 사용 가능

mosaicplot(~ sex + size, dogs, main="Adopted Dogs", color="pink")
mosaicplot(~ sex + neutered, dogs, main="Adopted Dogs", color=c("orange", "skyblue", "yellow"))

mosaicplot(~ sex + size + coat + neutered, dogs, main="Adopted Dogs", color=c("orange", "skyblue", "yellow"))

 

양적 데이터 분석

기초 통계 분석

summary(dogs$age)

 

hist 히스토그램

hist(dogs$age, main="Ages of Adopted Dogs", xlab="age", ylab="", col="pink", border="white")

 

어린 강아지들이 더 많이 입양될 줄 알았는데 오히려 10살 정도의 강아지들이 제일 많았다는 것이 흥미롭다. 

 

boxplot - 다중 상자 그림

boxplot(dogs$age, main="Ages of Adopted Dogs", ylab="age", col="pink")

범위 밖 데이터의 분포도 확인 할 수 있다. 
boxplot(age~sex, dogs, main="Ages of Adopted Dogs", ylab="age", col=c("orange", "skyblue"))

나이의 분포를 를 그룹별로 나눠서 보여준다.  

 

데이터의 수학적 변환

1. [0-1] 변환

min<-min(dogs$age)
max<-max(dogs$age)
age1<-(dogs$age - min) / (max - min)

2. Z 변환

age2<-(dogs$age - mean(dogs$age)) / sd(dogs$age)

3. 박스-콕스(Box-Cox) 변환 <log 변환>

- library(MASS)를 사용하여 박스-콕스 변환을 사용할 수 있다. 

age3<-log(dogs$age)

[0-1] 변환과 z표준화 변환의 경우 선형 변환이므로 그래프에 큰 변화가 없지만 
log 변환의 경우 그래프가 크게 달라지는 모습을 확인 할 수 있다. 

 

4. 이항변환

 

데이터 구간 나누기

구간의 수 : sqrt(n)

- 보통의 경우 7±2개의 구간을 사용한다. 

 

cut - 카테고리 나누기

ageCategory<-cut(dogs$age, 7)

 

breaks속성 - 히스토그램 구간 나누기

hist(dogs$age, main="Category Cutting", xlab="age", ylab="", col="pink", border="white", breaks=4)

 

 


Ref.

R, Python 분석과 프로그래밍의 친구 (by R Friend) :: R 데이터 변환 (1) 표준화 : z 표준화 변환, [0-1] 변환 (tistory.com)

 

R 데이터 변환 (1) 표준화 : z 표준화 변환, [0-1] 변환

데이터 변환 방법으로서 (1) 표준화 (Standardizatio) (2) 정규분포화 (3) 범주화   - 이산형화   - 이항변수화 (4) 개수 축소 (5) 차원 축소   - 주성분분석   - 요인분석 (6) 시그널 데이터 압축 중에서 (1)

rfriend.tistory.com

 

728x90
댓글
공지사항
최근에 올라온 글