Ich habe Daten wie diese data redundant. Also, ich möchte das redundante Element durch eindeutigen Code entfernen, dann habe ich diese Daten wie this. Dann versuche ich Regeln nach arules zu bekommen.Arules erhalten 0 Regeln für einen Apriori-Algorithmus, aber warum?
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)
Dann, wenn ich versuche es läuft, habe ich 0 Regeln, ich bin sicher, bevor ich er entfernt redundante Element jeder Spalte, ich erhielt viele Regeln, aber, wenn ich den Code ausführen versuchen, und löschen Sie den Code für Entfernen redundantes Element, ich habe 0 Regel auch .. (redundant: ich benutze Code "Unique") Dann versuche ich die Unterstützung und Vertrauen geben den niedrigeren Wert, aber ich habe es immer noch nicht bekommen.
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].
Was soll ich tun? Was ist los mit dir? was ist passiert? Vielen Dank für Ihre Hilfe
Ich denke, zumindest dein 'as.factor' ist ein schuldiger Schritt (wenn nicht andere). Für jede Spalte werden Codes mit unterschiedlichen Werten codiert. Ich würde entweder mögliche Werte im Aufruf präzisieren oder - einfacher - Rohwerte beibehalten. –
Ich kann Arulen nicht ausführen, wenn ich es nicht in Faktor geändert habe. Also was soll ich tun? weil, wenn ich es lösche, es Fehler gibt, weil ich es diskretisieren sollte. Aber wie? Weil meine Daten Integer sind, aber sie sind nicht für eine coinöse Variable, sie sind ID. – ILoveThisName
Sie können zuerst alle eindeutigen Werte abrufen, zum Beispiel mit 'levels <- unique (unlist (databaru))' und diesen Vektor verwenden, wenn Sie factor: 'lapply (datenbank, as.factor, levels = levels)' (nicht getestet, da Sie keine Daten zum Testen bereitstellen) –