因此,我试图找出如何从我的数据学院获取专栏Grad.Cat,并将其归类为高值或低值。但是,我不想在dataframe的同一列中将值更改为'high‘和'low’,而是创建一个名为highlow的新的数据列。
如何处理下面的代码,而不是在不覆盖现有数据的情况下创建包含这些值的新数据列。
College$Grad.Cat <- "low"
College$Grad.Cat[College$Grad.Rate>60] <- "high"
College$Grad.Cat <- factor(College$Grad.Cat, levels = c("low","high"))谢谢!
发布于 2019-05-03 19:06:08
一种选择是case_when
library(tidyverse)
College <- College %>%
mutate(Grad.Cat = factor(case_when(Grad.Rate > 60 ~ "high",
TRUE ~ "low")))或使用base R
College$Grad.Cat <- factor(c("low", "high")[1 + (College$Grad.Rate > 60)])https://stackoverflow.com/questions/55975783
复制相似问题