使用字符串对象的变量,运算符和值的子集数据帧

时间:2019-03-14 19:30:36

标签: r variables char subset

我正在从决策树中获取规则,并显示以下文本:

dev_amount_720 <= 2212
dev_orders_1440 <= 81
dev_orders_5760 > 55
dev_amount_5760 > 1649

我需要做的是通过这些值过滤我的数据集并进行计数。例如,我想以某种方式将其转换为此调用:

data[which(data$dev_amount_720 <= 2212 &
           data$dev_orders_1440 <= 81 &
           data$dev_orders_5760 > 55 &
           data$dev_amount_5760 > 1649),]

是否有一种有效的方法来做到这一点?我想出的最好的办法是分割字符串:

> strsplit(rule_split[1], " ")[[1]]
[1] "dev_amount_720" "<="             "2212" 

我可以通过以下方式对数据进行子集化:

data[which(data[<var>] <operator> <value>), ]
data[which(data["dev_amount_720"] <= 2212), ]

但是,这并不是很有效,因为我需要将数百个规则应用于此过程。

0 个答案:

没有答案