L'agrégation de plusieurs colonnes avec une fonction personnalisée dans l'étincelle

Je me demandais si il est possible de spécifier une coutume fonction d'agrégation pour le spark dataframes sur plusieurs colonnes.

J'ai un tableau comme celui du type (nom, article, prix):

john | tomato | 1.99
john | carrot | 0.45
bill | apple  | 0.99
john | banana | 1.29
bill | taco   | 2.59

:

Je voudrais globale de l'élément et c'est un coût pour chaque personne dans une liste comme ceci:

john | (tomato, 1.99), (carrot, 0.45), (banana, 1.29)
bill | (apple, 0.99), (taco, 2.59)

Est-ce possible dans dataframes? J'ai récemment appris à propos de collect_list mais il semble ne fonctionne que pour une seule colonne.

OriginalL'auteur anthonybell | 2016-06-09