例如,假设我有以下DataFrame:
有没有更好的方法来处理这个问题?也许可以使用DF模式吗?
var myDF = sc.parallelize(Seq(("one",1),("two",2),("three",3))).toDF("a", "b")
我可以通过map方法将其转换为RDD[(String, Int)]
:
var myRDD = myDF.map(r => (r(0).asInstanceOf[String], r(1).asInstanceOf[Int]))
有没有更好的方法来处理这个问题?也许可以使用DF模式吗?
as
函数非常完美。 - evan.omanRow
的模式匹配是否比我的asInstanceOf
映射更快或更安全?还是说这归结为一种相当类似的操作,只是语法更清晰? - evan.omanRow
(以及一般的DataFrame
)非常令人讨厌。使用Dataset
应该更有效率,特别是如果你不转换为RDD。 - zero323