我正在研究StatsBomb FIFA世界杯18数据,并试图找出每支球队的核心球员。为此,我构建了一个通行证网络(有向图,其中玩家进行了通行,而玩家接受了通行证)。然后,我研究了各种中心度度量标准,以衡量最关键的参与者(关于游戏制作)
从本质上讲,有两种方法可以将数据呈现给算法。一种是在创建图形时将每个事件(通过)作为单独的行(两个节点之间的多个边)进行单独设置,另一种是通过传球者和接收者进行汇总,并根据玩家A传递给玩家B的次数赋予边缘权重等
查看强度得分时,结果完全相同。但是,仅此而已就没什么好意思了(击球手会收到很多球,但是他们不再向前传球那么多,所以不能说它们陷入了困境)
Betweenness-score更为合适,它计算球员X是球从A到B的桥梁的频率(以我对“ neestneess-measure”加权形式的最佳理解)
但是,这里的结果波动很大。每行一遍,两个节点之间的多个边给出合理的逻辑结果(这里,阿根廷对克罗地亚和梅西是仅次于防守者尼古拉·塔格里亚菲科,前锋阿圭罗和后来的伊瓜因的第二大中锋。记住,这场比赛对阿根廷来说是一场灾难:https://www.independent.co.uk/sport/football/world-cup/world-cup-2018-argentina-jorge-sampaoli-group-nigeria-lionel-messi-tactics-a8411031.html
然而,加权版本将伊瓜因(Sub Higuain)放在首位,并为阿奎罗(Aguero)和另外两个子迪巴拉(Dybala)/帕文(Pavon)提供了不错的成绩。这可能不对,但我不知道结果为何如此不同。在个人层面上,通行证的顺序是否重要?
这是我的R代码,需要通过devtools::install_github("statsbomb/StatsBombR")
从Github安装StatsBombR
library(StatsBombR)
library(dplyr)
library(igraph)
matches <- FreeMatches(43)
#download match events
match <- get.matchFree(matches[9,])
#take info about passes, remove non-pass events
passes <- select(match,player.name,pass.recipient.name,team.name)
passes <- na.omit(passes)
#teams in match
teams <- unique(passes$team.name)
#two ways of presenting data, pass-per-row or aggregated player-wise
teamPasses <- passes[passes$team.name==teams[2],1:2]
weightPasses <- teamPasses %>%
group_by(player.name, pass.recipient.name) %>%
summarise(weight=n())
#create graphs
net <- graph_from_data_frame(teamPasses, directed = TRUE)
net2 <- graph_from_data_frame(weightPasses, directed = TRUE)
E(net2)$weight <- weightPasses$weight
#scores
betweenness(net)
betweenness(net2)
strength(net, mode = "out")
strength(net2, mode = "out")
答案 0 :(得分:0)
strength()
:它们是相同的,只是顶点的顺序不同
all.equal(
sort(strength(net, mode="out")),
sort(strength(net2, mode="out"))
)
# TRUE
betweenness()
:在像下面两个这样的简单图形上进行解释比较容易:
el <- data_frame(
from = c("A", "B", "A", "D", "A"),
to = c("B", "C", "D", "C", "B")
)
g <- graph_from_data_frame(el)
elw <- el %>%
count(from, to) %>%
rename(weight=n)
gw <- graph_from_data_frame(elw)
plot(g)
在gw
中只有4个弧(g
中有5个弧),弧A-> B的权重为2,其他所有的权重为1。让我们关注B的中间度:
在多重图形g
中,它将为2/3,因为:
在加权图gw
中,它将为0,因为:
换句话说,在加权图中,最短路径实际上是“具有最小弧权重之和的路径”。从这个意义上说,您正在寻找球员传球最少的路径,这可能完全不是您所追求的。