[英]Using the forcats package instead of base R
我首先使用下面的代碼離散化一個連續變量:
library(dplyr)
ChickWeight2 <-
mutate(ChickWeight,
weight5 = case_when(weight <= 50 ~ 1,
weight > 50 & weight <= 100 ~ 2,
weight > 100 & weight <= 150 ~ 3,
weight > 150 & weight <= 200 ~ 4,
TRUE ~ 5))
然后使用 base-R 函數將此離散變量轉換為序數變量:
ChickWeight2 <- mutate(ChickWeight2, weight5_2 =
factor(weight5, levels = c(1, 2, 3, 4, 5),
labels = c("very little", "litle",
"medium","big","very big"),
ordered = TRUE))
如何使用 forcats package 而不是基本 R 中的函數創建這個序數變量?
我認為fct_recode
更接近您想要的,您可以手動將新標簽指定為原始因子。
library(dplyr)
library(forcats)
ChickWeight2 %>%
mutate(weight5_2 = fct_recode(weight5, "very little" = "1", "litle" = "2",
"medium" = "3", "big" = "4", "very big" = 5))
但這並沒有給出基本 R 嘗試中的有序因子。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.