我有一个具有3000个顶点和4000个边的igraph对象。顶点和边都有属性。
顶点属性之一是city,具有所有顶点的有效输入。
我想选择生活在十大最常见城市中的所有顶点,并为这些城市创建一个新的图表。我知道这十大城市是什么。
当我对一个城市这样做的时候,效果很好:
new_graph<-induced.subgraph(old_graph, which(V(old_graph$city=="LOS ANGELES")然而,我确实想把另外9个城市纳入new_graph。
我可以在这里简单地扩展我的which论点吗?或者我应该写一个loop
有人有什么想法吗?任何帮助都将不胜感激!
发布于 2014-06-12 18:54:16
您可以使用%in%运算符来匹配列表中的任何值,而不是测试是否相等。只管用
new_graph<-induced.subgraph(old_graph,
which(V(old_graph)$city %in% c("LOS ANGELES","BOSTON","KALAMAZOO")))发布于 2014-06-12 19:18:40
也许更易读,您可以避免使用which
new_graph <- induced.subgraph(old_graph,
V(old_graph)[ city %in% c("LOS ANGELES", "BOSTON", "KALAMAZOO") ])https://stackoverflow.com/questions/24190599
复制相似问题