Spark- GraphFrames 如何在connectedComponents中使用组件ID
Spark- GraphFrames How to use the component ID in connectedComponents
我试图找到所有连接的组件(在这个例子中,4 连接到 100,2 连接到 200 等)我使用 val g2 = GraphFrame(v2, e2)
val result2 = g2.connectedComponents.run()
并且 returns 节点一个组件 ID。我的问题是,如何使用此 ID 查看所有连接的节点?如何找出这个id属于哪个节点?非常感谢。我对此很陌生。
val v2 = sqlContext.createDataFrame(List(
("a",1),
("b", 2),
("c", 3),
("d", 4),
("e", 100),
("f", 200),
("g", 300),
("h", 400)
)).toDF("nodes", "id")
val e2= sqlContext.createDataFrame(List(
(4,100, "friend"),
(2, 200, "follow"),
(3, 300, "follow"),
(4, 400, "follow"),
(1, 100, "follow"),
(1,400, "friend")
)).toDF("src", "dst", "relationship")
在此示例中,我希望看到以下连接
----+----+
| 4| 400|
| 4| 100|
| 1| 400|
| 1| 100|
这是现在显示的结果
(1,1),(2,2),(3,1),(4,1), (100,1) (200,2) (300,3)(400,1)。我如何查看所有连接?
您已将 "a"、"b"、"c"... 声明为图的节点 ID,但后来使用 1、2、3... 作为节点 ID 以定义边。
您应该将节点 ID 更改为数字:1,2,3.. 在创建顶点数据框时,将该列命名为 "id" :
val v2 = sqlContext.createDataFrame(List(
("a",1),
("b", 2),
("c", 3),
("d", 4),
("e", 100),
("f", 200),
("g", 300),
("h", 400)
)).toDF("nodes", "id")
这应该会给你想要的结果。
我试图找到所有连接的组件(在这个例子中,4 连接到 100,2 连接到 200 等)我使用 val g2 = GraphFrame(v2, e2)
val result2 = g2.connectedComponents.run()
并且 returns 节点一个组件 ID。我的问题是,如何使用此 ID 查看所有连接的节点?如何找出这个id属于哪个节点?非常感谢。我对此很陌生。
val v2 = sqlContext.createDataFrame(List(
("a",1),
("b", 2),
("c", 3),
("d", 4),
("e", 100),
("f", 200),
("g", 300),
("h", 400)
)).toDF("nodes", "id")
val e2= sqlContext.createDataFrame(List(
(4,100, "friend"),
(2, 200, "follow"),
(3, 300, "follow"),
(4, 400, "follow"),
(1, 100, "follow"),
(1,400, "friend")
)).toDF("src", "dst", "relationship")
在此示例中,我希望看到以下连接
----+----+
| 4| 400|
| 4| 100|
| 1| 400|
| 1| 100|
这是现在显示的结果
(1,1),(2,2),(3,1),(4,1), (100,1) (200,2) (300,3)(400,1)。我如何查看所有连接?
您已将 "a"、"b"、"c"... 声明为图的节点 ID,但后来使用 1、2、3... 作为节点 ID 以定义边。
您应该将节点 ID 更改为数字:1,2,3.. 在创建顶点数据框时,将该列命名为 "id" :
val v2 = sqlContext.createDataFrame(List(
("a",1),
("b", 2),
("c", 3),
("d", 4),
("e", 100),
("f", 200),
("g", 300),
("h", 400)
)).toDF("nodes", "id")
这应该会给你想要的结果。