私はJSONオブジェクトから作成されたデータフレームを持っています。私はこのデータフレームを照会して寄木張りに書き込むことができます。データフレームのスキーマを使用したスパークマップデータフレーム
私はスキーマを推論しているので、私は必ずしもデータフレームの内容を知る必要はありません。
独自のスキーマを使用して、データフレームを列名またはマッピングする方法はありますか?
// The results of SQL queries are DataFrames and support all the normal RDD operations.
// The columns of a row in the result can be accessed by field index:
df.map(t => "Name: " + t(0)).collect().foreach(println)
// or by field name:
df.map(t => "Name: " + t.getAs[String]("name")).collect().foreach(println)
// row.getValuesMap[T] retrieves multiple columns at once into a Map[String, T]
df.map(_.getValuesMap[Any](List("name", "age"))).collect().foreach(println)
// Map("name" -> "Justin", "age" -> 19)
私は、実際の量または列の名前を知らなくても
df.map (_.getValuesMap[Any](ListAll())).collect().foreach(println)
// Map ("name" -> "Justin", "age" -> 19, "color" -> "red")
ような何かをしたいと思います。
ya ..これはかなり驚くべきことです。私たちはケースクラスを提供するか、既存のDataFrameスキーマを使用する必要があります。私は同じ情報を探し回っています。 – javadba
'df.printSchema'のカラム名と推論(SQL)データ型が必要な場合 – Davos
sdoutへの印刷にはそれを必要としませんでした。後で処理するために必要でした。 – Havnar