collector와 함께 쓰는 col_types
가져온 열의 타입을 지정하는 또 다른 방법은 collector를 사용하는 것이에요. read_ 계열 함수의 col_types 인수에 collector 함수를 list()로 전달하여 각 열의 값을 어떻게 해석할지 알려줄 수 있어요.
collector 함수의 전체 목록은 collector 문서를 참고하세요. 이번 연습에서는 다음 두 가지 collector 함수가 필요합니다:
col_integer(): 해당 열을 정수형으로 해석합니다.col_factor(levels, ordered = FALSE): 해당 열을 주어진levels를 가진 요인형(factor)으로 해석합니다.
이 연습에서는 첫 행에 열 이름이 없고, 탭으로 구분된 파일인 hotdogs.txt(보기)를 사용합니다.
이 연습은 강의의 일부입니다
R에서 데이터 가져오기 소개
연습 안내
- 열 타입을 지정하지 않고 생성된
hotdogs가 준비되어 있어요.summary()함수를 사용해 요약 정보를 확인하세요. - 두 개의 collector 함수
fac와int가 미리 정의되어 있어요. 어떤 타입을 수집하는지 확인해 보세요. - 두 번째
read_tsv()호출에서col_types인수를 수정하세요. 첫 번째 열은 factor, 두 번째와 세 번째 열은 정수형이 되도록fac,int,int요소를 가진list()를 전달하세요. hotdogs_factor에 대해summary()를 생성하세요.hotdogs의 요약과 비교해 보세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Import without col_types
hotdogs <- read_tsv("hotdogs.txt", col_names = c("type", "calories", "sodium"))
# Display the summary of hotdogs
___
# The collectors you will need to import the data
fac <- col_factor(levels = c("Beef", "Meat", "Poultry"))
int <- col_integer()
# Edit the col_types argument to import the data correctly: hotdogs_factor
hotdogs_factor <- read_tsv("hotdogs.txt",
col_names = c("type", "calories", "sodium"),
col_types = NULL)
# Display the summary of hotdogs_factor
___