我有一个带有列的数据框:user, address1, address2, address3, phone1, phone2依此类推.我想将此数据框转换为 - user, address, phone where address = Map("address1" -> address1.value, "address2" -> address2.value, "address3" -> address3.value)
我能够使用以下列将列转换为映射:
val mapData = List("address1", "address2", "address3")
df.map(_.getValuesMap[Any](mapData))
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将此添加到我的df.
我是spark和scala的新手,可以在这里使用一些帮助.
我可以从spark-shell访问hive表,但在提交作为工作的一部分时接收下面指定的异常:
val df = sqlContext.table("dbName.tableName")
Run Code Online (Sandbox Code Playgroud)
线程"main"中的异常org.apache.spark.sql.AnalysisException:临时表不允许指定数据库名称或其他限定符.如果表名中有点(.),请用反引号(`)引用表名.
请让我知道如何解决这个问题.