일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Word Cloud
- 머신러닝
- numpy
- selenium
- 태블로
- 인공지능
- pyspark
- 데이터 분석
- scikit-learn
- input
- Udemy
- 파이썬
- SQL
- Okt
- 데이터분석
- Tableau
- 데이터
- konlpy
- 형태소분석기
- 크롤링
- iNT
- ionehotencoding
- pandas
- 시각화
- Python
- Today
- Total
반전공자
R # 그래프 그리기 (산점도) 본문
" 쉽게 배우는 R 데이터 분석 " 을 교재로 하여 쓰는 글 입니다.
이제 ,,,, 대망의 그래프 ! ! !
지금까지 데이터를 다루고 분석하는 과정을 배웠는데 이제는 정말 시각적으로 딱 ! 표현하는 방법을 배우려 한다 ~
데이터를 분석한 결과를 다른 사람들에게 보여주고 설명하기 위해선 그래프가 필수적이라고 생각한다.
또한 분석하는 사람이 보기에도 한눈에 보기 편하고 데이터의 특징이 한눈에 보여지기 때문에 분석할 때에도 큰 도움이 되리라 생각한다!
# ggplot2
패키지를 배울 때 살펴보고 이전 장에서 상자 그림을 그릴 때 사용했던 패키지이다.
가장 기본적이고 간단하게 그래프를 그릴 수 있는 방법!
처음 배울 때에는 그릴 수 있고 색도 바꿀 수 있다 ! 에서만 끝났지만,
그걸 교재에서는 그래프를 그리는 과정을 3단계로 나누어 체계적으로 알려주고 있다.
1단계 - 배경
2단계 - 그래프
3단계 - 디자인 / 설정 추가
기본적으로 그래프를 그리기 전에
library(ggplot2)
위 코드를 실행시켜 패키지를 로드한다!
# 산점도
" ex. 나이, 소득 / 연속 값으로 된 변수의 두 관계 표현 "
1. 배경 그리기
mpg 데이터를 이용하여 산점도를 그리자
displ - 배기량
hwy - 고속도로 연비
ggplot(data = mpg, aes(x=displ, y=hwy))
배경이 그려졌다!
산점도 외 다른 종류의 그래프를 그리더라도 배경을 그리는 코드는 기본적으로 깔고 가는 듯 하다
x, y 축의 숫자는 그 데이터의 숫자를 가지고 자동으로 설정됨
2. 그래프 추가하기
ggplot(data = mpg, aes(x = displ, y = hwy)) + geom_point()
마지막에 추가한 " geom_point() " 는 산점도를 그리는 코드 !
크게 봤을 때에는 배기량이 커질수록 고속도로연비가 낮아지는 듯 하다
자세히 살펴보면 ...
배기량이 2 이하인 차량은 고속도로 연비가 높은 수치에 분포되어 있다.
그런데 고속도로 연비가 가장 낮은 지점은 대략 배기량이 4.6 인 차량이다.
그렇다면 무조건적으로 " 배기량 낮음 = 고속도로 연비 좋음 " 이 성립되지는 않는 것인가??
다른 변수의 영향이 있을 수도 있겠다는 생각이 든다!
(대략적으로 큰 그림을 볼 때 배기량이 낮을 때 고속도로연비가 높은 것은 맞다고 볼 때) 제조사라던지, 차량 연식이 영향을 끼칠 수 있겠지?
교재에서 말하는 대략적 해석은
배기량이 클수록 고속도로 연비가 낮은 경향이 존재한다 말한다!
3. 설정 추가하기 - 범위 설정
아까 실행했던 코드에 " + "를 통해 연결하면 설정 추가가 가능하다
ggplot(data = mpg, aes(x = displ, y = hwy))+
geom_point() +
xlim(3,6) +
ylim(10,30)
범위를 설정하는 기능은 xlim(x 범위 설정) 과 ylim(y 범위 설정) 이다.
배기량은 3 ~ 6 , 고속도로연비는 10 ~ 30으로 범위를 설정 완료하였다.
지금까지 삽입한 그래프 그림은 모두 캡쳐본으로 삽입한 것이지만, R 안에서 따로 이미지, pdf 로 저장 가능하다.
위 사진이 이미지로 저장한 결과이다 !
Q ggplot vs qplot
=> 전에 봤을 때에는 자료의 형식에 따라서 다르게 쓰는 건가 하고 생각했었는데, 교재의 이번 챕터에서 이 차이를 설명해준다.
" qplot() - 전처리 단계에서 데이터를 빠르게 확인해보는 용도 "
" ggplot() - 최종 분석 결과 보고용 / 그래프 디자인 가능 "
# 혼자서 해보기 , 복습하기
mpg, midwest 데이터 사용
1. mpg / 도시연비, 고속도로연비 관계를 산점도로 나타내기
ggplot(data = mpg, aes(x = cty, y = hwy)) + geom_point()
정말 한눈에 보기 편한 결과가 나왔다.
도시 연비와 고속도로 연비는 비례관계의 경향을 보인다.
2. midwest / 지역별 전체인구, 아시아 인구 관계 산점도로 나타내기
/ 전체인구 50만 이하, 아시아 인구 1만명 이하 / x축에 전체인구, y축에 아시아인 인구
ggplot(data = midwest, aes(x = poptotal, y = popasian)) +
geom_point() +
xlim(0, 500000) +
ylim(0, 10000)
지역별 인구 수가 많을 수록 아시아인 인구 수가 많다.
실제로 데이터에서 아시아인구 수가 가장 많은 도시가 어디일지 궁금해서 아시아 인구 수를 많은 순서대로 정렬시켜보았다.
일리노이의 COOK 이라는 도시가 아시아인의 인구 수가 가장 많았는데 (188,565)
전체 인구 수도 평균 전체 인구 수인 96,130 보다 5,008,937 명이나 많은 5,105,067 명 이었다.
그래프 그리기에서 배울 양이 많지 않기 때문에 바로 배워보도록 하겠다 !
'데이터분석 > R' 카테고리의 다른 글
R # 그래프 그리기 ( 선그래프 ) (0) | 2021.02.25 |
---|---|
R # 그래프 그리기 (막대 그래프) (0) | 2021.02.24 |
R # 데이터 정제 (2) (0) | 2021.02.23 |
R # 데이터 정제 (1) (0) | 2021.02.19 |
R # 데이터 가공 (5) (0) | 2021.02.07 |