r - 将具有取决于另一列的值的列添加到数据框中
问题描述
我有一个数据框,我想根据我的数据框中的列向该列附加值。我的数据框看起来有点像这样:
c1 c2 c3
x 2 z
y 5 f
c 3 r
a 11 z
现在我想c4
根据c2
. 对于 0 到 4 之间的所有值,我要追加"low"
,对于 5 到 9 之间的值,我要追加"medium"
,对于大于 10的值"high"
。
c1 c2 c3 c4
x 2 z "low"
y 5 f "medium"
c 3 r "low"
a 11 z "high"
可能答案很简单,但我真的想不出什么。
解决方案
您可以嵌套ifelse
stataments。当您从连续变量中创建分类变量时,它非常方便。
data$c4 <- ifelse(data$c2 >= 0 & data$c2 <= 4, 'low',
ifelse(data$c2 >=5 & data$c2 <=9, 'medium',
ifelse(data$c2 >=10, 'High', 'something else')
推荐阅读
- python - 显示按 (7) 列之一分组的描述性统计
- c - 将 printf() 结果分配给变量
- function - 子例程中定义的格式给我错误,它是未定义的?
- python - 为什么我不能减去这两个值?
- html - 通过 Mule 4 发送电子邮件时 JSON 数组到表结构格式
- mongodb - 如何查询将日期存储为某种格式的字符串的 mongo 集合?
- tsql - 需要更新 SQL Server 2016 中的完整表
- python - 在 Google 的 App Engine 中加密和访问 Google 应用程序凭据的工作流程是什么?
- ruby-on-rails - 将 hack 转换为适当的 Rails 迁移
- javascript - 想要创建启用垂直滚动的侧边菜单,但子菜单应显示在侧边菜单区域/容器之外