首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在R中,我如何根据多属性分数从igraph对象生成子图?

在R中,我如何根据多属性分数从igraph对象生成子图?
EN

Stack Overflow用户
提问于 2014-06-12 17:37:36
回答 2查看 6.7K关注 0票数 5

我有一个具有3000个顶点和4000个边的igraph对象。顶点和边都有属性。

顶点属性之一是city,具有所有顶点的有效输入。

我想选择生活在十大最常见城市中的所有顶点,并为这些城市创建一个新的图表。我知道这十大城市是什么。

当我对一个城市这样做的时候,效果很好:

代码语言:javascript
运行
复制
new_graph<-induced.subgraph(old_graph, which(V(old_graph$city=="LOS ANGELES")

然而,我确实想把另外9个城市纳入new_graph

我可以在这里简单地扩展我的which论点吗?或者我应该写一个loop

有人有什么想法吗?任何帮助都将不胜感激!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-12 18:54:16

您可以使用%in%运算符来匹配列表中的任何值,而不是测试是否相等。只管用

代码语言:javascript
运行
复制
new_graph<-induced.subgraph(old_graph, 
  which(V(old_graph)$city %in% c("LOS ANGELES","BOSTON","KALAMAZOO")))
票数 7
EN

Stack Overflow用户

发布于 2014-06-12 19:18:40

也许更易读,您可以避免使用which

代码语言:javascript
运行
复制
new_graph <- induced.subgraph(old_graph, 
  V(old_graph)[ city %in% c("LOS ANGELES", "BOSTON", "KALAMAZOO") ])
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24190599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档