R 27

[R] 데이터 시각화 - 스케일조절

데이터 분석 과정에서 데이터를 전처리 하는 과정은 상당히 많은 시간이 소요된다. 이러한 작업 단계에서 기존의 변수를 변환하거나 새로운 파생 변수를 생성해 내기도 하는데, 기존 변수의 변환 과정에서 범주형 변수를 처리하던지, 수치형 변수를 그룹화 하거나 스케일을 조절하기도 한다. - 데이터 스케일링 보통 데이터들은 각 변수의 범위가 다양할 것이다. 예를 들어 서울의 집값은 몇 억 단위로 값이 저장되어 있겠지만, 각 집의 연식은 10년, 20년처럼 저장되어있을 것이다. 이러한 데이터 범위의 차이가 크게 발생하는 경우 알고리즘은 제대로 작동하지 않는다. 따라서 데이터 전처리 과정에서 스케일링 작업을 해주게 된다. ➢ R 시각화 예시 시각화를 하게 될 경우에 스케일을 변환하게 되면 변수 간의 관계를 부각시킬 수..

[R] 연습 2022.09.25

[R] 상관관계 시각화 - 산점도 매트릭스(산점도 행렬)

- 상관관계란: 두 변수 간의 선형관계를 표현하는 통계적 측도 - 산점도 매트릭스(산점도 행렬)이란: 하나의 디스플레이에 여러 조합의 산점도가 존재 - 가능한 모든 변수 조합의 산점도를 만들어냄 산점도 매트릭스는 데이터의 분포 및 관계를 한눈에 파악할 수 있다. 따라서 변수 변환과 주요 변수 선택에 유용하며, 수치형 변수들 간의 연관성 분석, 아웃라이어 탐지, 군집 식별 등과 같은 비지도 학습에도 활용할 수 있다. ➢ R 시각화 예시 R로는 plot() 함수로 쉽게 표현할 수 있다. 기본 데이터 셋인 mtcars 데이터를 활용하여 시각화 해보았다. # simple plot plot(mtcars[, c(1, 3, 6, 7)]) 좀 더 이쁘게 표현하기 위해서는 GGally 라이브러리의 ggpairs() 함수..

[R] 연습 2022.09.24

R 함수 참고용

ggplot x축 라벨 각도를 90도 돌리기 (링크)theme(axis.text.x=element_text(angle=90, hjust=1)) ggplot(Cars93, aes(x=Type, y=MPG.highway)) + geom_boxplot() + theme_bw() + theme(axis.text.x=element_text(angle=90, hjust=1))맥에서 ggplot 한글 깨질때 해결법 (링크)## 폰트 설정 패키지 설치 install.packages("extrafont") library(extrafont) ## 존재하는 모든 폰트 불러오기 font_import() ## 폰트 설정 theme_set(theme_gray(base_family='NanumGothic')) ## 혹은 theme..

[R] 연습 2022.09.09

[R] aggregate() 함수

aggregate() 함수는 데이터의 통계량을 계산해주는 함수이다. Splits the data into subsets, computes summary statistics for each, and returns the result in a convenient form. 함수의 기본 형태 # 'data.frame' aggregate(data, by, FUN, ...) # 'formula' aggregate(formula, data, FUN, ...) by a list of grouping elements, each as long as the variable in the data frame x. The elements are coerced to factors before use. FUN a function ..

[R] 연습 2022.04.29

[R] 지터링(jitter)

지터링(jittering)이란 자료의 점에 약간의 노이즈를 추가해서 흩어지게 표현하여 조정을 주는 방식을 의미한다. 데이터가 크거나 특정 위치에 점이 몰려있는 경우에는 점들이 중첩되기 때문에 밀도를 확인할 수 없고 정확한 자료 파악이 다소 어려울 수 있다. 따라서 지터링을 활용해서 점들이 겹치지 않고 흔들리게 표현하면 오히려 데이터 파악에 용이할 수 있다. 아래의 예를 보자. library(scales) # alpha() 함수 사용을 위한 패키지. 지터링과 무관하다. plot(universal.df$CCAvg, universal.df$Income, col = alpha(ifelse(universal.df$Securities.Account == 0, "gray", "black"), 0.4), pch = 2..

[R] 연습 2022.02.06

[R] 시각화(ggplot 패키지편)

ggplot 패키지 시각화에 아주 많이 활용되는 패키지로 좀 더 고품질의 그래픽을 활용하고자 한다면 필수적으로 알아두어야 한다. ggplot의 gg는 Grammar of Graphics(그래픽 문법)라는 의미로, 플롯팅 이론과 표기 체계를 규정하여 모든 그래프를 작성할 수 있다는 아이디어에서 착안하였다. 이번 포스팅에서는 ggplot으로 가장 기본적인 플롯인 산점도(scatter plot), 히스토그램, 막대그래프, 선 그래프, 상자 수염(boxplot)에 대해서 다루고 다음 포스팅에서 ggplot을 활용한 좀 더 다양한 형태의 그래프를 그려보는 연습을 할 것이다. ggplot은 기본적으로 다음과 같이 구성되어 있다. 구성요소 설명 데이터(Data) 시각화 하고자 하는 데이터 미적 요소(Aesthetic..

[R] 연습 2022.01.23

[R] 시각화(graphics 패키지편)

가장 베이스 패키지인 graphics는 별도 설치 없이 바로 사용할 수 있다. graphics 패키지에는 plot( ), hist( ), barplot( ), pie( ), boxplot( ) 등이 있다. 함수 설명 plot( ) 산점도 hist( ) 히스토그램 barplot( ) 막대그래프 pie( ) 파이 차트 boxplot( ) 박스 플롯 1. plot 함수 plot(x축 데이터, y축 데이터, [ xlab = "x축 이름", ylab = "y축 이름", main = "그래프 제목", type = "p"] ) 데이터가 하나만 입력되면 x축은 Index로 자동 지정되고 y축에 데이터 값이 표현된다. type인자로 산점도의 출력 형태를 지정할 수 있다. p 점 출력 l (소문자 L) 선 출력 b 점, ..

[R] 연습 2022.01.22

[R] 기초 문법 4

2022.01.09 - [[R] 연습] - [R] 기초 문법 1 2022.01.13 - [[R] 연습] - [R] 기초 문법 2 2022.01.15 - [[R] 연습] - [R] 기초 문법 3 지난 포스팅에 이어서 R의 기본적인 문법을 계속해서 정리해볼 것이다. 팩터(Factor) 팩터는 범주형 자료를 표현factor(x = 범주형 데이터, levels = 범주 목록, labels = 범주별 표시 값, ordered = TRUE는 순서형, FALSE는 명목형)로 생성 # 팩터 예시 payment

[R] 연습 2022.01.16

[R] 기초 문법 3

2022.01.09 - [[R] 연습] - [R] 기초 문법 1 2022.01.13 - [[R] 연습] - [R] 기초 문법 2 지난 포스팅에 이어서 R의 기본적인 문법을 계속해서 정리해볼 것이다. 조건문 if문(if - else if - else) grade = 89 if(grade > 90){ print("A") } else if(grade > 80){ print("B") } else if(grade > 70){ print("C") } else { print("D") } # [1] "B" ifelse(조건식, 참일 때 실행문, 거짓일 때 실행문) # ifelse() 활용 예시 exam_result

[R] 연습 2022.01.15

[R] 기초 문법 2

2022.01.09 - [[R] 연습] - [R] 기초 문법 1 지난 포스팅에 이어서 R의 기본적인 문법을 계속해서 정리해볼 것이다. 리스트(list) 리스트의 형태는 (키, 값) 형태로 list(key = value, key = value, ...)로 작성 # 리스트 생성 예시 list(name = c("simon", "micheal", "kyle"), height = c(180, 176, 169) # $name # [1] "simon" "micheal" "kyle" # $height # [1] 180 176 169 추가로, 리스트 안에 리스트를 중첩으로 작성할 수도 있다. 행렬(Matrix) 행렬은 행과 열로 구성되어 있다. 벡터와 마찬가지로 한 가지 유형의 스칼라만 저장할 수 있다. matrix(d..

[R] 연습 2022.01.13

[R] 군집분석(k-means clustering편)

이전 포스팅에서는 차원축소의 방법 중 하나인 다차원 척도법(MDS)을 연습했었다. 시각화 과정에서 k-평균 군집화(k-means clustering)를 시행했었는데, 이번 포스팅에서 이를 한번 다시 다뤄보도록 하겠다. 군집분석 방법에는 계층적 군집화와 비계층적 군집화 방법이 있다. k-평균 군집화 방법은 비계층적 군집화 방법이며, 계층을 두지 않고 유사도를 바탕으로 미리 정한 k개의 군집들 중 하나에 할당한다. k-평균 군집화는 다음과 같은 순서로 진행한다. 초기 군집의 수, k개를 사용자가 정한다. k의 초기 평균값은 랜덤으로 정해진다. 각 레코드는 중심이 가장 가까운 군집으로 할당된다. 군집의 중심점을 다시 계산하고, 3 단계를 반복한다. 더 이상의 변화가 없으면 중단한다. 이제 코드를 연습해보도록 ..

[R] 연습 2021.12.26