Comment prendre une ligne au hasard à partir d'un PySpark DataFrame?

Comment puis-je obtenir une ligne au hasard à partir d'un PySpark DataFrame? Je ne vois que la méthode sample() qui ne prend qu'une fraction comme paramètre. La définition de cette fraction de 1/numberOfRows conduit à des résultats aléatoires, où, parfois, je ne vais pas entrer n'importe quelle ligne.

Sur RRD il existe une méthode takeSample() qui prend comme paramètre le nombre d'éléments que vous voulez l'échantillon à contenir. Je comprends que cela peut être lente, comme vous l'avez de compter chaque partition, mais est-il un moyen d'obtenir quelque chose comme ceci sur un DataFrame?

OriginalL'auteur DanT | 2015-11-30