Chapter 24 Upsets
We could consider an upset if the winner rank is greater than the loser rank by at least 10. We plot the ranking difference between winners and losers for the grand slams.
24.1 Players causing upsets in Grand Slam Finals
We observe that the upsets are few in Grand Slams Finals. But some of them are there and lets find out what they are.
Venus Williams has created Two upsets in Grand Slam Finals.2017 saw an upset in the US Open when Sloane Stephens defeated Venus Williams in the semifinals and Madison Keys in the finals.
grandslamupsets = grandslam %>%
filter(rankingdiff < -10) %>%
select(winner_name,loser_name,winner_rank,loser_rank,tourney_name,year)
plotUpsets = function(upsetsData,titleName)
{
upsetsData %>%
group_by(winner_name) %>%
summarise(Count = n()) %>%
arrange(desc(Count)) %>%
ungroup() %>%
mutate(winner_name = reorder(winner_name,Count)) %>%
head(10) %>%
ggplot(aes(x = winner_name,y = Count)) +
geom_bar(stat='identity',colour="white",fill=fillColor2) +
geom_text(aes(x = winner_name, y = 1, label = paste0("(",Count,")",sep="")),
hjust=0, vjust=.5, size = 4, colour = 'black',
fontface = 'bold') +
labs(x = titleName,
y = 'Count',
title = titleName) +
coord_flip() +
theme_bw()
}
plotUpsets(grandslamupsets,'Upset Winner in Grand Slam Finals')
kable(grandslamupsets,"html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
scroll_box(width = "800px")
winner_name | loser_name | winner_rank | loser_rank | tourney_name | year |
---|---|---|---|---|---|
Jennifer Capriati | Martina Hingis | 14 | 1 | Australian Open | 2001 |
Serena Williams | Maria Sharapova | 81 | 2 | Australian Open | 2007 |
Venus Williams | Lindsay Davenport | 16 | 1 | Wimbledon | 2005 |
Venus Williams | Marion Bartoli | 31 | 19 | Wimbledon | 2007 |
Sloane Stephens | Madison Keys | 83 | 16 | US Open | 2017 |
# kable(grandslamupsets,"html") %>%
# kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
# scroll_box(width = "800px")
24.2 Upsets in Grand Slam SemiFinals
Williams sisters in action again creating upsets in Grand Slam semi Finals.
grandslamSF =getGrandSlamWinners('SF')
grandslamupsets = grandslamSF %>%
filter(rankingdiff < -10) %>%
select(winner_name,loser_name,winner_rank,loser_rank,tourney_name,year)
plotUpsets(grandslamupsets,'Upset Winner in Grand Slam Semi Finals')
kable(grandslamupsets,"html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
scroll_box(width = "800px")
winner_name | loser_name | winner_rank | loser_rank | tourney_name | year |
---|---|---|---|---|---|
Jennifer Capriati | Lindsay Davenport | 14 | 2 | Australian Open | 2001 |
Venus Williams | Maria Sharapova | 16 | 2 | Wimbledon | 2005 |
Serena Williams | Nicole Vaidisova | 81 | 12 | Australian Open | 2007 |
Marion Bartoli | Justine Henin | 19 | 1 | Wimbledon | 2007 |
Venus Williams | Ana Ivanovic | 31 | 6 | Wimbledon | 2007 |
Francesca Schiavone | Elena Dementieva | 17 | 5 | French Open | 2010 |
Serena Williams | Caroline Wozniacki | 27 | 1 | US Open | 2011 |
Sara Errani | Samantha Stosur | 24 | 6 | French Open | 2012 |
Sabine Lisicki | Agnieszka Radwanska | 24 | 4 | Wimbledon | 2013 |
Dominika Cibulkova | Agnieszka Radwanska | 24 | 5 | Australian Open | 2014 |
Roberta Vinci | Serena Williams | 43 | 1 | US Open | 2015 |
Flavia Pennetta | Simona Halep | 26 | 2 | US Open | 2015 |
Jelena Ostapenko | Timea Bacsinszky | 47 | 31 | Roland Garros | 2017 |
Sloane Stephens | Venus Williams | 83 | 9 | US Open | 2017 |
24.3 Upsets in T1 tournaments
getTournamentWinners = function(tourney_level_name,roundname)
{
return(
matches %>%
filter(tourney_level == tourney_level_name) %>%
filter(round == roundname) %>%
mutate(agediff = winner_age - loser_age) %>%
mutate(rankingdiff = loser_rank - winner_rank)
)
}
T1Winners = getTournamentWinners('T1','F')
T1upsets = T1Winners %>%
filter(rankingdiff < -10) %>%
select(winner_name,loser_name,winner_rank,loser_rank,tourney_name,year)
plotUpsets(T1upsets,'Upset Winner in T1 tournament Finals')
kable(T1upsets,"html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
scroll_box(width = "800px")
winner_name | loser_name | winner_rank | loser_rank | tourney_name | year |
---|---|---|---|---|---|
Jelena Dokic | Amelie Mauresmo | 23 | 6 | Rome | 2001 |
Daniela Hantuchova | Martina Hingis | 26 | 4 | Indian Wells | 2002 |
Magdalena Maleeva | Lindsay Davenport | 23 | 8 | Moscow | 2002 |
Iva Majoli | Patty Schnyder | 58 | 30 | Charleston | 2002 |
Alicia Molik | Maria Sharapova | 20 | 7 | Zurich | 2004 |
Kim Clijsters | Maria Sharapova | 38 | 3 | Miami | 2005 |
Kim Clijsters | Lindsay Davenport | 133 | 1 | Indian Wells | 2005 |
Justine Henin | Elena Dementieva | 43 | 5 | Charleston | 2005 |
Anna Chakvetadze | Nadia Petrova | 24 | 5 | Moscow | 2006 |
Daniela Hantuchova | Svetlana Kuznetsova | 18 | 4 | Indian Wells | 2007 |
Serena Williams | Justine Henin | 18 | 1 | Miami | 2007 |
Ana Ivanovic | Svetlana Kuznetsova | 16 | 4 | Berlin | 2007 |
24.4 Upsets in T2 tournaments
T2Winners = getTournamentWinners('T2','F')
T2upsets = T2Winners %>%
filter(rankingdiff < -10) %>%
select(winner_name,loser_name,winner_rank,loser_rank,tourney_name,year)
plotUpsets(T2upsets,'Upset Winner in T2 tournament Finals')
kable(T2upsets,"html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
scroll_box(width = "800px")
winner_name | loser_name | winner_rank | loser_rank | tourney_name | year |
---|---|---|---|---|---|
Chanda Rubin | Anastasia Myskina | 37 | 19 | Eastbourne | 2002 |
Chanda Rubin | Lindsay Davenport | 21 | 9 | Los Angeles | 2002 |
Ai Sugiyama | Kim Clijsters | 25 | 3 | Scottsdale | 2003 |
Elena Dementieva | Lindsay Davenport | 21 | 5 | Amelia Island | 2003 |
Justine Henin | Svetlana Kuznetsova | 22 | 7 | Warsaw | 2005 |
Dinara Safina | Amelie Mauresmo | 48 | 4 | Paris | 2005 |
Maria Kirilenko | Anna Lena Groenefeld | 45 | 30 | Beijing | 2005 |
Alona Bondarenko | Francesca Schiavone | 62 | 14 | Luxembourg | 2006 |
Tatiana Golovin | Nadia Petrova | 20 | 7 | Amelia Island | 2007 |
Agnes Szavay | Jelena Jankovic | 23 | 3 | Beijing | 2007 |
Aleksandra Wozniak | Marion Bartoli | 85 | 15 | Stanford | 2008 |
Caroline Wozniacki | Anna Chakvetadze | 22 | 11 | New Haven | 2008 |