데이터 프레임 행을 열에 조인 할 수있는 방법이 있습니까? I는 입력으로 구조를 다음과 같은 한 : 행을 열로 전치 사용할 수있는 최적화 된 직접 API가있는 경우spark datframe, scala에서 행을 열로 변환하는 방법
val inputDF = Seq(("pid1","enc1", "bat"),("pid1","enc2", ""),("pid1","enc3", ""),("pid3","enc1", "cat"),("pid3","enc2", "")).toDF("MemberID", "EncounterID", "entry")
inputDF.show:
+--------+-----------+-----+
|MemberID|EncounterID|entry|
+--------+-----------+-----+
| pid1| enc1| bat|
| pid1| enc2| |
| pid1| enc3| |
| pid3| enc1| cat|
| pid3| enc2| |
+--------+-----------+-----+
expected result:
+--------+----------+----------+----------+-----+
|MemberID|Encounter1|Encounter2|Encounter3|entry|
+--------+----------+----------+----------+-----+
| pid1| enc1| enc2| enc3| bat|
| pid3| enc1| enc2| null| cat|
+--------+----------+----------+----------+-----+
제안하십시오. 내 입력 데이터 크기가 매우 커서, 수집과 같은 작업을 수행하면 드라이버의 모든 데이터를 취할 수 있기 때문에 수행 할 수 없습니다. Spark 2.x를 사용 중입니다.
'entry'가 모두 3 EncounterID'에 대한 값을 갖고 있다면 어떨까요? EncounterID가 3 개 밖에 없습니까? – philantrovert
항목에는 하나의 값만 있습니다. 예 EncounterID는 고정되어 있으며 EncounterID는 3 개입니다. – Kalpesh
이것이 결과라고 확신합니까? 세 Encounter 열은 항상 동일한 값을가집니다 ... – Oli