2017-12-28 6 views
0

내가 코드를 아래에 쓰고, 나는 아래의 출력을 얻고있다스칼라 : 스칼라

val maplist=List(Map("id" -> "1", "Name" -> "divya"), 
     Map("id" -> "2", "Name" -> "gaya") 
     ) 

val header=maplist.flatMap(_.keys).distinct 
val data=maplist.flatMap(_.values) 
println(header) 
println(data) 

,

List(id, Name) 
List(1, divya, 2, gaya) 

그러나 나는 다음과 같이 출력을 기대하고,

를 사용하여지도의 목록을 인쇄하는 방법

ID 이름

1 디비

2 가야

이 경우 여기에서는 2 개의 헤더 만 있지만 내지도에는 모든 행을 표시하는 방법이 2 개 이상의 헤더를 포함 할 수 있습니다. 도와주세요.

답변

1
val maplist=List(Map("id" -> "1", "Name" -> "divya"), 
     Map("id" -> "2", "Name" -> "gaya") 
    ) 

    val header=maplist.flatMap(_.keys).distinct 
    val data=maplist.map(_.values) 
    println(header.mkString(" ")) 
    data.foreach(x => println(x.mkString(" "))) 
+0

println을 사용하여 출력을 인쇄하는 대신 데이터 프레임으로 변환하는 방법을 알려 주셔서 감사합니다. 출력을 표시하려면 .show() 함수를 사용해야합니다. – lak

+0

새 질문, 새 주제. –