2016-12-26 1 views
0

Ich versuche, einige Warenkorb Analyse mit dem arules Paket zu tun, aber wenn ich die summary() Funktion auf einem itemMatrix Objekt zu überprüfen, welche die häufigsten Elemente sind, tun die Zahlen nicht summieren. Wenn ich tue:Zusammenfassung() der Transaktionen ist falsch für itemMatrix Objekt

library(arules) 
x <- read.transactions("Supermarket2014-15.csv") 
summary(x) 

ich:

transactions as itemMatrix in sparse format with 
5001 rows (elements/itemsets/transactions) and 
997 columns (items) and a density of 0.003557162 

most frequent items:  
45  28  42  35  22 (Other) 
503  462  444  440  413 15474 

Aber wenn ich mit einer for Schleife zu überprüfen, oder auch in Excel, die Zählung für das Produkt 45 513 und nicht 503. Das gleiche für 28, was 499 sein sollte, und so weiter. Die seltsame Sache ist, wenn ich alle Summen zusammenfasse (15474+413+440+444+462+503) Ich bekomme die richtige Anzahl für die Summe der getätigten Produkte.

Die Daten haben mehrere NA Werte und Produkte sind Faktoren.

str(x)

Und hier ist die Rohdaten (Tag 1-28 Bereiche, Produkt im Bereich von 1 bis 50):

Raw Data

+1

eigentlich bin ich mir nicht sicher. Gibt es eine Chance, dass wir ein reproduzierbares Beispiel haben? –

+1

... und gibt es irgendwelche "NA" -Werte in Ihrem Datensatz? –

+1

Ich frage mich auch, ob die Produkte Zahlen oder ein Faktor sind. Wenn ein Faktor, haben Sie "45" und "45" mit einem Leerzeichen? – G5W

Antwort

0

Wenn man sich das Ergebnis Ihrer str(x) Anruf aussehen dann sehen Sie unter @iteminfo und $labels, dass einige Artikel Etiketten wie "1;1", etc. haben. Dies bedeutet, dass die Elemente nicht korrekt getrennt nach dem Lesen der Datei in. Das Standardtrennzeichen in read.transactions() ist ein Leerzeichen, aber yo Du scheinst (einige) Semikolons zu haben. Versuchen Sie sep=";" in read.transactions().

Verwandte Themen