如何解决igraph 网络未在 R
我第一次尝试使用 igraph
,我有兴趣将某些分组属性添加到某些顶点,以便稍后使用此信息更改它们在图中的颜色。我试图制作的图形是一个电极连接网络。
我会尽量详细解释这个过程。
首先,我使用关联矩阵创建我的网络:
net <- graph_from_incidence_matrix(inc_mat)
> net
IGRAPH 92adce4 UN-B 50 422 --
+ attr: type (v/l),name (v/c)
+ edges from 92adce4 (vertex names):
[1] C3 --C4 C3 --CP1 C3 --CP6 C3 --Cz C3 --F3 C3 --F4 C3 --FC1 C3 --FC2 C3 --FC5 C3 --Fp1 C3 --Fp2
[12] C3 --Oz C3 --P3 C3 --P8 C3 --POz C4 --C3 C4 --CP1 C4 --CP2 C4 --CP5 C4 --Cz C4 --F4 C4 --F7
[23] C4 --F8 C4 --FC1 C4 --FC2 C4 --FC5 C4 --FC6 C4 --Fp2 C4 --Fz C4 --P3 C4 --P4 C4 --P7 C4 --P8
[34] CP1--C3 CP1--CP5 CP1--CP6 CP1--Cz CP1--F4 CP1--F7 CP1--FC1 CP1--FC2 CP1--FC5 CP1--Fp1 CP1--Fp2
[45] CP1--Oz CP1--P3 CP1--P7 CP1--POz CP1--Pz CP2--C3 CP2--C4 CP2--CP2 CP2--CP6 CP2--F4 CP2--F7
[56] CP2--FC2 CP2--FC6 CP2--Fp1 CP2--Fz CP2--Oz CP5--C3 CP5--C4 CP5--CP2 CP5--CP5 CP5--Cz CP5--F3
[67] CP5--F4 CP5--F8 CP5--FC2 CP5--FC5 CP5--Fp1 CP5--Fp2 CP5--Oz CP5--P3 CP5--P7 CP5--P8 CP5--POz
[78] CP6--C3 CP6--CP2 CP6--CP5 CP6--Cz CP6--F3 CP6--F4 CP6--F7 CP6--FC1 CP6--FC2 CP6--FC6 CP6--Fp1
+ ... omitted several edges
据我所知,这是我的图的边缘,没问题。现在我正在尝试为每个顶点添加一个分组属性,以便稍后调用该属性进行着色。例如,C3-C4-Cz 我想称它们为“cen”。为此,我准备了另一个数据框,其中包含与顶点相同数量的观测值,并以相同的顺序(在本例中为 50)用于此目的:
> head(vertexfam)
Elec1 Fam
1 C3 cen
2 C4 cen
3 CP1 cenp
4 CP2 cenp
5 CP5 cenp
6 CP6 cenp
现在,根据 documentation,我知道我可以逐个属性地直接执行此操作,例如 V(net)[1]$group <- "central"
,因此,我尝试使该过程自动化。
> V(net)
+ 50/50 vertices,named,from 92adce4:
[1] C3 C4 CP1 CP2 CP5 CP6 Cz F3 F4 F7 F8 FC1 FC2 FC5 FC6 Fp1 Fp2 Fz Oz P3 P4 P7 P8 POz Pz C3
[27] C4 CP1 CP2 CP5 CP6 Cz F3 F4 F7 F8 FC1 FC2 FC5 FC6 Fp1 Fp2 Fz Oz P3 P4 P7 P8 POz Pz
> for (i in 1:nrow(vertexfam)){
+ V(net)[i]$group <- vertexfam$Fam[i]
+ }
但是,一旦我检查属性是否已设置,结果不是预期的:
> V(net)$group[1]
[1] NA
顺便说一句,我也尝试过一一设置属性,但它似乎对我也不起作用。我也尝试使用基本属性设置机制 set_edge_attr(net,name = 'group',index = V(net),value = vertexfam$Fam)
并且结果是相同的。我的意图是对边缘也这样做,但首先我需要弄清楚错误是什么。
任何人都可以知道为什么会发生这种情况或我做错了什么吗?
非常感谢您的帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。