try_element_at

Koleksiyon işlevi: Verilen (1 tabanlı) dizindeki dizi öğesini veya bir eşlemedeki verilen anahtar için değeri döndürür. Diziler için dizin 0 ise Spark bir hata oluşturur. Dizin < 0 ise, öğelere en sondan birinciye erişir. Dizin dizinin uzunluğunu aşarsa işlev her zaman NULL döndürür. Eşlemeler için, anahtar haritada yer almadıysa işlev her zaman NULL döndürür.

İlgili Databricks SQL fonksiyonu için bakınız try_element_at fonksiyonu.

Sözdizimi

from pyspark.sql import functions as dbf

dbf.try_element_at(col=<col>, extraction=<extraction>)

Parametreler

Parametre Türü Description
col pyspark.sql.Column veya str Dizi veya eşleme içeren sütunun adı.
extraction pyspark.sql.Column veya str Dizide denetlenecek dizin veya eşlem içinde denetlenecek anahtar.

Örnekler

Örnek 1: Dizinin ilk öğesini alma

from pyspark.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(1))).show()
+-----------------------+
|try_element_at(data, 1)|
+-----------------------+
|                      a|
+-----------------------+

Örnek 2: Negatif dizin kullanarak dizinin son öğesini alma

from pyspark.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(-1))).show()
+------------------------+
|try_element_at(data, -1)|
+------------------------+
|                       c|
+------------------------+