r - 创建添加到目标编号的数据框的子组
问题描述
我想创建一个 ID 列,根据与目标值相关的每个值的总和来标识两组观察值
假设我有这个数据集:
id <- rep(1:5)
val <- c(1, 2, 4, 5, 6)
dat <- data.frame(id, val)
我计算val
(=18) 的总和并除以 2 (=9)。然后,我想创建一个 ID 列,对观察结果进行分组,以便它们的总和等于(或尽可能接近)9。这个新列将是:
dat$group_id <- c(A, A, B, B, A)
假设在某些情况下没有精确的方法对观察进行分组以达到目标值,那么是否有一种好方法可以为多组观察自动执行此过程?
解决方案
推荐阅读
- c - 如何使用指针将从 Pthread 返回的多个数组存储在另一个数组中
- raku - Cro运行抛出连接被对等方重置
- java - google-drive-api - 使用我的帐户管理员更新文件
- mysql - 连接到数据库的 Docker 错误 - 对许多其他网站使用 nginx、mysql 和虚拟主机
- swift - iOS 13 isKeyWindow 总是返回 nil
- python - 在 Pytorch 中实现 LeNet
- c++ - c++:struct和decltype比较器的priority_queue
- zsh - Zsh glob:子目录下的对象递归,不包括当前/基本目录
- python - 使用嵌套的 defaultdict 重新分配 pandas 系列值
- python - 在 Python 中搜索数组以获取精确匹配