스파크 데이터 프레임의 모든 열 이름을 Seq 변수로 가져 오는 방법.스파크 데이터 프레임 열 목록 가져 오기
입력 데이터 & 스키마
val dataset1 = Seq(("66", "a", "4"), ("67", "a", "0"), ("70", "b", "4"), ("71", "d", "4")).toDF("KEY1", "KEY2", "ID")
dataset1.printSchema()
root
|-- KEY1: string (nullable = true)
|-- KEY2: string (nullable = true)
|-- ID: string (nullable = true)
내가 스칼라 프로그래밍을 사용하여 변수의 모든 열 이름을 저장해야합니다. 나는 아래와 같이 시도했지만, 작동하지 않는다.
val selectColumns = dataset1.schema.fields.toSeq
selectColumns: Seq[org.apache.spark.sql.types.StructField] = WrappedArray(StructField(KEY1,StringType,true),StructField(KEY2,StringType,true),StructField(ID,StringType,true))
예상 출력 :
val selectColumns = Seq(
col("KEY1"),
col("KEY2"),
col("ID")
)
selectColumns: Seq[org.apache.spark.sql.Column] = List(KEY1, KEY2, ID)
출력을 사용할 수 있도록
다음과 같은 operty 서열 [org.apache해야한다. spark.sql.Column] 대신 List [String]를 사용하십시오. – raam
@raam - 출력/열 이름으로 무엇을 하시겠습니까? 왜 그것들은 Columns 타입이어야 하는가? – Yaron
이 논리를 중간 result.so에 의해 구현하려면 열의 출력이 필요합니다. – raam