繁体   English   中英

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

[英]In R, how can I generate a subgraph from a igraph object based on multiple attribute scores?

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

其中一个顶点属性是city并且具有所有顶点的有效输入。

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

当我为一个城市这样做时,它工作正常:

new_graph<-induced.subgraph(old_graph, which(V(old_graph$city=="LOS ANGELES")

但是,我确实希望在new_graph包含另外9个城市。

我可以简单的程度我which说法吗? 或者我应该写一个loop

有没有人有想法? 任何帮助将不胜感激!

也许更具可读性,你可以避免which

new_graph <- induced.subgraph(old_graph, 
  V(old_graph)[ city %in% c("LOS ANGELES", "BOSTON", "KALAMAZOO") ])

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

new_graph<-induced.subgraph(old_graph, 
  which(V(old_graph)$city %in% c("LOS ANGELES","BOSTON","KALAMAZOO")))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM