r - 如果在两个变量之间,跨R中的数据框分配一个值
问题描述
我有两个数据帧,一个具有一系列长度> n的随机值,称之为:
df.my_data
我还有第二个数据框,称之为:
df.regions
df.regions
由三列组成,第一列有一组从 1 到 n 的变量,第二列有一个明确的下限,第三列有一个明确的上限。调用这些
regions$location
regions$lower
regions$upper
我想将 , 的第一列中的数字分配df.regions
给regions$location
一个新列,df.my_data
具体取决于数字是否df.my_data
落在给定的下限和上限之间df.regions
。
如果我能以任何方式澄清,请告诉我。
解决方案
如果我理解正确(并假设区域下限和上限用尽了您需要分类的值范围并且是独占的),那么这应该是一个类似的例子
library(dplyr)
library(purrr)
set.seed(1)
x = tibble(value=abs(rnorm(10, 0, 5)))
bounds = tibble(lower = c(0:6), upper = c(1:6, Inf), class = letters[1:7])
x$class <- bounds[map_int(x$value, function(z) {which(map_lgl(seq_len(nrow(bounds)), ~between(z, bounds$lower[.x], bounds$upper[.x]) ))}),3]
x
#> # A tibble: 10 x 2
#> value class$class
#> <dbl> <chr>
#> 1 3.13 d
#> 2 0.918 a
#> 3 4.18 e
#> 4 7.98 g
#> 5 1.65 b
#> 6 4.10 e
#> 7 2.44 c
#> 8 3.69 d
#> 9 2.88 c
#> 10 1.53 b
由 reprex 包(v0.3.0)于 2019 年 11 月 24 日创建
推荐阅读
- sql - 嵌套选择 - 多部分标识符未绑定错误
- vue.js - 可以
元素用于为 nuxtjs 应用程序中的单个页面元素设置动画? - javascript - 子组件可以访问其包含组件的方法吗?
- ionic2 - 如何在 ionic 2/typescript 中使用自定义类
- java - 将多个 JUnit 类导出到单个可执行 jar
- django - 如何在管理员中使用模型关系将我的预购模型与我的客户模型相关联,而无需每次都创建新对象
- makefile - 使用 makefile 编译具有不同文件夹中的源文件的程序
- sql - 根据条件过滤 DB2 组
- javascript - 如何将 *ngif 用于 [值]?
- html - 什么是标准的 Web SpeechSynthesis 语音?