r - 对某个变量的数字范围进行分组
问题描述
我想在我的数据框中对某一列的值进行分组。
集群 1:1 到 249
集群 2:250 至 1499
集群 3:>= 1500
假设我有一个包含 2 个变量(V1,V2)的数据框:
V1 <- c(1,5,25,100,200, 1000, 10000)
V2 <- c(1,2,3,2,5,9, 4)
DF <- data.frame(V1, V2)
这将导致:
V1 V2
1 1 1
2 5 2
3 25 3
4 100 2
5 200 5
6 1000 9
7 10000 4
到目前为止,我尝试过:
DF %>% mutate(V1=recode(V1, `200`= 1))
它确实将 200 重新编码为 1(对于集群 1),但我不知道如何将其应用于一系列数字(1 到 249、250 到 1499 以及所有等于或高于 1500 的数字)。
只需将数字放在冒号运算符之间,例如:
DF %>% mutate(V1=recode(V1, `1:249`= 1))
返回错误:
警告消息:
mutate()
列有问题V1
。ℹV1 = recode(V1,
1:249= 1)
。ℹ 强制引入的 NA
有没有办法解决这个问题?谢谢。
解决方案
推荐阅读
- reactjs - package.json 中的主页属性
- python - Python:线图 - 在 X 轴上格式化日期?
- python - ModuleNotFoundError:在 Windows 虚拟环境中尝试使用 Pytest 和 Flask 创建测试时没有名为“app”的模块
- javascript - 为什么我们在函数中传递匿名参数?
- performance - 使用“isSomething”的最佳方式是什么?
- ios - 表格视图不显示任何内容?
- python - 多个列表比较
- c++ - 存储/转换函数指针到函数
- python - 大熊猫的求和函数
- php - 如果验证失败则不更新实体 Symfony [form]