tidyverse 특집 / dplyr, 변수의 이름에 따라 숫자로 데이터 바꾸기

library(dplyr)

데이터가 다음과 같다고 합시다.

df=tibble(
  m=c('A','B','C'),
  x1=c('10','20','30'),
  x2=c('100','200','300'),
  yx1=c('1000','2000','3000')
)

형태를 보겠습니다.
df

# A tibble: 3 x 4
  m     x1    x2    yx1  
  <chr> <chr> <chr> <chr>
1 A     10    100   1000 
2 B     20    200   2000 
3 C     30    300   3000 


이제 x로 시작하는 모든 변수의 데이터를 문자에서 숫자로 바꾸고 싶다면?

df%>%mutate_at(vars(matches('^x')),as.numeric)

# A tibble: 3 x 4
  m        x1    x2 yx1  
  <chr> <dbl> <dbl> <chr>
1 A        10   100 1000 
2 B        20   200 2000 
3 C        30   300 3000 

댓글

이 블로그의 인기 게시물

Bradley-Terry Model: paired comparison models

R에서 csv 파일 읽는 법