在R中,如何根据另一个数据帧中的范围对一个数据帧中的值进行分类?

通常,如何相对于另一数据帧中的因子值对数据帧的一列中的值进行分类?例如,给定df1和df2,我想生成df3(或更新df1):

> df1
  NewAge
1      5
2     25
3     18
4      9
5     43
6     15
7     17

> df2
  AgeStart AgeEnd AgeType
1        0     10       A
2       10     20       B
3       20     30       A
4       30     40       B
5       40     50       A

我想要df3为:

NewAge Type
  5      A   
 25      A
 18      B
  9      A
 43      A
 15      B
 17      B

我用过cut()来产生间隔

df2_cut <- data.frame(NewAge, 
                      "AgeRange" = cut(NewAge,
                                       breaks=AgeStart, 
                                       right=F, 
                                       include.lowest=T))
> df2_cut
  NewAge AgeRange
1      5   [0,10)
2     25  [20,30)
3     18  [10,20)
4      9   [0,10)
5     43  [40,50]
6     15  [10,20)
7     17  [10,20)

但是我不知道如何df2_cut根据间隔类型(即A或B)进行分类

阿克伦

我们可以使用findInterval输出将是一个数字索引,我们将使用它从“ AgeType”中获取相应的元素。

df3 <- transform(df1, Type=df2$AgeType[findInterval(NewAge, df2$AgeStart)])
df3
#  NewAge Type
#1      5    A
#2     25    A
#3     18    B
#4      9    A
#5     43    A
#6     15    B
#7     17    B

labels=FALSEcut

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据另一个数据帧中的时间范围过滤数据帧

根据时间范围从R中的另一个数据帧更改ID?

根据另一个数据帧中的值将数据帧的列相乘

根据另一个数据帧在R数据帧中创建变量

R-将一个数据帧中的值与另一个数据帧中的多个值进行匹配

根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

如何从R中的另一个数据帧展平数据帧变量

如何从R中的另一个数据帧中提取数据帧

如何根据另一个数据帧中的行条件对一个数据帧的行索引进行矢量化查找

如何选择值与R中特定列中的另一个数据帧相同的数据帧的行

如何根据R中的另一个数据帧过滤和子集数据帧

如何基于另一个数据帧中的值对数据帧进行子集设置?

如何根据另一个数据帧的条件过滤一个数据帧中列的特定值?

根据 Pandas 中的查找值从另一个数据帧中获取值

如何基于基础R中的另一个数据帧对数据帧进行子集

如何从另一个数据帧在数据帧矩阵中添加一个值?

根据另一个数据帧中的多个条件过滤数据帧

如果数据帧长度不同,如何用R中另一个数据帧的值填充列?

根据R中另一个数据帧中的行为数据帧中的行设置子集

如何从r中具有相同列的另一个数据帧中提取一个数据帧的值?

如何用R中的另一个数据帧替换一个数据帧的某些值?

根据另一个数据帧中的值查找熊猫数据帧中的区间

如何通过根据另一个数据帧的行名的顺序映射一个数据帧的列名来对R中的数据帧进行排序?

如何在另一个数据帧中查找一个数据帧的行?

使用另一个数据帧仅更新数据帧中的某些值

查找具有存储在另一个数据帧中的值的数据帧

根据R中另一个数据帧内的列从数据帧中删除变量

在R中将数据帧归类为R中的另一个数据帧

根据R中的另一个数据帧更改单元格