使用 Altova MissionKit 分析足球统计数据

本文利用来自NFL.comESPN.com的统计数据,旨在展示如何轻松地处理和分析在线数据,即使这些数据使用了不同的指标,并且仅以文本格式提供。在之前的博文中,我们已经看到如何轻松地从互联网上收集大量以XML格式提供的数据。但对于那些在线提供但未以XML格式提供,或者被埋藏在旧数据处理系统中,仅以文本报告形式提供的数据,该如何处理呢?

一个例子是四分卫的评分系统。 美国国家橄榄球联盟(NFL)使用一种名为“传球效率评级”的指标,该指标仅根据四分卫的传球完成次数、传球尝试次数、达阵次数和失误次数来评估其表现。 今年,ESPN推出了一种新的评分系统,名为“总四分卫评分”(Total QBR)。 “Total QBR”指标包含了更多的数据,例如预期得分平均值和关键时刻表现指数,ESPN声称这些数据能够更准确地衡量一名四分卫的表现。 让我们比较这些系统生成的排名结果,看看是否能从中获得一些有用的信息。 在这个例子中,我们将使用 Altova MissionKit 的数据导入和分析工具,用于比较评分。 如果您想亲身体验一下,MissionKit 软件可以供您使用 免费试用30天,立即下载 来自 Altova 网站。 您可以在这里访问本示例中使用的文件。 首先,我们需要原始数据来进行分析。 我们以整个2010赛季的数据作为数据来源。 我们可以通过以下方式获取该表格: 来自NFL.com的帕塞尔球员评分 然后,复制并粘贴这段内容,将其保存为一个新的文本文件。

我们可以访问类似的内容 ESPN网站上发布的四分卫总评分排行榜 并创建一个新的文本文件。

现在我们有两个文本文件,其中包含以不同顺序排列的数据表格。下一步是将这些表格合并到一个文件中,并生成图表。首先,我们需要一个用于存储目标数据的模式文件。在XMLSpy中,我们可以快速且图形化地创建一个XSD文件,其中包含一系列QB节点,以及这些节点对应的子节点,例如:名、姓、球队、传球评分和排名,以及总QBR和排名。

现在,在MapForce中,我们打开文本文件,并使用FlexText功能来解析文本,将其转换成一个类别列表。

然后,我们使用 MapForce 创建一个映射文件,将文本文件中的数据映射到目标 XML 文件。 内置函数可以轻松地从“Player”字符串中提取姓名,并且一个值映射功能可以将球队简称转换为字符串(例如,将“ARI”转换为“亚利桑那红雀队”,将“ATL”转换为“亚特兰大猎鹰队”等)。 在测试我们的过滤器时,我们设置了“优先级上下文”,以确保为每个独特的四分卫获取正确的数据集。

一旦我们完成数据映射,我们就可以保存生成的 XML 数据文件,并在 StyleVision 中将其用作源文件,用于设计样式表。在这个样式表中,我们将创建一个表格,显示排名前十的球员,并使用图表直观地展示球员评分(Passer Rating)和总表现指标(Total QBR)。

现在,我们已经有了这两个评分系统排名情况的直观展示,我们可以分析它们的差异,并尝试判断哪个系统更有效。例如,佩顿·曼宁在传球评分中排名第十,但在总综合表现(Total QBR)中排名第二。这可以解释为,总综合表现考虑了关键时刻的表现,而佩顿·曼宁在2010赛季曾有过几次关键时刻的逆转。现在,我们已经收集到了一系列 文件(包括在 XMLSpy 中创建的 XSD 文件,以及从 MapForce 导入的 FlexText 和映射文件,以及在 StyleVision 中创建的样式表设计), 我们可以轻松地更新文本数据文件,以便分析新的四分卫数据。在赛季后期,我们可以用2011年的数据更新文本表格,然后让数据通过映射关系流入样式表,从而更新图表,并查看本赛季的排名。这个例子主要使用了NFL的数据,但这种方法可以很容易地应用于其他数据集和数据源,这些数据源可以以文本文件形式访问,也可以以其他格式提供。

您可以了解更多关于如何使用 Altova MissionKit 产品的知识,方法是参加我们的培训课程 免费的在线培训课程.