向网络添加边权重。graphml

向网络添加边权重。graphml,r,network-programming,igraph,R,Network Programming,Igraph,我使用不同的R包来生成我的网络(素食者、二分体、Hmisc、IGRAPHE)。最后,我将.graphml格式的网络导入Cytoscape 3.4.0。 然后我选择文件>导入>网络>文件。 我加载网络,我可以正确地可视化它,但是当我想看到边的权重时,它们丢失了(在边表中)。。。我的目标是根据边缘的重量调整边缘的宽度 当我在文本编辑器中查看graphml文件时,它不包含边权重。对我来说,这意味着在我的R管道中缺少一个步骤来将边值添加到graphml文件中 总结一下我的管道 > mat=rcor

我使用不同的R包来生成我的网络(素食者、二分体、Hmisc、IGRAPHE)。最后,我将.graphml格式的网络导入Cytoscape 3.4.0。 然后我选择文件>导入>网络>文件。 我加载网络,我可以正确地可视化它,但是当我想看到边的权重时,它们丢失了(在边表中)。。。我的目标是根据边缘的重量调整边缘的宽度

当我在文本编辑器中查看graphml文件时,它不包含边权重。对我来说,这意味着在我的R管道中缺少一个步骤来将边值添加到graphml文件中

总结一下我的管道

> mat=rcorr(as.matrix(g)) #g is my OTU table
> matp=mat$P
> vec=p.adjust(matp,method="fdr")
> matpa=matrix(vec,nrow=100,ncol=100)
> matpa[matpa>.01]=0 
> matr=mat$r
> matr[(-0.6)<matr& matr<0.6]=0
我是R Studio的初学者,对igraph软件包中的所有功能都不太熟悉。我已经阅读了几次手册,但仍然不确定应该选择哪个功能

谢谢


Alice

为了澄清,igraph网络看起来不错,但当写入
graphml
格式时,它会丢失边权重?准确地说。在某种程度上,当我生成graphml文件时,边权重并不跟随。谷歌很快发现了这个()描述了边权重是以带有别名的graphml格式编码的,在本例中是
d1
。您需要共享graphml文件以便我们查看,最好是一个非常小的部分。谢谢!这是我在谷歌文档[link]上共享的一个文件
> matr2.c=as.matrix(matr2)
> net=graph.adjacency(matr2.c,weighted=T,mode="undirected",diag=F)
> net=delete.vertices(net,which(degree(net)<1)) 
> write.graph(net,"net.graphml",format=c("graphml"))