Lassen Sie uns sagen, dass ich einen Datenrahmen dieser Struktur haben:FPgrowth auf einem Dataframe?
time| asset | parameter
----|-------|----------
T1 | A1 | P1
T1 | A1 | P2
T1 | A1 | P3
T1 | A2 | P1
T1 | A2 | P2
T1 | A2 | P3
T2 | A1 | P1
....
Und so weiter
ich die FPGrowth
API verwenden möchten (als Teil des spark.mllib
) zu diesem Datenrahmen, in dem alle Parameter auf den gleichen entsprechenden Timestamp wird als eine Transaktion betrachtet. Wie gehe ich vor?
Das Beispiel in der documentation spricht einfach von einer Datei gelesen wird, jede Zeile entspricht einer anderen Transaktion.
Ich bin neu in Spark, also Hilfe jeglicher Art ist willkommen! (Spark Version 1.6.2 mit Scala)
Das ist in Ordnung, wenn Ihr Datenrahmen nicht so groß ist. Mein Datenrahmen kann Millionen von Datenpunkten oder mehr haben. In einer solchen Situation wäre es zeitaufwendig, nicht wahr? – aswa09
Wenn die Daten sortiert sind, ist dies O (n) - nicht zu schlecht. FP-Growth benötigt die Daten in Transaktionen, so dass Sie diese Laufzeitkosten letztendlich bezahlen müssen. –