如何计算某组节点间的边数?
How to calculate the number of edges between nodes of a certain group?
我有以下数据集和以下脚本:
library(GGally)
library(ggnet)
library(network)
library(sna)
library(ggplot2)
# edgelist
e <- data.frame(sender = c(1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5),
receiver = c(2, 3, 4, 5, 1, 3, 1, 1, 2, 2, 4, 3, 2, 4))
# information about the nodes (vertices)
v <- data.frame(actors = c(1, 2, 3, 4, 5),
groups = c("A", "A", "B", "C", "D"))
net <- network(e, directed = TRUE)
x = data.frame(actors = network.vertex.names(net))
x = merge(x, v, by = "actors", sort = FALSE)$groups
net %v% "group" = as.character(x)
y = RColorBrewer::brewer.pal(9, "Set1")[ c(3, 1, 9, 6, 8) ]
names(y) = levels(x)
ggnet2(net, color = "group", palette = y, alpha = 0.75, size = 4, edge.alpha = 0.5, arrow.size = 8, arrow.gap = 0.01)
有没有一种简单快捷的方法来计算从节点组(A、B、C、D)到同一组节点或到另一组节点(即从 A-A、A-B)的边数, A-C, A-D, B-A 等)?
network-Package
中有network.edgecount
。但是如何将它应用到我的问题中呢?
network
中的 mixingmatrix
函数可以解决问题。它显示组内和组间的联系数量,达到同质性和分类混合。
> mixingmatrix(net, "group")
To
From A B C D Total
A 3 2 1 1 7
B 3 0 1 0 4
C 1 1 0 0 2
D 0 0 1 0 1
Total 7 3 3 1 14
我有以下数据集和以下脚本:
library(GGally)
library(ggnet)
library(network)
library(sna)
library(ggplot2)
# edgelist
e <- data.frame(sender = c(1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5),
receiver = c(2, 3, 4, 5, 1, 3, 1, 1, 2, 2, 4, 3, 2, 4))
# information about the nodes (vertices)
v <- data.frame(actors = c(1, 2, 3, 4, 5),
groups = c("A", "A", "B", "C", "D"))
net <- network(e, directed = TRUE)
x = data.frame(actors = network.vertex.names(net))
x = merge(x, v, by = "actors", sort = FALSE)$groups
net %v% "group" = as.character(x)
y = RColorBrewer::brewer.pal(9, "Set1")[ c(3, 1, 9, 6, 8) ]
names(y) = levels(x)
ggnet2(net, color = "group", palette = y, alpha = 0.75, size = 4, edge.alpha = 0.5, arrow.size = 8, arrow.gap = 0.01)
有没有一种简单快捷的方法来计算从节点组(A、B、C、D)到同一组节点或到另一组节点(即从 A-A、A-B)的边数, A-C, A-D, B-A 等)?
network-Package
中有network.edgecount
。但是如何将它应用到我的问题中呢?
network
中的 mixingmatrix
函数可以解决问题。它显示组内和组间的联系数量,达到同质性和分类混合。
> mixingmatrix(net, "group")
To
From A B C D Total
A 3 2 1 1 7
B 3 0 1 0 4
C 1 1 0 0 2
D 0 0 1 0 1
Total 7 3 3 1 14