728x90


ggplot2

 

* 데이터를 그래프로 시각화 해주는 패키지
* mpg 데이터(1999-2008년 자동차 모델들의 연비에 관련된 데이터셋)를 갖고 있어 실습용으로 사용할 수 있음
(mpg <- as.data.frame(ggplot2::mpg)로 데이터 프레임 생성)

ggplot 문법 기본 프레임

 

함수 설명 예시
< ggplot( ) >
aes(x= , y= ) 그래프의 xy축 변수를 지정 x = reoder(x축 변수명, -정렬기준)
* 정렬 기준 변수 앞에 -를 붙히면
내림차순 정렬로 바뀜

ggplot(data = df_mpg,
aes(x=reorder(drv, -mean_hwy), y=mean_hwy)) +
geom_col()
reorder( , ) 주로 막대 그래프(geom_col())와 사용되며,
막대를 값의 크기 순으로 정렬할 수 있음
디폴트 우선순위는 숫자>문자, 오름차순 정렬임
xlim( , ) xy축의 범위를 지정할 수 있음

ggplot(data= mpg,
aes(x=displ, y=hwy)) +
geom_point( ) +
xlim(3, 6) + ylim(10, 30)
ylim( , )
geom_point( ) 산점도
데이터를 xy축에 점으로 표현
-
geom_col( ) 평균 막대 그래프
집단별 평균표로 구성된 데이터프레임이 필요하기 때문에
group_by()와 summarise()로 데이터프레임을 먼저 구성
-
geom_bar( ) 빈도 막대 그래프
변수의 빈도를 막대의 길이로 표현
y축 없이 x축만 지정
ggplot(data = mpg, aes(x=drv)) +
geom_bar( ) 
geom_line( ) 선 그래프
시계열 데이터를 그래프로 만들 때 사용
-
geom_boxplot() 상자 그림으로 데이터 표현

[boxplot 설명 바로가기]
-
< qplot( ) >
qplot( ) 데이터프레임 변수의 빈도를
plot창에서 막대 그래프 형태로 볼 수 있음
 
* 기능은 많지 않지만 간단해 데이터 전처리 시 
데이터를 빠르게 확인해 보는 용도로 사용 
qplot(데이터프레임명$변수)

dplyr

 

* 데이터 프레임에 있는 데이터를 가공(데이터 전처리)할 때 사용하는 패키지
* 데이터를 가공할 때는 원본보다는 복사본을 만들어 사용하는 것을 권장
%>% 를 이용해 함수를 나열하는 방식으로 코드 작성

함수 설명 예시
< 변수 수정 >
rename( ) 데이터 프레임의 변수이름을 바꾼다
변수를 여러개 바꾸고 싶을 때는 바꿀 변수를 콤마(,)로 여러개 나열함
rename(데이터 프레임명,
새 변수명 = 기존 변수명)

df_copy <- rename(df_copy,
var_new = var_opigin)
< 데이터 추출 >
filter( ) 행 추출
* ==, !=, >, <, >=, <= 를 이용해
조건에 해당하는 데이터만 추출 
* &(and)나 |(or)로 한 줄로  조건을 여러개 줄 수 있음
* |(or)로 조건을 나열하다 보면
코드 가독성이 떨어 질 수 있다.
이때 %in%와 c()를 이용하면 코드를 줄일 수있음
filtered_df %>% filter(변수 == 조건)

filtered_df %>% filter(class == 1)

filtered_df %>%filter(class == 1
 | class ==3)

filtered_df %>%filter(class %in% c(1, 3))
select( ) 변수들 중 일부 변수만 추출
쉼표(,)로 변수명을 나열 해 여러 변수를 동시에 추출 가능
특정 변수를 뺴고자 할 때 -를 사용
select(추출할 변수)

df_student %>% select(gpa)
df_student %>% select(-name)
< 데이터 정렬 >
arrange( ) 데이털르 원하는 순서로 정렬 할 때 사용
디폴트 세팅은 '오름차순 정렬'이고,
'내림차순 정렬' 을 원할 떄는 decs( ) 에 변수를 넣는다

변수를 코마(,)로 여러개 넣을 수 있으며
넣은 순서대로 우선순위가 부여된다.
df_student %>% arrange(gpa)
df_student %>% arrange(desc(name))
df_student %>% arrange(gpa)
< 파생변수 추가 >
mutate( ) 기존 데이터에 파생변수를 추가
ifesle문과 함께 사용할 수 있음
df_exam %>%
mutate( total = python + c )
##total이 파생 변수명

df_exam %>%
mutate(test =
ifelse(science >= 60, "pass", "fail"))
< 데이터 요약하기 >
summarise( )
group_by와 함께 사용 되며, 집단별 요약표를 만듬  df_exam %>%
group_by(class) %>%
summarise(mean_math = mean(math))
group_by( ) 집단별로 나누기
콤마(,)로 집단을 나열하면
집단을 나눈 후 다시 하위 집단으로 나눌 수 있음 
< summarise()에서 사용되는 요약 통계량 함수 >
mean( ) 평균
sd( )  표준편차
sum( ) 합계
median( ) 중앙값
max( ) 최댓값
min( ) 최솟값
n( ) 빈도
< 데이터 합치기 >
left_join( ) 데이터를 가로로(열로) 합치기 df_join <- left_join(df_ex1, df_ex2, by="id")
##
데이터프레임 df_ex1과 df_ex2를 id 기준으로 합친다.
bind_rows( ) 데이터를 세로로(행으로) 합치기 df_join <-bind_rows(df_ex1, df_ex2)
by 데이터를 합치는 기준을 변수로 입력

 


 

728x90

+ Recent posts