Ich habe einen Datenrahmen von Artikel Listen, wobei jede Zeile im Datenrahmen LHS und RHS Assoziationsregeln mit der entsprechenden Unterstützung, Vertrauen und Aufzug enthalten. hier die Daten:R Artikel Listen zu Wide Format
structure(list(rules = structure(c(13L, 4L, 28L, 1L, 24L, 15L
), .Label = c("{butter,jam} => {whole milk}", "{butter,rice} => {whole milk}",
"{canned fish,hygiene articles} => {whole milk}", "{curd,cereals} => {whole milk}",
"{domestic eggs,rice} => {whole milk}", "{grapes,onions} => {other vegetables}",
"{hamburger meat,bottled beer} => {whole milk}", "{hamburger meat,curd} => {whole milk}",
"{hard cheese,oil} => {other vegetables}", "{herbs,fruit/vegetable juice} => {other vegetables}",
"{herbs,rolls/buns} => {whole milk}", "{herbs,shopping bags} => {other vegetables}",
"{liquor,red/blush wine} => {bottled beer}", "{meat,margarine} => {other vegetables}",
"{napkins,house keeping products} => {whole milk}", "{oil,mustard} => {whole milk}",
"{onions,butter milk} => {other vegetables}", "{onions,waffles} => {other vegetables}",
"{pastry,sweet spreads} => {whole milk}", "{pickled vegetables,chocolate} => {whole milk}",
"{pork,butter milk} => {other vegetables}", "{rice,bottled water} => {whole milk}",
"{rice,sugar} => {whole milk}", "{soups,bottled beer} => {whole milk}",
"{tropical fruit,herbs} => {whole milk}", "{turkey,curd} => {other vegetables}",
"{whipped/sour cream,house keeping products} => {whole milk}",
"{yogurt,cereals} => {whole milk}", "{yogurt,rice} => {other vegetables}"
), class = "factor"), support = c(0.00193187595322827, 0.00101677681748856,
0.00172852058973055, 0.00101677681748856, 0.00111845449923742,
0.00132180986273513), confidence = c(0.904761904761905, 0.909090909090909,
0.80952380952381, 0.833333333333333, 0.916666666666667, 0.8125
), lift = c(11.2352693602694, 3.55786275006331, 3.16819206791352,
3.26137418755803, 3.58751160631383, 3.17983983286908)), .Names = c("rules",
"support", "confidence", "lift"), row.names = c(NA, 6L), class = "data.frame")
Was ich brauche, ist diese Regeln in einem breiten Format zu strukturieren, wobei für jedes Element in jedem LHS Teil der Regeln eine bestimmte Spalte mit einem Wert von 1 haben (um anzuzeigen, dass Regel hat dieses Element in seinem LHD-Teil), das gleiche gilt für die RHS der Regeln, z die 2 ersten Regeln unter:
{liquor,red/blush wine} => {bottled beer} 0.0019 0.90 11.2
{curd,cereals} => {whole milk} 0.0010 0.91 3.6
Das Ergebnis sollte ein Datenrahmen, die wie folgt aussieht:
'rules_id' 'lhs_liquor' 'lhs_red/blush wine' 'lhs_curd' 'lhs_cereals' 'rhs_bottled beer' 'rhd_whole milk' 'support' 'confidence' 'lift'
1 1 1 0 0 1 0 0.0019 0.90 11.2
2 0 0 1 1 0 1 0.0010 0.91 3.6
Wie ich lass es mich Überlauf bin neu in R und stapeln wissen, ob die Frage nicht gut ist definiert Jede Hilfe
geschätzt
Ihr letzter Absatz, da sie nicht Teil der Frage selbst ist, würde in der Regel hier nach unten gehen, in den Kommentaren. – Frank
Ein langes Format wäre wahrscheinlich nützlicher: 'df%>% \t getrennt (col = Regeln, in = c ('lhs', 'rhs'), sep = '=>')%>% \t seperate_rows (col = lhs, in = lhs, sep = ',')%>% \t sammeln (key = seite, wert = produkt, lhs, rhs)%>% \t mutieren (product = gsub ('[{}]' , '', Produkt)) ' – alistaire