是否有统计上合理的方法将网络中的中心性分数转换为比率?
Are there any statistically sound ways to convert centrality scores in networks to rates?
现在,我正在寻找球员在各自曲棍球队中的介数中心性。由于一些玩家可能会打 60 场比赛而其他人可能会打 20 场比赛,因此打 60 场比赛的球员几乎总是(可以理解)具有更高的介数中心性。但是,我正在尝试想办法将所玩游戏数量的中心性归一化,这样我就可以比较不同玩家的影响力,同时考虑他们玩游戏的频率。
我试过除以玩过的游戏,但这仍然低估了玩更多游戏的附加效果(查看图表)。
第一个图表是玩过的游戏与总(累积)介数
第二张图表是玩过的游戏与每玩过的游戏的介数(仍然是正斜率)
理想情况下,我不希望玩过的游戏和归一化介数中心性之间存在任何关系,这样我就可以比较玩家,而不管他们玩了多少游戏。有什么想法吗?
您没有提供任何数据,因此我将使用内置数据集来帮助您。
数据集是 mtcars
,假设 cyl
代表游戏数量,disp
代表你的中心分数。
你可以看到这个情节中的关系
library(tidyverse)
# plot cyl against disp
mtcars %>%
ggplot(aes(cyl, disp))+
geom_point()+
geom_smooth(method = "lm")
玩过的游戏(即 cyl
)与中心性分数(即 disp
)相关。
然后你可以像这样创建新乐谱
# build the model
m = lm(disp~cyl, data = mtcars)
# use model to get estimated disp at a given cyl value
mtcars$pred_disp = predict(m, newdata = mtcars)
# calculate the difference
mtcars$diff = mtcars$disp - mtcars$pred_disp
并绘制新分数以查看它们与玩过的游戏不相关
# plot cyl against diff
mtcars %>%
ggplot(aes(cyl, diff))+
geom_point()+
geom_smooth(method = "lm")
玩过的游戏(即 cyl
)与新的中心性分数(即 diff
)无关。
此外,再次检查数据集 mtcars
,重点关注创建的新变量。预期的中心性得分(即 pred_disp
)与预期的每个游戏数值(即 cyl
)相同。新的中心性分数(即 diff
)是旧的中心性分数减去预期的分数。正的新分数意味着玩家的中心性高于该游戏数的预期中心性。负的新分数意味着相反。
请注意,如果需要,您可以对变量 diff
做一些进一步的规范化(例如,取值从 -1 到 1)。
现在,我正在寻找球员在各自曲棍球队中的介数中心性。由于一些玩家可能会打 60 场比赛而其他人可能会打 20 场比赛,因此打 60 场比赛的球员几乎总是(可以理解)具有更高的介数中心性。但是,我正在尝试想办法将所玩游戏数量的中心性归一化,这样我就可以比较不同玩家的影响力,同时考虑他们玩游戏的频率。
我试过除以玩过的游戏,但这仍然低估了玩更多游戏的附加效果(查看图表)。
第一个图表是玩过的游戏与总(累积)介数
第二张图表是玩过的游戏与每玩过的游戏的介数(仍然是正斜率)
理想情况下,我不希望玩过的游戏和归一化介数中心性之间存在任何关系,这样我就可以比较玩家,而不管他们玩了多少游戏。有什么想法吗?
您没有提供任何数据,因此我将使用内置数据集来帮助您。
数据集是 mtcars
,假设 cyl
代表游戏数量,disp
代表你的中心分数。
你可以看到这个情节中的关系
library(tidyverse)
# plot cyl against disp
mtcars %>%
ggplot(aes(cyl, disp))+
geom_point()+
geom_smooth(method = "lm")
cyl
)与中心性分数(即 disp
)相关。
然后你可以像这样创建新乐谱
# build the model
m = lm(disp~cyl, data = mtcars)
# use model to get estimated disp at a given cyl value
mtcars$pred_disp = predict(m, newdata = mtcars)
# calculate the difference
mtcars$diff = mtcars$disp - mtcars$pred_disp
并绘制新分数以查看它们与玩过的游戏不相关
# plot cyl against diff
mtcars %>%
ggplot(aes(cyl, diff))+
geom_point()+
geom_smooth(method = "lm")
cyl
)与新的中心性分数(即 diff
)无关。
此外,再次检查数据集 mtcars
,重点关注创建的新变量。预期的中心性得分(即 pred_disp
)与预期的每个游戏数值(即 cyl
)相同。新的中心性分数(即 diff
)是旧的中心性分数减去预期的分数。正的新分数意味着玩家的中心性高于该游戏数的预期中心性。负的新分数意味着相反。
请注意,如果需要,您可以对变量 diff
做一些进一步的规范化(例如,取值从 -1 到 1)。