122 votes

PySpark 2.0 La taille ou la forme d'un DataFrame

J'essaye de découvrir la taille / forme d'un DataFrame dans PySpark. Je ne vois pas une seule fonction qui puisse faire cela.

En Python je peux faire

 data.shape()
 

Existe-t-il une fonction similaire dans PySpark. Ceci est ma solution actuelle, mais je suis à la recherche d'un élément

 row_number = data.count()
column_number = len(data.dtypes)
 

Le calcul du nombre de colonnes n'est pas idéal ...

203voto

George Fisher Points 521
print((df.count(), len(df.columns)))

72voto

Learner Points 381

Utilisez df.count() pour obtenir le nombre de lignes.

39voto

Louis Yang Points 467

Ajoutez ceci à votre code:

 def spark_shape(self):
    return (self.count(), len(self.columns))
pyspark.sql.dataframe.DataFrame.shape = spark_shape
 

Ensuite, vous pouvez faire

 >>> df.shape()
(10000, 10)
 

Mais rappelez-vous simplement que .count() peut être très lent pour de très grands ensembles de données.

4voto

Y.C. Points 41

Je pense qu'il n'y a pas de fonction similaire comme data.shape dans Spark. Mais j'utiliserai len(data.columns) plutôt que len(data.dtypes)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X