scala - 在行中插入值(Spark - Scala)
问题描述
我想创建一行(对于任何给定的k)这样 -
对于 k =2,图形将是 [Row(1,2), Row(3,4)]
对于 k =3,图形将是 [Row(1,2,3), Row(4,5,6), Row(7,8,9)]
我是 scala 的新手,不知道如何准确地在这样的行中插入值。
import org.apache.spark.sql.Row
var graph = ArrayBuffer[Row]()
val k = 3
val k2 = k * k
for (a <- 1 to k2) {
graph += Row(a)
}
解决方案
val k = 3
val range = ArrayBuffer.range(1, k*k + 1)
val rows = range.map(v => Row(v))
val grouped = rows.grouped(k).toBuffer
推荐阅读
- spring-boot - 覆盖 thymeleaf templateEngine 配置在 Spring Boot 2.1.8 中停止工作
- reactjs - 在 Meteor.call 之后在 saga watcher 中调度动作
- reactjs - 在订阅页面和订单页面上使用贝宝智能按钮时,它显示错误“不要同时传递 createSubscription 和 createOrder”
- qt - 覆盆子交叉编译:在 qt5 cmake 项目中执行 moc 或 rcc 时找不到 libz.so.1
- java - 如何在片段更新时更新工具栏标题
- laravel - Laravel 没有数据库连接
- javascript - 在 Angular 中签入组件为空
- html - 可以 HTML
- .htaccess - 从 URL 中删除 SID=XYZ 但保留所有其他参数
- java - Spring Controller 不通过 RequestBody 或 RequestParam 接收文件