2017-04-02 34 views
2

私はRのまったく新しいものですので、あまりにも明白に思われるものは許してください。オブジェクトが存在するかどうかを確認するR

私は、頻出アイテムセットを評価するためにアプリオリを使用しています。下のコードを実行し、サブセット呼び出しがアイテムを返すと、すべてがうまくいきます。問題は、サブセットに何も返されない場合です(基準はサブセットを返しません)。これを行うと、出力のためのデータフレームを構築しようとしているときに、 "object 'rulesMatchLHS' not found"を受け取っています。 ifelse行のrulesMatchLHSの有効性をチェックするときに間違っていることを教えてください。

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,[email protected]), 
OutputClient <- data.frame()) 
View(OutputClient) 
+0

私はどのパッケージでもありませんが、%ain% 'に誤字があります。多分'%in% 'であるべきです。 Ifelseの部分はおそらくこの 'OutputClient Mislav

+0

応答いただきありがとうございます。それはarulesパッケージです。私はそのコードでも同じエラーを受けています。 exists(rulesMatchLHS)がエラーをスローしています。本質的に、私はrulesMatchLHSをそのエラーを投げることなくどこでも実行することができません。 –

+0

再現可能な例がないと言うのは難しいです。私はあなたがifelseでなければ使うべきだと思います: 'if(exists(rulesMatchLHS)){ OutputClient Mislav

答えて

0

サブセットは空のデータフレームを返します。それは存在します。また存在するためには、パラメータが文字列である必要があります。あなたはifelseを入れ子にするためにexistを変更したいかもしれません。ここには簡単な例を示します:

test <- subset(iris, Species == "Fake") 
typeof(test) 
exists("test") 
nrow(test) == 0 
関連する問題