0
私はこのようなデータを持っていますdata redundant。だから、私は一意のコードで、冗長な項目を削除したい、その後私はthisのようなこのデータを持っている。それから私は小包でルールを取得しようとします。私はそれを実行してみたときにArriulesはAprioriアルゴリズムのルールを0にしますが、なぜですか?
library(arules)
library(qpcR)
data<- read.csv("Book1.csv", header=TRUE)
b<-sapply(1:ncol(data), function(x) unique(data[,x]))
b<-lapply(b,as.data.frame)
a<-list()
databaru<-do.call(qpcR:::cbind.na, lapply(b, as.vector))
databaru[]<-lapply(databaru,as.factor)
colnames(databaru)<-colnames(data)
rules<-apriori(databaru, parameter=list(supp=0.0016, conf=0.1))
inspect(rules)
はその後、私は0のルールを持って、私は彼に冗長項目に各列を削除する前に、私は、コードを実行し、ためのコードを削除しようとしたとき、私は、多くのルールを得たが、確信しています冗長なアイテムを削除すると、私も0のルールを得ました..(冗長:私はユニークなコードを使用します) それから私はサポートと信頼を下げてください。
Apriori
Parameter specification:
confidence minval smax arem aval originalSupport support minlen maxlen target ext
0.1 0.1 1 none FALSE TRUE 0.0016 1 10 rules FALSE
Algorithmic control:
filter tree heap memopt load sort verbose
0.1 TRUE TRUE FALSE TRUE 2 TRUE
Absolute minimum support count: 4
set item appearances ...[0 item(s)] done [0.00s].
set transactions ...[34440 item(s), 2561 transaction(s)] done [0.02s].
sorting and recoding items ... [0 item(s)] done [0.00s].
creating transaction tree ... done [0.00s].
checking subsets of size 1 done [0.00s].
writing ... [0 rule(s)] done [0.00s].
creating S4 object ... done [0.00s].
どうすればよいですか?どうしましたか?何が起こるの?
少なくとも、あなたの 'as.factor'は有罪な段階です(もしそうでなければ)。各列について、コードは異なる値でエンコードされます。私は、コールの正確な可能性のあるレベルか、より簡単な - 生の値を保持します。 –
私はそれを要因に変更していない場合、実行中のarulesを実行することはできません。では、私はどうしたらいいですか?なぜなら、それを削除すると、離散化する必要があるため、エラーが発生するからです。 どのように?私のデータは整数なので、しかし、それらはcotinous変数ではない、彼らはIDです。 – ILoveThisName
例えば、 'levels < - unique(unlist(databaru))'のような一意の値をすべて取得し、因子を生成するときにこのベクトルを使用することができます: 'lapply(databaru、as.factor、levels = levels)'テストするデータを提供していないのでテスト済み) –