检查R中是否存在对象
我是R的新手,所以请原谅任何看起来过于明显的事情 我使用apriori评估频繁项集。当我执行下面的代码并且子集调用返回项时,一切都很好。问题是当子集上没有返回任何内容时(条件不返回子集)。当它这样做时,我在尝试为输出构建数据帧时接收到“object'rulesmatchhs'notfound”。你能告诉我在ifelse行检查RulesMatchhs的有效性时我做错了什么吗检查R中是否存在对象,r,machine-learning,apriori,R,Machine Learning,Apriori,我是R的新手,所以请原谅任何看起来过于明显的事情 我使用apriori评估频繁项集。当我执行下面的代码并且子集调用返回项时,一切都很好。问题是当子集上没有返回任何内容时(条件不返回子集)。当它这样做时,我在尝试为输出构建数据帧时接收到“object'rulesmatchhs'notfound”。你能告诉我在ifelse行检查RulesMatchhs的有效性时我做错了什么吗 rules <- apriori(trnew, parameter=list(supp=0.01, conf=0.5,
rules <- apriori(trnew, parameter=list(supp=0.01, conf=0.5, minlen=2, maxlen=2))
rulesMatchLHS <- subset(rules, lhs %ain% dataset1)
ifelse(exists(rulesMatchLHS),
OutputClient <- data.frame(lhs=labels(lhs(rulesMatchLHS))$elements, rhs=labels(rhs(rulesMatchLHS))$elements,rulesMatchLHS@quality),
OutputClient <- data.frame())
View(OutputClient)
rules子集返回一个空数据帧。所以它确实存在。还存在要求参数为字符串。您可能希望在ifelse中将exists更改为nrow。下面是一个简单的示例来演示:
test <- subset(iris, Species == "Fake")
typeof(test)
exists("test")
nrow(test) == 0
测试我不知道那是哪个软件包,但我认为%ain%
中有一个输入错误,也许它应该是%
中的%。Ifelse部分可能与此类似OutputClient感谢您的回复。这是阿鲁勒斯套餐。我也收到了与该代码相同的错误。exists(rulesMatchLHS)正在抛出错误。本质上,我不能在任何地方执行规则,除非它抛出错误。没有可复制的例子很难说。我认为您应该使用if not ifelse:if(exists(rulesmatchhs)){OutputClient