Data Analysis

R 34

[R] ggplot2 (7) fill, color, alpha, position 속성 활용

geom_bar()는 막대의 색상과 관련된 fill, color, alpha라는 속성이 있는데, 각각 막대의 색, 막대 테두리 색, 막대 색의 투명도를 조정한다. 다음은 mpg 데이터에서 class별 빈도를 막대 그래프로 그린 예이다. fill 속성 인수에 남색을 부여하였다. > ggplot(mpg) + geom_bar(aes(class), fill="dark blue") > ggplot(mpg) + geom_bar(aes(class), color="dark blue") 앞의 막대 그래프는 class별로 데이터의 빈도를 구해 한 색상으로 막대를 그렸다. 이번에는 class 별 빈도에 대한 막대 그래프를 그리는데 fill 속성에 drv 열을 매핑하여 어떤 차이가 있는지 살펴보자. > ggplot(mpg) ..

[R] ggplot2 (6) 히스토그램, 상자 그래프

geom_histogram()를 이용하면 다음처럼 연속형 변수에 대한 히스토그램을 그릴 수 있다. > ggplot(diamonds) + geom_histogram(aes(carat)) `stat_bin()` using `bins = 30`. Pick better value with `binwidth`. 그리고 bins 또는 binwidth 인수를 사용하면 구간의 수 또는 구간의 길이를 직접 지정하여 히스토그램을 그릴 수 있다. > ggplot(diamonds) + geom_histogram(aes(table), bins=50) > ggplot(diamonds) + geom_histogram(aes(price), binwidth=500) stat_bin()은 구간 별 절대 빈도수(count)뿐 아니라 구간..

[R] ggplot2 (5) 범주형 변수의 통계 요약

ggplot2 패키지의 diamonds는 약 54,000개의 다이아몬드에 대한 다음 정보를 측정한 데이터이다. > diamonds # A tibble: 53,940 × 10 carat cut color clarity depth table price x y z 1 0.23 Ideal E SI2 61.5 55 326 3.95 3.98 2.43 2 0.21 Premium E SI1 59.8 61 326 3.89 3.84 2.31 3 0.23 Good E VS1 56.9 65 327 4.05 4.07 2.31 4 0.29 Premium I VS2 62.4 58 334 4.2 4.23 2.63 5 0.31 Good J SI2 63.3 58 335 4.34 4.35 2.75 6 0.24 Very Good J VVS..

[R] ggplot2 (4) 그래프 계층(layers)과 도형(geoms)

ggplot2의 장점은 필요에 따라 다양한 형식의 그래프를 쉽게 만들 수 있고, 만들 수 있는 형식도 무궁무진하다는데 있다. ggplot2 그래프의 계층적 구조와 데이터 열과 속성을 자유롭게 매핑할 수 있다는 점이 이러한 무궁무진한 그래프 형식을 만들어 내는 핵심 요소라 할 수 있다. geom 함수의 순서와 그래프 계층 ggplot2는 좌표평면 위에 여러 계층으로 그래프를 그려서 하나의 좌표평명에 나타냄으로써 복잡한 형식의 그래프를 만들어 낼 수 있다. 다음 두 그래프에서는 배기량과 고속도로 연비의 산점도와 추세선을 각각 그렸다. > ggplot() + geom_point(mapping=aes(x=displ, y=hwy), data=mpg) > ggplot() + geom_smooth(mapping=ae..

[R] ggplot2 (3) 측면(facets)으로 나누어 그리기

원래의 그래프를 또 다른 변수의 측면에서 세분화하여 살펴보는 방법으로는 도형의 다른 속성에 해당 변수를 대응시키는 것 말고도 해당 변수값에 따라 데이터를 나누어 각각에 대한 그래프를 그려볼 수도 있다. ggplot2에서는 이러한 방식으로 그래프를 그리는 것을 측면(facets)으로 나누어 그래프를 그린다고 한다. facet_wrap()로 일차원 측면 그래프 그리기 다음은 facet_wrap() 함수의 사용법을 보여준다. ~ 은 R에서 수식을 표현할 때 사용되는데, facet_wrap() 함수는 수식을 인수로 입력받는다. facet_wrap() 함수는 ~ 우변에 기술된 변수를 측면(facets)으로 하여 데이터를 나누어 그래프를 그린다. 이 때 측면(facets)으로 사용되는 변수는 범주형 데이터이어야 한..

[R] ggplot2 (2) Group 속성

geom 도형의 대부분의 속성은 도형의 시각적 표현을 직접적으로 변화시키는 속성들이다. 대표적인가 x, y, color, shape, size, fill 등의 속성이다. 이러한 속성은 시각적으로 효과가 직접적으로 들어나므로 이해하기 쉽다. 반면 group 속성은 도형의 시각적 속성을 직접 변형하는 것이 아니라, 도형을 그릴 때 데이터를 어떤 식으로 그룹으로 묶어 사용할지만 지정한다. 이를 통해 그래프의 전체 모양에 영향을 준다. geom_point() 함수는 관측치 하나에 점 하나를 대응시켜 그래프를 그린다. 그러나 어떤 geom 함수는 여러 관측치를 그룹으로 묶어서 하나의 도형을 그린다. 대표적인 예가 geom_line()과 geom_smooth() 함수이다. 이 함수들은 여러 관측치를 사용하여 하나의..

[R] ggplot2 (1) 그래프 그리기

mpg 데이터로부터 배기량(displ)을 x 축으로, 고속도로 연비(hwy)를 y 축으로 하는 산점도를 그려보자. > ggplot() + + geom_point(mapping=aes(x=displ, y=hwy), data=mpg) 산점도에서 배기량이 커짐지면 연비가 줄어드는 경향을 관찰할 수 있다. 이 산점도를 그린 R 명령어는 두 개의 함수가 결합하여 실행되었다. - ggplot(): ggplot2 그래프의 좌표축과 좌표평면을 만드는 함수이다. 뒤에서 살펴보겠지만 그래프에 공통된 데이터와 매핑을 설정할 수 있다. - geom_point(): ggplot() 함수가 만들어 놓은 좌표평면 위에, 점이라는 도형을 이용하여 그래프를 그린다. 각 geom 함수의 그래프는 좌표평면 상에서 별도의 층으로 구성된다...

[R] 고급시각화 실습 (2)

기하학적 기법 시각화 일반 그래픽 관련 패키지: 이미지 표현에 중점 ggplot2: 기하학적 객체(점, 선, 막대 등)에 미적 특성(색상, 모양, 크기)을 연결. 데이터 객체와 그래픽 객체를 서로 분리하고 재사용 가능. ggplot2패키지의 주요 함수 qplot(), ggplot(), ggsave() 실습 (ggplot2 패키지설치와 실습 데이터 가져오기) install.packages("ggplot2") library(ggplot2) data(mpg) str(mpg) head(mpg) summary(mpg) table(mpg$drv) mpg데이터 사용 실습 (qplot()함수의 fill과 binwidth 속성 적용) qplot(hwy, data = mpg, fill = drv, binwidth = 2)..

[R] 고급시각화 실습

주요 패키지: graphics, lattice, ggplot2, ggmap graphics패키지는 일반적인 시각화 도구 제공. barplot(), dotchart(), pie(), boxplot(), hist(), plot()함수 고급 시각화 lattice 패키지: 서로 상관있는 확률적 반응변수의 시각화에 사용. 특정 변수가 갖는 범주(domain)별로 독립된 패널을 격자(lattice)처럼 배치하여 여러 개의 변수에 대한 범주를 세부적으로 시각화해주는 도구 ggplot2 패키지: 기하학적 객체들(점, 선, 막대 등)에 미적 특성(색상, 모양, 크기)을 적용하여 시각화는 방법을 제공. 그래프와 사용자 간의 상호작용(interaction)기능을 제공하기 때문에 시각화 과정에서 코드의 재사용성이 뛰어나고, ..

[R] 데이터 시각화 (막대 차트, 점 차트, 원형 차트 등)

시각화 도구 분류 데이터 분석의 도입부에서 전체적인 데이터 구조를 살펴보기 위해서 시각화 도구 사용 이산변수: 막대, 점, 원형 차트 연속변수: 상자 박스, 히스토그램, 산점도 칼럼 특성의 시각화 도구 분류 hist(히스토그램), plot(산점도), barplot(막대 차트), pie(원형 차트), abline(선 추가), boxplot(상자 박스), scatterplot3d(3차원 산점도), pair(산점도 매트릭스) 막대 차트 시각화 1단계: 차트 작성을 위한 자료 만들기 chart_data