ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터의 유형이 character인 열을 모두 factor로 변경하기
    R 2018. 3. 13. 19:51
    엑셀 데이터를 읽어올 때에 가장 많이 사용하는 방법은
    readxl 패키지에서 제공하는 read_excel() 함수이다.

    다른 함수들과 차이점은 데이터에 문자가 입력되어 있는 경우,
    stringsAsFactors를 argument를 TRUE를 지정하면 문자로 입력된 것은 R에서 factor로 인식되도록 할 수 있는 기능을 다른 함수들은 제공하지만 readxl::read_excel() 함수에서는 제공하지 않는다.

    분석을 하다보면, chr로 되어 있는 모든 열을 factor로 변경할 필요가 있다.
    그것을 해결하는 방법은 아래와 같다.

    DF <- data.frame(x = letters[1:5],
    y = 1:5,
    z = LETTERS[1:5],
    stringsAsFactors = FALSE)
    str(DF)
    # 'data.frame': 5 obs. of 3 variables:
    # $ x: chr "a" "b" "c" "d" ...
    # $ y: int 1 2 3 4 5
    # $ z: chr "A" "B" "C" "D" ...


    # The conversion
    DF[sapply(DF, is.character)] <- lapply(DF[sapply(DF, is.character)], as.factor)
    str(DF)
    # 'data.frame': 5 obs. of 3 variables:
    # $ x: Factor w/ 5 levels "a","b","c","d",..: 1 2 3 4 5
    # $ y: int 1 2 3 4 5
    # $ z: Factor w/ 5 levels "A","B","C","D",..: 1 2 3 4 5

    [출처] https://stackoverflow.com/questions/20637360/convert-all-data-frame-character-columns-to-factors/20637986


    'R' 카테고리의 다른 글

    Missing Value가 포함된 데이터의 정렬  (0) 2018.05.29
    caret::confusionMatrix()  (0) 2018.05.06
    colors  (0) 2018.03.13
    xkcd 웹툰 다운로드 받기  (0) 2018.01.22
    GGally::ggpairs()  (0) 2018.01.22
Designed by Tistory.