在R中,将一个数据集中的变量与另一个数据集中的匹配变量进行装箱

何塞·梅伦德斯(Jose Melendez)

我试图基于另一个数据帧的一些预定义的bin来绑定一些(75)连续变量。例如,数据帧G具有我想要的所有bin,数据帧Test是我需要谨慎的连续变量所在的位置。例如,变量X3975具有bin截止点.0625和.1,因此我需要编写如下的ifelse语句:

Ifelse((X3975 >=0 & X3975 <=.0625),”0-.0625”,
Ifelse((X3975 >=.0625 & X3975 <=.1),”.0625-.1”,
Ifelse((X3975 >= .1 ),”>.1”,

对于G数据集中的每个变量,以使其与Test数据集中的变量匹配。有一种有效的方法吗?

G数据框数据集如下所示:

Bins   Variable 
  1. 0625 X3975
  2. .1 X3975
  3. .01 X3976
  4. .1 X3976 ......总共75个不同的变量,这些变量具有不同的箱数

测试数据框数据集

X3001 X3100 X3102 .... X3999

阿克伦

你可以试试 cut

lst <- split(G$Bins, G$Variable)
df2 <- df1
df2[] <- Map(function(x,y) cut(x, breaks=c(-Inf,y,Inf)), df1, lst[names(df1)])

df2 

数据

df1 <- structure(list(X3001 = c(14, 14, NA, 10, 3, 5), X3100 = c(23, 
7, NA, 24, 7, 6), X3102 = c(1, 1, NA, 3, 0, 1), X3104 = c(0, 
0, NA, 2, 0, 0), X3109 = c(1, 1, NA, 7, 1, 1), X3111 = c(197, 
71, NA, 90, 177, 88), X3113 = c(37, 48, NA, 86, NA, 52), X3116 = c(197, 
71, NA, 76, 177, 88), X117 = c(197, NA, NA, NA, NA, NA)),
.Names = c("X3001", 
"X3100", "X3102", "X3104", "X3109", "X3111", "X3113", "X3116", 
"X117"), row.names = c(NA, -6L), class = "data.frame")

G <- structure(list(Bins = c(0, 7, 12, 0, 12, 22, 0, 1, 3, 0, 2, 0, 
6, 40, 150, 200, 10, 40, 90, 60, 180, 80, 180), Variable = c("X3001", 
"X3001", "X3001", "X3100", "X3100", "X3100", "X3102", "X3102", 
"X3102", "X3104", "X3104", "X3109", "X3109", "X3111", "X3111", 
"X3111", "X3113", "X3113", "X3113", "X3116", "X3116", "X117", 
"X117")), .Names = c("Bins", "Variable"), row.names = c(NA, -23L
 ), class = "data.frame")

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据另一个数据集中的值选择一个数据集中的变量

选择一个样本以匹配另一个数据集中变量的分布

将一个数据集中的值插入到另一个匹配的数据集中

将长数据除以R中另一个数据集中的值

如何检查一个数据集中的单元格是否存在于另一个数据集中的变量/列中?

R:根据另一个数据集中的几个变量填写一个新列

R - 从具有不同 # 行的另一个数据集中添加一个变量

R:与数据集中的两个变量相关,另一个数据集中的第三个变量被识别

如何将数值与另一个数据集中的分类值匹配

根据另一个数据集中的值更改另一个数据集中的值

根据条件从 R 中的另一个数据集中添加一个数据集中的列值 - 不同的长度

用另一个数据集中的数据填写一个数据集中的多列

根据另一个数据集中的列值在一个数据框中创建列

如何基于匹配另一个数据集中的唯一值来从一个数据集中删除行?

SAS:如果观测值与另一个数据集中的观测值匹配,则将其从数据集中删除

从一个数据集中提取一个列,并使用R中的第三个数据集中的列创建另一个数据集

如何使用鼠标或R中的另一个包从多个变量中提取多个推定值到单个数据集中?

如何将数据从一个数据集中添加到 R 中的另一个?

使用SAS中的另一个数据集从数据集中提取

如何在R中另一个数据集的列中选择一个数据集中的一些行?

如何保留与另一个数据集的一个col匹配的变量

如何将矩阵乘以另一个数据集中的列?

删除列中的值与另一个数据集中的列中的值不匹配的所有行

我如何获得R来计算一个数据集中属于另一个数据集中定义的类别的观测值的数量

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

将一个数据集中的缺失值(NA)替换为另一列中匹配的值

计算数据集中的行与R中另一个数据集的所有行之间的差

如何用另一个数据集中的行替换Excel中的行

用另一个数据集中的列中的值填充空值