La prelucrarea datelor semi-structurate (ex. taguri de articole separate prin virgulă sau array-uri JSON), cele două funcții colaborează frecvent:
F.split(): Divizează un șir de caractere după un tipar regex și creează o coloană de tipArrayType.F.explode(): Creează câte un rând separat pentru fiecare element din array, duplicând celelalte atribute ale înregistrării părinte. Variantaexplode_outer()păstrează rândul cu valoareNULLdacă array-ul este gol.
Exemplu: Normalizarea etichetelor de produse din șir în rânduri individuale
from pyspark.sql import functions as F
# Pas 1: Împărțirea șirului "tech,laptop,gaming" într-un array:
df_array = df.withColumn("lista_taguri", F.split(F.col("etichete"), ","))
# Pas 2: Explodarea fiecărui tag pe un rând de sine stătător:
df_normalizat = df_array.withColumn("tag_individual", F.explode("lista_taguri"))
df_normalizat.select("id_produs", "tag_individual").show(10)
Întrebări & Exemple de Cod:
Procesarea Textelor și Liste cu F.split și F.explodeAi o nelămurire despre utilizarea comenzii
Procesarea Textelor și Liste cu F.split și F.explodesau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.