Script )
데이터 가공: 조건에 맞춰 일부 데이터만 저장하는 기술 등을 의미
# R Base data sets 이용
# 데이터 가공
install.packages("dplyr")
install.packages("gapminder")
library(gapminder)
library(dplyr)
# dplyr패키지에 있는 함수로, 데이터 내용과 구조를 보는 함수이다.
glimpse(gapminder)
View(gapminder)
# 일부 데이터만 보이기
# country가 Croatia인 데이터만 보이기
gapminder[gapminder$country=="Croatia",]
# 보일 속성들만 벡터에 담아서 인수로 보냄
gapminder[, c("country", "lifeExp", "year")]
# 응용
# coutry가 Croatia고 year가 1990초과일 때, listExp,pop속성 데이터만 보이게 하기
gapminder[gapminder$country == "Croatia" & gapminder$year > 1990, c("lifeExp","pop")]
# dplyr 라이브러리를 이용한 데이터 가공 #
select(gapminder, country, year, lifeExp) # gapminder의 country,year,lifeexp속성만 보이기 <속성에 해당하는 열 데이터 보이기>
filter(gapminder, country == "Croatia") # country가 Croatia인 데이터만 보이기 <조건에 맞는 데이터 보이기>
summarise(gapminder, pop_avg = mean(pop)) # pop의 평균값을 요약해서 보이기
# group_by함수는 두 번째 이하 인수에 오는 속성의 데이터를 가지고 그룹짓는다.
# 그냥은 쓰이지 않고 다른 함수와 연속적으로 쓰인다.
# => continent속성의 데이터를 가지고 그룹짓고 그룹별로 pop의 평균값을 구해라
summarise(group_by(gapminder, continent), pop_avg = mean(pop))
summarise(group_by(gapminder, continent, country), pop_avg = mean(pop))
# 함수를 다르게 쓰는 방법이다.
gapminder %>% group_by(continent, country)
gapminder %>% group_by(continent, country) %>% summarise(pop_avg = mean(pop))
# filter함수로 country가 Croatia인 데이터만 모음
temp1 = filter(gapminder, country == "Croatia")
temp1
# teamp1에서 country,yeat,lifeExp열 데이터만 모음
temp2 = select(temp1, country, year, lifeExp)
temp2
# apply는 함수 적용 개념.
# temp2의 lifeExp속성 데이터만 가지고 처리하는데 평균 함수를 이용하라. (두 번째 인수에 2를 줘야 동작함)
temp3 = apply(temp2[ , c("lifeExp")],2,mean)
temp3
북 참고) R로 배우는 데이터 과학