MulaiMulai sekarang secara gratis

Mendapatkan jumlah level

Dengan mutate() dan summarize() di dplyr, Anda dapat menggunakan fungsi across() untuk menentukan penerapan argumen keduanya, yaitu sebuah fungsi, ke semua kolom yang memenuhi argumen pertama.

Kita akan menggunakan ini bersama tidyr untuk mendapatkan jumlah level bagi setiap variabel faktor di multiple_choice_responses. pivot_longer() dari tidyr mengubah himpunan data dari format lebar menjadi panjang. Dua argumennya adalah nama kolom baru—satu menampung nama kolom lama dan satu lagi semua nilainya.

Latihan ini adalah bagian dari kursus

Data Kategorikal di Tidyverse

Lihat Kursus

Petunjuk latihan

  • Ubah semua kolom bertipe karakter menjadi kolom faktor dan simpan himpunan data baru sebagai responses_as_factors.
  • Buat himpunan data baru, number_of_levels, di mana Anda:
    • Gunakan summarize dengan across untuk menerapkan fungsi nlevels() ke setiap kolom.
    • Ubah format himpunan data dari lebar menjadi panjang.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Change all the character columns to factors
responses_as_factors <- multiple_choice_responses %>%
    mutate(___(is.character, as.factor))

number_of_levels <- responses_as_factors %>%
	# Apply the function nlevels to each column
    summarize(___(everything(), ___)) %>%
    # Change the dataset from wide to long
    ___(everything(), names_to = "variable", values_to = "num_levels")
Edit dan Jalankan Kode