0
私はSpark 2.0.0とデータフレームを使用しています。私が欲しいものPysparkのGroupByオブジェクトからOrderedリストへの変換
| id | year | qty |
|----|-------------|--------|
| a | 2012 | 10 |
| b | 2012 | 12 |
| c | 2013 | 5 |
| b | 2014 | 7 |
| c | 2012 | 3 |
が
| id | year_2012 | year_2013 | year_2014 |
|----|-----------|-----------|-----------|
| a | 10 | 0 | 0 |
| b | 12 | 0 | 7 |
| c | 3 | 5 | 0 |
または
| id | yearly_qty |
|----|---------------|
| a | [10, 0, 0] |
| b | [12, 0, 7] |
| c | [3, 5, 0] |
私が見つけた最も近いソリューションがcollect_list()
であるが、この関数はの注文を提供していないよう は、ここに私の入力データフレームでありますリスト。ループを使用して、すべてのIDをフィルタリングすることなく、これを生成する方法はあり
data.groupBy('id').agg(collect_function)
:私の心の中で解決策は次のようにすべきですか?
ありがとう、ピボットは私が探しているものです! – CodeMySky
pysparkで 'struct'を収集していますか? – eliasah
Sparkの@eliash 'collect_ *'は、Spark <2.0ではアトミックのみをサポートしていません。 – zero323