我想创建社交网络的节点度分布的直方图。我有一个名为socialNetwork.csv
的文件,其中两列代表userA和userB之间的边缘。
以下是我将数据加载到igraph
:
library(igraph)
g = read.graph("c:\\Network.csv", format="ncol")
仅将degree(d)
的度数值列导出到csv文件的最佳方法是什么?
答案 0 :(得分:2)
你可以在原帖中提出几个不同的问题,所以也许澄清一下你想回答哪些问题以及你尝试过哪些问题会有所帮助。也就是说,下面列出了几个步骤,我相信这些步骤涵盖了你提到的大部分内容。
如果您已将图形加载到某个对象g
中,那么要创建度分布的直方图,请尝试:
hist(degree(g))
如果要将此信息导出到.csv文件,请尝试:
df_deg <- as.data.frame(table(degree(g)))
colnames(df_deg) <- c('degree','count')
write.csv(df_deg, file = 'degree_dist.csv')
或者如果您只想要我解释的“值”列表示按度数计算顶点的数量,那么请尝试代替上面的最后一行:
write.csv(df_deg[,2], file = 'degree_dist.csv')