Skip to contents
library(ussie)
library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union

The goal of ussie is to help you work with European Football League data. It uses data from the engsoccerdata package.

We can create a matches tibble using raw data from engsoccerdata:

matches_italy <- uss_make_matches(engsoccerdata::italy, "Italy")
glimpse(matches_italy)
#> Rows: 25,404
#> Columns: 8
#> $ country       <chr> "Italy", "Italy", "Italy", "Italy", "Italy", "Italy", "I…
#> $ tier          <fct> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ season        <int> 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 19…
#> $ date          <date> 1934-09-30, 1934-09-30, 1934-09-30, 1934-09-30, 1934-09…
#> $ home          <chr> "Lazio Roma", "Torino FC", "Sampierdarenese", "SSC Napol…
#> $ visitor       <chr> "US Livorno", "Unione Triestina", "Bologna FC", "US Ales…
#> $ goals_home    <int> 6, 3, 2, 0, 4, 0, 3, 1, 1, 1, 2, 4, 2, 2, 3, 2, 2, 2, 0,…
#> $ goals_visitor <int> 1, 1, 1, 1, 1, 2, 0, 2, 1, 1, 1, 0, 2, 1, 1, 0, 1, 1, 1,…

The function uss_get_matches() offers a cleaner implementation, also gets match data for specified country:

uss_get_matches("italy") |> 
  glimpse()
#> Rows: 25,404
#> Columns: 8
#> $ country       <chr> "Italy", "Italy", "Italy", "Italy", "Italy", "Italy", "I…
#> $ tier          <fct> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ season        <int> 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 19…
#> $ date          <date> 1934-09-30, 1934-09-30, 1934-09-30, 1934-09-30, 1934-09…
#> $ home          <chr> "Lazio Roma", "Torino FC", "Sampierdarenese", "SSC Napol…
#> $ visitor       <chr> "US Livorno", "Unione Triestina", "Bologna FC", "US Ales…
#> $ goals_home    <int> 6, 3, 2, 0, 4, 0, 3, 1, 1, 1, 2, 4, 2, 2, 3, 2, 2, 2, 0,…
#> $ goals_visitor <int> 1, 1, 1, 1, 1, 2, 0, 2, 1, 1, 1, 0, 2, 1, 1, 0, 1, 1, 1,…

We can add filtering conditions:

uss_get_matches("england", season == 1929) |> 
  glimpse()
#> Rows: 1,848
#> Columns: 8
#> $ country       <chr> "England", "England", "England", "England", "England", "…
#> $ tier          <fct> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ season        <int> 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 19…
#> $ date          <date> 1930-05-03, 1930-03-15, 1930-03-29, 1929-09-28, 1929-09…
#> $ home          <chr> "Arsenal", "Arsenal", "Arsenal", "Arsenal", "Arsenal", "…
#> $ visitor       <chr> "Aston Villa", "Birmingham City", "Blackburn Rovers", "B…
#> $ goals_home    <int> 2, 1, 4, 1, 6, 1, 4, 4, 2, 4, 1, 0, 3, 4, 1, 0, 1, 8, 2,…
#> $ goals_visitor <int> 4, 0, 0, 2, 1, 1, 0, 1, 0, 0, 1, 1, 2, 2, 2, 1, 2, 1, 3,…