マップマッチングに関するこのオープンブックから例を取得しようとしています。私はscala 2.10とspark 2.0.2を使用しています。
残念ながら、構文と機能が変更されました。
case class NodeEntry(nodeId: Long, latitude: Double, longitude: Double, tags: Array[String])
val nodeDS = nodes.map{node =>
NodeEntry(node.getId,
node.getLatitude,
node.getLongitude,
node.getTags.map(_.getValue).toArray
)}.toDS.cache
「値マップは java.util.List[org.openstreetmap.osmosis.core.domain.v0_6.WayNode] のメンバーではありません」というエラーが表示されます
および「値 toDS は scala.collection.mutable.ArrayBuffer[Nothing] のメンバーではありません。考えられる原因: 「値 toDS」の前にセミコロンがない可能性がありますか?」
nodes.map を次のように変更しようとしました。
val nodeDS = nodes.map { node =>
NodeEntry(node.getId,
node.getLatitude,
node.getLongitude,
node.getTags.toArray()
)}
しかし、その後、このエラーが発生します: タイプの不一致。found : Array[Object] required: Array[String] 注: Object >: String ですが、クラス Array は型 T で不変です。_ >: String などのワイルドカード型を調べたい場合があります。(SLS 3.2.10)