2013-05-29 10 views
9

Ich arbeite mit einigen großen Transaktionsdaten. Ich habe read.transactions und apriori (Teile des arules-Pakets) verwendet, um nach häufigen Artikelpaarungen zu suchen.Schreibregeln von Apriori generiert

Mein Problem ist das: wenn Regeln generiert werden (mit "inspect()") kann ich sie einfach in der R-Konsole anzeigen. Im Moment kopiere ich die Ergebnisse manuell in eine Textdatei, speichere und öffne dann in Excel. Ich möchte nur die generierten Regeln mit write.csv oder etwas ähnlichem speichern, aber wenn ich es versuche, erhalte ich einen Fehler, dass die Daten nicht in data.frame umgewandelt werden können.

Hat jemand Erfahrung dabei, dies erfolgreich in R zu tun?

Antwort

29

Ich weiß, dass ich meine eigene Frage beantworte, aber ich fand heraus, dass die Lösung darin besteht, as() zu verwenden, um die Regeln in einen Datenrahmen umzuwandeln. [Ich bin neu in R, also vermisste ich dies das erste Mal auf der Suche nach einer Lösung.] Von dort aus kann es leicht in irgendeiner Weise manipuliert werden (Subeinstellung, Sortierung, Export usw.).

> mba = read.transactions(file="Book2.csv",rm.duplicates=FALSE, format="single", sep=",",cols=c(1,2)); 

> rules_1 <- apriori(mba,parameter = list(sup = 0.001, conf = 0.01, target="rules")); 

> as(rules_1, "data.frame"); 
1

Eine andere Möglichkeit, das wäre zu erreichen sein:

write(rules_1, 
     file = "association_rules.csv", 
     sep = ",", 
     quote = TRUE, 
     row.names = FALSE)