我是 scala 新手..我想知道在 Spark 中使用 scala 处理大型数据集时是否可以读取为 int RDD 而不是 String RDD
我尝试了以下方法:
val intArr = sc
.textFile("Downloads/data/train.csv")
.map(line=>line.split(","))
.map(_.toInt)
但我收到错误:
错误:值 toInt 不是以下成员Array[String]
我需要转换为 int rdd 因为接下来我需要执行以下操作
val vectors = intArr.map(p => Vectors.dense(p))
这要求类型为整数
非常感谢任何形式的帮助..提前致谢
据我了解,一行应该创建一个向量,所以它应该是这样的:
val result = sc
.textFile("Downloads/data/train.csv")
.map(line => line.split(","))
.map(numbers => Vectors.dense(numbers.map(_.toInt)))
numbers.map(_.toInt)
会将数组的每个元素映射为 int,因此结果类型将为Array[Int]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)