DataFrame을 와이드 형식에서 긴 형식으로 피벗 해제하고 선택적으로 식별자 열을 설정합니다. 이는 역방향이 groupBy(...).pivot(...).agg(...)될 수 없는 집계를 제외하고 반대입니다.
Databricks Runtime 11.1에 추가됨
문법
unpivot(ids: Union["ColumnOrName", List["ColumnOrName"], Tuple["ColumnOrName", ...]], values: Optional[Union["ColumnOrName", List["ColumnOrName"], Tuple["ColumnOrName", ...]]], variableColumnName: str, valueColumnName: str)
매개 변수
| 매개 변수 | 유형 | 설명 |
|---|---|---|
ids |
str, Column, tuple, list | 식별자로 사용할 열입니다. 단일 열 또는 열 이름 또는 여러 열에 대한 목록 또는 튜플일 수 있습니다. |
values |
str, Column, tuple, list, optional | 피벗 해제할 열입니다. 단일 열 또는 열 이름 또는 여러 열에 대한 목록 또는 튜플일 수 있습니다. 지정한 경우 비어 있으면 안 됩니다. 지정하지 않으면 로 설정 ids되지 않은 모든 열을 사용합니다. |
variableColumnName |
str | 변수 열의 이름입니다. |
valueColumnName |
str | 값 열의 이름입니다. |
Returns
DataFrame: 피벗 해제된 데이터 프레임입니다.
Notes
Spark Connect를 지원합니다.
예제
df = spark.createDataFrame(
[(1, 11, 1.1), (2, 12, 1.2)],
["id", "int", "double"],
)
df.show()
# +---+---+------+
# | id|int|double|
# +---+---+------+
# | 1| 11| 1.1|
# | 2| 12| 1.2|
# +---+---+------+
from pyspark.sql import functions as sf
df.unpivot(
"id", ["int", "double"], "var", "val"
).sort("id", sf.desc("var")).show()
# +---+------+----+
# | id| var| val|
# +---+------+----+
# | 1| int|11.0|
# | 1|double| 1.1|
# | 2| int|12.0|
# | 2|double| 1.2|
# +---+------+----+