微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将属性性别添加到边列表中的顶点

如何解决将属性性别添加到边列表中的顶点

我有一个生殖对的边缘列表,如下所示:

StringBuilder buf = new StringBuider(); for (String symbol : split) { if (symbol.equals(" ")) { buf.append(' '); } else { String str = morseCoder.get(split[i]); buf.append(str == null ? "�" : str); } } String message = buf.toString();

使用Igraph,我从数据中生成一个图,以对整个df进行绘制和运行一些分析:

male_ID=c(1,2,3,4,5),female_ID=c(6,7,8,9,10),a=cbind(male_ID,female_ID)

我的问题是,我现在是否可以基于边缘列表中列出的列为个人的性别添加一个属性(到颜色顶点)?

解决方法

您可以为图形对象分配组标签。

为创建组向量“性”,您的数据框建议您的男性和女性人数相同。 graph_from_data_frame()的mal_ID和female_ID列彼此堆叠,您可以使用igraph::V(g)进行检查。因此,您可以从该信息中得出组向量:


male_ID=c(1,2,3,4,5); female_ID=c(6,7,8,9,10); a=cbind(male_ID,female_ID)

#create graph object from dataframe
g <- igraph::graph_from_data_frame(a)

#investigate structure g
igraph::V(g)
#[1] 1  2  3  4  5  6  7  8  9  10

# create sex group vector
sex <- c(replicate(length(male_ID),"Male"),replicate(length(female_ID),"Female"))

#Check group values
print(igraph::V(g)$group)
# NULL

#assign groups
igraph::V(g)$group <- sex

#Check group values again
print(igraph::V(g)$group)
#[1] "Male"   "Male"   "Male"   "Male"   "Male"   "Female" "Female" "Female" "Female" "Female"

# I use visnetwork to visualise 
vis_g <- visNetwork::toVisNetworkData(g,idToLabel = TRUE) 

visNetwork::visNetwork(
  nodes = vis_g$nodes,edges = vis_g$edges
  )

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。