Wie erstelle ich Dummy-Variablenspalten für Tausende von Kategorien in Google BigQuery?
Ich habe eine einfache Tabelle mit 2 Spalten: Benutzer-ID und Kategorie, und jede Benutzer-ID kann mit ein paar Kategorien wiederholt werden, wie zum Beispiel:
UserID Category
------ --------
1 A
1 B
2 C
3 A
3 C
3 B
Ich möchte diese Tabelle "dummifizieren": d. H. Eine Ausgabetabelle mit einer eindeutigen Spalte für jede Kategorie erstellen, die aus Dummy-Variablen besteht (0/1, abhängig davon, ob die Benutzer-ID zu dieser bestimmten Kategorie gehört):
UserID A B C
------ -- -- --
1 1 1 0
2 0 0 1
3 1 1 1
Mein Problem ist, dass ich TAUSENDE Kategorien habe (nicht nur 3 wie in diesem Beispiel) und dies daher mit der CASE WHEN-Anweisung nicht effizient bewerkstelligt werden kann.
Also meine Fragen sind:
1) Gibt es eine Möglichkeit, die Spalte "Category" in Google BigQuery zu "dummifizieren", ohne Tausende von CASE WHEN-Anweisungen zu verwenden?
2) Ist dies eine Situation, in der die UDF-Funktionalität gut funktioniert? Anscheinend ist dies der Fall, aber ich kenne UDF in BigQuery nicht gut genug, um dieses Problem zu lösen. Würde jemand helfen können?
Vielen Dank