MulaiMulai sekarang secara gratis

col_types dengan collectors

Cara lain untuk menetapkan tipe kolom yang diimpor adalah menggunakan collector. Fungsi collector dapat diteruskan dalam list() ke argumen col_types pada fungsi read_ untuk memberi tahu cara menafsirkan nilai dalam suatu kolom.

Untuk daftar lengkap fungsi collector, Anda dapat melihat dokumentasi collector. Untuk latihan ini Anda akan membutuhkan dua fungsi collector:

  • col_integer(): kolom harus ditafsirkan sebagai integer.
  • col_factor(levels, ordered = FALSE): kolom harus ditafsirkan sebagai faktor dengan levels.

Dalam latihan ini, Anda akan bekerja dengan hotdogs.txt (view), yaitu berkas bertanda batas tab tanpa nama kolom pada baris pertama.

Latihan ini adalah bagian dari kursus

Pengantar Mengimpor Data di R

Lihat Kursus

Petunjuk latihan

  • hotdogs telah dibuat untuk Anda tanpa menetapkan tipe kolom. Periksa ringkasannya menggunakan fungsi summary().
  • Dua fungsi collector telah didefinisikan untuk Anda: fac dan int. Perhatikan keduanya, apakah Anda paham apa yang mereka kumpulkan?
  • Pada pemanggilan read_tsv() kedua, edit argumen col_types: Teruskan sebuah list() dengan elemen fac, int, dan int, sehingga kolom pertama diimpor sebagai faktor, dan kolom kedua serta ketiga sebagai integer.
  • Buat summary() dari hotdogs_factor. Bandingkan dengan ringkasan hotdogs.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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
___
Edit dan Jalankan Kode