是否可以分解Spark數據幀列?因式分解我的意思是創建列中每個唯一值到同一個ID的映射。因式分解Spark列
爲例,原來的數據幀:
+----------+----------------+--------------------+
| col1| col2| col3|
+----------+----------------+--------------------+
|1473490929|4060600988513370| A|
|1473492972|4060600988513370| A|
|1473509764|4060600988513370| B|
|1473513432|4060600988513370| C|
|1473513432|4060600988513370| A|
+----------+----------------+--------------------+
到因式分解版本:
+----------+----------------+--------------------+
| col1| col2| col3|
+----------+----------------+--------------------+
|1473490929|4060600988513370| 0|
|1473492972|4060600988513370| 0|
|1473509764|4060600988513370| 1|
|1473513432|4060600988513370| 2|
|1473513432|4060600988513370| 0|
+----------+----------------+--------------------+
斯卡拉它本身是相當簡單的,但由於星火分配它dataframes在節點我不是確定如何保持A->0, B->1, C->2
的映射。
此外,假設數據幀非常大(千兆字節),這意味着將單個機器的整個列加載到內存中可能是不可能的。
可以這樣做嗎?
完美的,就像一個魅力!完全忘了spark-mllib。 – Tim