Aller au contenu principal

Classe de ligne

Une ligne dans un DataFrame. Les champs qu'il contient sont accessibles :

  • comme les attributs (row.key)
  • comme les valeurs de dictionnaire (row[key])

key in row recherchera parmi les clés de ligne.

Une ligne peut être utilisée pour créer un objet ligne en utilisant des arguments nommés. Il n'est pas autorisé d'omettre un argument nommé pour représenter que la valeur est None ou manquante. Ceci doit être explicitement défini sur None dans ce cas.

Modifié dans Databricks Runtime 7.4 : les lignes créées à partir d’arguments nommés n’ont plus leurs noms de champ triés par ordre alphabétique et sont ordonnées selon la position de saisie.

Syntaxe

Python
from pyspark.sql import Row

Row(tuple)

parameter

parameter

Type

Description

tuple

tuple

Les éléments de la ligne

parameter

Type

Description

tuple

tuple

Les éléments de la ligne

Méthodes

Méthode

Description

asDict(recursive)

Retourne la ligne comme Dict[str, Any].

Méthode

Description

asDict(recursive)

Retourne la ligne comme Dict[str, Any].

Exemples

Utilisation d'arguments nommés

Python
from pyspark.sql import Row
row = Row(name="Alice", age=11)
row
# Row(name='Alice', age=11)
row['name'], row['age']
# ('Alice', 11)
row.name, row.age
# ('Alice', 11)
'name' in row
# True
'wrong_key' in row
# False

Création de classes de lignes

Row peut également être utilisée pour créer une autre classe de type Row, puis elle pourrait être utilisée pour créer des objets Row :

Python
Person = Row("name", "age")
Person
# <Row('name', 'age')>
'name' in Person
# True
'wrong_key' in Person
# False
Person("Alice", 11)
# Row(name='Alice', age=11)

Ce formulaire peut également être utilisé pour créer des lignes en tant que valeurs de tuple, avec des champs sans nom :

Python
row1 = Row("Alice", 11)
row2 = Row(name="Alice", age=11)
row1 == row2
# True