Sélectionnez les colonnes dans Pyspark Dataframe
Je suis à la recherche d'un moyen de sélectionner les colonnes de mon dataframe dans pyspark. Pour la première ligne, je sais que je peux utiliser df.first()
mais vous ne savez pas sur les colonnes étant donné qu'ils font ont pas de noms de colonne.
J'ai 5 colonnes et souhaitez faire une boucle par le biais de chacun d'eux.
+--+---+---+---+---+---+---+
|_1| _2| _3| _4| _5| _6| _7|
+--+---+---+---+---+---+---+
|1 |0.0|0.0|0.0|1.0|0.0|0.0|
|2 |1.0|0.0|0.0|0.0|0.0|0.0|
|3 |0.0|0.0|1.0|0.0|0.0|0.0|
- que voulez-vous dire "ils n'ont pas de noms de colonne"? Veuillez nous faire part de la sortie de
df.show()
. - édité mon post. Je vois maintenant comment je pourrais le faire mais je suis encore un peu confus sur une boucle dans chaque colonne.
Vous devez vous connecter pour publier un commentaire.
Essayer quelque chose comme cela:
Deux premières colonnes et 5 lignes
Utilisation
df.schema.names
:La base de données dans
ss.csv
contient certaines colonnes je suis intéressé par:mais j'ai seulement besoin d'un peu d':
Le filtre renvoie la liste de colonnes, la liste est évaluée:
la liste de colonnes désirées est déballé comme arguments pour dataframe sélectionner la fonction qui retourne un dataset contenant que des colonnes de la liste:
Le résultat:
La
df.select()
a une paire complémentaire: http://spark.apache.org/docs/2.4.1/api/python/pyspark.sql.html#pyspark.sql.DataFrame.droppour supprimer la liste de colonnes.
Vous pouvez utiliser un tableau et de les placer à l'intérieur de la sélectionner:
Tout d'abord, votre schéma est créé par erreur lors de l'importation à partir de MySQL ou autre base de données.
vous pouvez utiliser le dictionnaire curseur pour modifier