SuperSportStats (SSStats)
Scripts for generating sport statistics
version 1.1
Author: Oleg Marin       
Freeware version download       Freeware version in action
1. Общее описание
2. Скрипт в действии
3. Инсталляция
4. Описание возможностей
4.1 Поиск и отбор данных
4.2 Группировка данных
4.3 Вычисляемые параметры
4.4 Freeware version
5. Описание формата входных данных
6. Модификация дизайна таблиц
7. Примеры генерации статистических форм

1. Общее описание

Набор скриптов SSStats предназначен для поиска и отбора данных результатов игр для различных видов спорта, группировки этих данных и вычисления различных статистических параметров на множестве отобранных данных. Критерии поиска, необходимые группировки и вычисляемые параметры задаются с помощью гибких, настраиваемых форм. Анализируемые данные представляют собой результаты игр, которые содержат играющие команды, счет игры, возможно, коэффициенты предпочтения команд (sides) и вероятный суммарный счет (total). Последние коэффициенты обычно определяются экспертами до начала игр и могут использоваться для группировки по признаку предпочтительности команды (favorite-underdog) до начала игры. Данные выдаются в четырех форматах:

Имеются наборы скриптов для следующих видов спорта:
MLB, NFL, NBA

2. Скрипт в действии

USA Sports:

3. Инсталляция

Для установки необходимо задать в конфигурационном скрипте confstats.pl три директории:

Для скриптов и данных необходимо установить соответствующие разрешения: для скриптов - на чтение и выполнение, для файлов данных - на чтение.

Файлы данных имеют следующие имена.

4. Описание возможностей

4.1. Поиск и отбор данных

Поиск и отбор игр осуществляется по следующим параметрам:

Отобранные игры могут выдаваться в виде ограниченного списка (ограничение количества задается в качестве параметра скрипта). Эти же отобранные игры участвуют в вычислениях для формирования статистики по командам и pitcher-ам (бейcбол). То есть при накоплении данных и вычислении параметров используются только эти отобранные игры. В частности в отбор можно включить все игры вообще или все игры за определенный год. Способность задавать различные критерии отбора для анализа возможностей победы одной команды над другой имеет чрезвычайно большое значение. Это дает возможность рассмотреть взаимное противостояние команд в различных условиях и более точно оценить вероятность выигрыша или проигрыша команды, чем использование каких-нибудь даже самых "мощных" (power) рейтингов.

4.2. Группировка данных

Группировка данных еще более увеличивает аналитические возможности данного скрипта, так как позволяет проводить сравнительный анализ однотипных данных (например WLT или Off, Def) в зависимости от тех или иных условий. В качестве таких условий для группировки данных можно использовать:

Например, группировка данных по признаку "Home-Away" позволяет оценить поведение команды в зависимости от того, где играла команда. При группировке по месяцам все вычисляемые параметры даются в разбивке по месяцам, и т.д. Группировка данных может быть многоуровневой, до трех уровней. Таким образом можно, например, получить данные в разбивке сначала по годам а внутри каждого года, по признаку места игры "Home-Away". При выводе отчета на дисплей можно задавать не все возможные колонки, которые должны быть выведены в результате группировки, а только те, которые необходимо в данном конкретном случае.

Группировка по командам имеет особое значение поскольку позволяет получить статистические данные по парам команд. Дело в том, что вертикальная группировка данных уже является группировкой по командам. Поэтому дополнительная группировка (по горизонтали) по командам позволяет получить таблицу, в которой и по вертикали и по горизонтали данные сгруппированы по командам и, таким образом, в каждой ячейке находятся данные характеризующие игру одной конкретной команды против другой конкретной команды.

Группировка данных может быть вообще не указана. В этом случае данные вычисляются вне зависимости от каких бы то ни было признаков по всему множеству отобранных игр.

4.3. Вычисляемые данные

Скрипт позволяет вычислять следующие данные на множестве отобранных игр:

Offensive Power - среднее число очков набранное командой во все отобранных играх. Характеризует наступательные возможности команды, то есть умение набирать очки.

Defensive Power - среднее число очков набранное противником во все отобранных играх. Характеризует защитные возможности команды, то есть умение препятствовать набору очков противником.

Spread - средняя разница в счете.

Team Score Points - общее число очков набранное командой во все отобранных играх. Характеризует наступательные возможности команды, то есть умение набирать очки. Сравни с Offensive Power.

Opponent Score Points - общее число очков набранное противником во все отобранных играх. Характеризует защитные возможности команды, то есть умение препятствовать набору очков противником. Cравни с Defensive Power.

Game Count - количество сыгранных командой игр, попавших в отобранные записи

Won Count - количество выигранных матчей

Lost Count - количество проигранных матчей

Tie Count - количество ничьих

WLT - комплексный параметр равный Won Count - Lost Count - Tie Count (здесть знак "-" не является знаком вычитания). Введен для удобства.

Pct - процент выигранных игр, равен Won Count*100/(Won Count + Lost Count)

Параметры "Average Score When Won","Average Score When Lost", "Average Score When Home","Average Score When Away" в некоторой степени дублируют возможности группировки данных (Won-Lost-Tie, Home-Away) и введены для удобства использования. "Average Total Score","Average Total Line" понятны без объяснения.

4.4. Freeware version

Freeware version имеет следующие ограничения:

5. Описание формата входных данных

В системе используются данные двух типов - информация о командах и информация об играх.

Файл с описанием команд содержит следующие данные:

Данные об одной команде располагаются в одной строке и разделены символом "|".

Файл с описанием игр содержит следующие данные:

Последние четыре пункта имеют смысл и даются только для бейсбола

Данные об одной игре располагаются в одной строке и разделены символом "|".

6. Модификация дизайна таблиц

Вид и дизайн таблиц определяются переменными конфигурационного файла confstats.pl и стилями в файле ssstats.css. Для таблицы, в которой выводятся отобранные игры, задается общая ширина (поскольку количество колонок фиксировано и не меняется). Для таблицы, в которой выводятся сгруппированные статистические данные задается ширина одной ячейки, а общая ширина таблицы вычисляется в соответствии с количеством колонок, которое выбрал пользователь для группировки данных.

7. Примеры генерации статистических форм

Для примера приведем несколько вариантов аналитических отчетов. Следуя по указанным URL вы сначала попадаете в форму, в которой определяется параметры поиска, группировки и вычисления данных. Нажав кнопку Show me Stats вы инициируете процесс генерации статистической формы.

1. В этом примере данные результатов игр за 1991 для каждой команды группируются в зависимости от того, играла команда дома или на выезде. Выводятся WLT и Pct параметры.

2. В этом примере данные результатов игр для Anaheim Angels там, где счет игры был больше 6, группируются по годам. Выводятся список игр и статистика по Off и Def параметрам.

3. В этом примере отбираются данные результатов игр Anaheim Angels против Baltimore Orioles за 2001, группируются по месяцам. Выводятся статистика команд по Off и Def параметрам и соответствующая статистика по pitcher-ам.