ПочатиПочніть безкоштовно

col_types з колекторами

Інший спосіб задати типи імпортованих стовпців — використати колектори. Функції-колектори можна передати у list() до аргументу col_types функцій read_, щоб вказати, як інтерпретувати значення у стовпці.

Повний перелік функцій-колекторів дивіться в документації до collector. Для цієї вправи вам знадобляться дві функції-колектори:

  • col_integer(): стовпець слід інтерпретувати як ціле число (integer).
  • col_factor(levels, ordered = FALSE): стовпець слід інтерпретувати як фактор із заданими levels.

У цій вправі ви працюватимете з hotdogs.txt (переглянути) — це файл із розділювачем табуляції без назв стовпців у першому рядку.

Ця вправа є частиною курсу

Вступ до імпорту даних у R

Переглянути курс

Інструкції до вправи

  • Об'єкт hotdogs створено для вас без задання типів стовпців. Перегляньте його підсумок за допомогою функції summary().
  • Для вас визначено дві функції-колектори: fac і int. Ознайомтеся з ними: чи розумієте ви, які типи вони збирають?
  • У другому виклику read_tsv() відредагуйте аргумент col_types: Передайте list() з елементами fac, int і int, щоб перший стовпець імпортувався як фактор, а другий і третій — як цілі числа.
  • Створіть summary() для hotdogs_factor. Порівняйте його з підсумком для 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
___
Редагувати та запускати код