1. 데이터 가공(data processing): 데이터를 보다 효과적으로 분석하기 위해 데이터를 필요한 모양으로 가공하는 작업
- base R을 이용해 샘플과 속성 추출
a. 행에는 행번호 지정이 일반적 ex. gapminder[1:15, ]
b. 조건을 이용한 내용 추출: ex. gapminder[gapminder$country == "Cro", c("lifeExp","pop")] -> 추출할 속성이 여러개일 경우 c 함수를 통해 묶을 수 있음
c. 행/열 단위 연산: apply(x,MARGIN, FUN, optional arguments to FUN) 행 또는 열별 함수적용, Margin값 1 = 행, 2 =열
2. dplyr(디플라이어)를 이용한 데이터 가공
- 인덱스 기반 데이터 접근에 기초한다면 입출력 관계함수(select, filter) 함수로 사용가능
- select 함수: 열 추출(""없이 이름 그대로 사용가능해 편리함)
- filter 함수: 특정 샘플을 추출하는데 사용(조건에 따라 행 추출)
- group_by함수: factor형 속성 활용해 전체 데이터를 그룹화 가능+ summarise함수를 연달아 사용해 통계까지 산출
- %>% 연산자: 일련 가공 작업을 연결해 유용하게 쓰임
1, 데이터 시각화
- Base R
① plot 함수: 가장 일반적인 그래프(점, 직선 등)
② pie - barplot 함수
. -★ggplot 2: 시각화 객체 생성역할, 내부에 aes이용해 지정
① ggplot2 라이브러리 함수는 3가지 요소로 구성된 기본 표현식을 따름
gglot(gapminder, aes(x=gdpPercap, y=lifeExp, col=continent))+geom_point(alpha=0.2)
② geom_histogram 함수
gapminder $>$ filter(year == 2007) %>% ggplot(aes(lifeExp, col=continent))+
geom_histogram()
③ geom_boxplot 함수: 여러 항목의 분포를 한번에 관찰, 이상값 파악 유리
gapminder %>% filter(year==2007)%>%ggplot(aes(continent, lifeExp, col=continent))+
geom_boxplot()
④ scale_x_log10 - scale_y_log10 함수: 데이터에 직접 로그를 취하지않고 동일 효과를 얻을 수 있음
ggplot(gapminder, aes(x=gdpPercap, y=lifeExp, col=continent))+geom_point(alpha=0.2)
ggplot(gapminder, aes(x=gdpPercap, y=lifeExp, col=continent))+geom_point(alpha=0,2)+scale_x_log10()
⑤ coord_flip 함수: 플롯의 방향을 전환
gapminder %>% filter(continent=="Africa") %>% ggplot(aes(country,lifeExp))+geom_bar(stat="identity")
gapminder %>% filter(continent=="Africa") %>% ggplot(aes(country,lifeExp))+geom_bar(stat="identity")+
coord_flip()
2. 시각화를 이용한 데이터 탐색
예제: gapminder 데이터의 시각적 탐구(세계 여러 나라의 경제 및 복지 수준과 이의 변화)
gapminder%>%ggplot(aes(gdpPercap, lifeExp, col=continent))+geom_point(alpha=0.2)+
factet_wrap(~year)+scale_x_log10()
##facet_wrap(): ~변수별 level 순서대로 sub그래프 그려줌
'빅데이터' 카테고리의 다른 글
[BigData]파일 읽고 쓰기와 데이터 정제 (0) | 2022.10.19 |
---|---|
[BigData] 데이터 구조 R(기초) (0) | 2022.10.19 |