【发布时间】:2018-12-01 18:58:35
【问题描述】:
对于每个顶点,我对基于条件的相邻边的数量感兴趣。在以下示例中,条件是具有不同的性别。
例子:
library(igraph)
library(ggraph)
library(tidyverse)
nodes <- tibble(id = 1:4,
gender = c("M", "F", "F", "M"),
names = c("Bob", "Allie", "Mary", "Johnathon"))
edges <- tibble(from = c(1, 3, 2, 4, 1, 2, 1, 4),
to = c(2, 2, 4, 1, 3, 1, 4, 3))
network <- graph_from_data_frame(d = edges, vertices = nodes, directed = TRUE)
ggraph(network) +
geom_edge_link(arrow = arrow(length = unit(4,
'mm')),
start_cap = circle(4, 'mm'),
end_cap = circle(4, 'mm')) +
geom_node_text(aes(label = names)) +
theme_graph()
想要的结果:
id name adjacent_edges
1 Bob 1
2 Allie 1
3 Mary 2
4 Johnathon 1
【问题讨论】:
-
既然 Jonathan 在 Mary 和 Allie 旁边,为什么您的预期答案中有 Jonathan = 1? Bob 和 Allie 似乎也错了。
-
您的代码似乎与您之前已删除的问题中的代码相同。现在情节和期望的结果不同了,但不一致的地方似乎是一样的......最终你似乎确实关心方向,所以也许按照指示定义图表会修复你的例子?
-
是的,按照指示定义图形有望使事情变得清晰。谢谢!