다음을 통해 공유


get

지정된(0부터 시작하는) 인덱스에서 배열의 요소를 반환합니다. 인덱스가 배열 경계를 벗어나면 이 함수는 NULL을 반환합니다. 위치는 1부터 시작하는 것이 아니라 0부터 시작하는 인덱스입니다.

문법

from pyspark.sql import functions as sf

sf.get(col, index)

매개 변수

매개 변수 유형 Description
col pyspark.sql.Column 또는 str 배열을 포함하는 열의 이름입니다.
index pyspark.sql.Column, str 또는 int 배열에서 확인할 인덱스입니다.

Returns

pyspark.sql.Column: 지정된 위치에 있는 값입니다.

예시

예제 1: 고정된 위치에 요소 가져오기

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

예제 2: 배열 경계 외부의 위치에 있는 요소 가져오기

from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(sf.get(df.data, 3)).show()
+------------+
|get(data, 3)|
+------------+
|        NULL|
+------------+

예제 3: 다른 열에 지정된 위치에 있는 요소 가져오기

from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"], 2)], ['data', 'index'])
df.select(sf.get(df.data, df.index)).show()
+----------------+
|get(data, index)|
+----------------+
|               c|
+----------------+

예제 4: 다른 열에서 계산된 위치에 있는 요소 가져오기

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

예제 5: 음수 위치에 요소 가져오기

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