首页 > 解决方案 > 如何在 Zeppelin 中将数据帧转换为 rdd 以使用 graphX

问题描述

我想在 zeppelin 中使用 graphX 和我的数据框

首先,我的数据框如下。

+---+-----+---+
| id| name|age|
+---+-----+---+
|  a|   AA| 34|
|  b|   BB| 36|
|  c|   CC| 30|
|  d|   DD| 29|
|  e|   EE| 32|
|  f|   FF| 36|
|  g|   GG| 60|
+---+-----+---+

所以我想将此数据帧转换为 RDD,如下所示。

RDD[(id, (name, age))]

但我不知道如何转换它。

标签: apache-sparkrddapache-zeppelinspark-graphx

解决方案


使用.rdd如下:

val result = df.rdd.map(row => (row(0).asInstanceOf[Int], (row(1).asInstanceOf[String], row(2).asInstanceOf[String])))

推荐阅读