Project 2

library(stringr)
library(rvest)
## Loading required package: xml2
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
library(tidyr)
library(kableExtra)
library(ggplot2)
library("RMySQL")
## Loading required package: DBI

Dataset 1

Wiki - List of Grand Slam men’s singles champions by Peter Kowalchuk

https://en.wikipedia.org/wiki/List_of_Grand_Slam_men%27s_singles_champions

The wiki page for the List of Grand Slam men’s singles champions shows a table with a list of all the winners of Grand Slam tournaments. It can be found at this url: https://en.wikipedia.org/wiki/List_of_Grand_Slam_men%27s_singles_champions

The table has 5 columns. The first is the year, and the following 4 are one for each Grand Slam tournament. Each row on the table constitutes an entry for the results, winner, for each of the four grand slam tournaments. If we revisit the guideline of what a tidy table is, we can quickly see that this table does not comply with such approach. In tidy, we should have columns for each variable, and the rows should represent observation entries. That is clearly not the case, as the column represent an actual characteristic of the observation. Observations being in this case the results of each tournament. On the table shown in wiki, there are columns for the tournament names, which breaks the tidy framework.

To have a tidy compliant table, we should have columns for variables. This can be achieved by setting our columns to: year, tournament name, player name. With these simple three columns, we can not enter on each row the results for each tournament. In fact, we could break out some of the information on the original table cells to add more columns with variables. For example, we could add another column with the player’s country, and another with the tournaments location. With this structure, we would add a row to the table each time a tournament is completed and the winner is known. We could even add other tournaments beyond Grand Slams like ATP Master tournaments. Another column that might be added is an identifier for the kind of tournament, tournament type for example. This might show GS for the original tournaments in wiki, and maybe ATPM for ATP Masters, EX for exhibition games, and so on.

But even with the original data in wiki, we can now do a lot more with the table in this new tidy form. We can for instance group rows in the table per country of winning player and calculate which country has won more tournaments. We can do the same with player names. We can also filter by tournament and run the same grouping and quickly know who has won specific tournaments the most. Knowing Wimbledon is played on grass and the French Open in clay, we can also know which country has the best clay or grass players, or which player specifically is better at a given surface.

By arranging the table into a tidy format, we are now able to extract a great amount of information from the same data presented in the original table. And on top of that we are able to expand the table to new tournaments or observations, and add characteristics or variables of these tournaments very easily. Not only is the table easier to use with existing data, we can now expand the tale beyond the data original contained in it.

url<-'https://en.wikipedia.org/wiki/List_of_Grand_Slam_men%27s_singles_champions'
webPage<- url %>% read_html()
#Using the selectorgadget in chrome we find the CSS selector to bring in the table as a vector
#The table in the html page is anot a clean table with cells so scrapping it with a table tag is not the right approach
vectorTable<-webPage %>% html_nodes('tr td') %>% html_text()
#build vector with string elements for each year
years<-paste(c(1877:2018))
#we trim vectorTable to be the size of the table if the table had names for all its rows
vectorTable<-vectorTable[1:(length(years)*5)]
#we find that the resulting vector includes elements which go bejond the table
#we trim the vector down to just the elements on the table
#find element position for each year in vectorTable, this tells us where the rows are
m<-match(years,vectorTable)
#find number of elements between years, if all 4 tournament data is present, then differene should be 5
#this tells us where the rows with complete data are
n<-diff(m)
#we copy all the years with complete tournament data on to a new vector 
x<-c()
i<-1
for (nn in n) {if (n[i]==5) {x<-c(x,vectorTable[m[i]:(m[i]+4)])}; i<-i+1}
x<-c(x,vectorTable[m[i]:(m[i]+4)])
#we copy the resulting vector with al the table rows with data on to a data frame using the new tidy table format -this is still a wide table
tblTable<-tbl_df(as.data.frame(matrix(x,nrow=length(x)/5,ncol=5,byrow = TRUE)))
#we assign proper column names to the data frame
tblTable<-setNames(tblTable,c('Year','Australian Open','French Open','Wimbledon','US Open'))
tblTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Australian Open French Open Wimbledon US Open
1877 started in 1905 started in 1891 GBR: Spencer Gore started in 1881
1878 tournament not created tournament not created Frank Hadow tournament not created
1879 tournament not created tournament not created John Hartley (1/2) tournament not created
1880 tournament not created tournament not created John Hartley (2/2) tournament not created
1881 tournament not created tournament not created William Renshaw (1/7) USA: Richard Sears (1/7)
1882 tournament not created tournament not created William Renshaw (2/7) Richard Sears (2/7)
1883 tournament not created tournament not created William Renshaw (3/7) Richard Sears (3/7)
1884 tournament not created tournament not created William Renshaw (4/7) Richard Sears (4/7)
1885 tournament not created tournament not created William Renshaw (5/7) Richard Sears (5/7)
1886 tournament not created tournament not created William Renshaw (6/7) Richard Sears (6/7)
1887 tournament not created tournament not created Herbert Lawford Richard Sears (7/7)
1888 tournament not created tournament not created Ernest Renshaw Henry Slocum (1/2)
1889 tournament not created tournament not created William Renshaw (7/7) Henry Slocum (2/2)
1890 tournament not created tournament not created Willoughby Hamilton Oliver Campbell (1/3)
1891 tournament not created H. Briggs * Wilfred Baddeley (1/3) Oliver Campbell (2/3)
1892 tournament not created FRA: Jean Schopfer * Wilfred Baddeley (2/3) Oliver Campbell (3/3)
1893 tournament not created Laurent Riboulet * Joshua Pim (1/2) Robert Wrenn (1/4)
1894 tournament not created André Vacherot * Joshua Pim (2/2) Robert Wrenn (2/4)
1895 tournament not created André Vacherot * Wilfred Baddeley (3/3) Fred Hovey
1896 tournament not created André Vacherot * Harold Mahony Robert Wrenn (3/4)
1897 tournament not created Paul Aymé * Reginald Doherty (1/4) Robert Wrenn (4/4)
1898 tournament not created Paul Aymé * Reginald Doherty (2/4) Malcolm Whitman (1/3)
1899 tournament not created Paul Aymé * Reginald Doherty (3/4) Malcolm Whitman (2/3)
1900 tournament not created Paul Aymé * Reginald Doherty (4/4) Malcolm Whitman (3/3)
1901 tournament not created André Vacherot * Arthur Gore (1/3) William Larned (1/7)
1902 tournament not created Michel Vacherot * Laurence Doherty (1/6) William Larned (2/7)
1903 tournament not created Max Decugis * Laurence Doherty (2/6) Laurence Doherty (3/6)
1904 tournament not created Max Decugis * Laurence Doherty (4/6) Holcombe Ward
1905 AUS: Rodney Heath (1/2) Maurice Germot * Laurence Doherty (5/6) Beals Wright
1906 NZL: Anthony Wilding (1/6) Maurice Germot * Laurence Doherty (6/6) William Clothier
1907 Horace Rice Max Decugis * Norman Brookes (1/3) William Larned (3/7)
1908 Fred Alexander Max Decugis * Arthur Gore (2/3) William Larned (4/7)
1909 Anthony Wilding (2/6) Max Decugis * Arthur Gore (3/3) William Larned (5/7)
1910 Rodney Heath (2/2) Maurice Germot * Anthony Wilding (3/6) William Larned (6/7)
1911 Norman Brookes (2/3) André Gobert * Anthony Wilding (4/6) William Larned (7/7)
1912 James Cecil Parke Max Decugis * Anthony Wilding (5/6) Maurice McLoughlin (1/2)
1913 Ernie Parker Max Decugis * Anthony Wilding (6/6) Maurice McLoughlin (2/2)
1914 Arthur O’Hara Wood Max Decugis * Norman Brookes (3/3) Richard Williams (1/2)
1915 Francis Lowe World War I World War I William Johnston (1/3)
1920 Pat O’Hara Wood (1/2) André Gobert * Bill Tilden (1/10) Bill Tilden (2/10)
1921 Rhys Gemmell Jean Samazeuilh * Bill Tilden (3/10) Bill Tilden (4/10)
1922 James Anderson (1/3) Henri Cochet * Gerald Patterson (2/3) Bill Tilden (5/10)
1923 Pat O’Hara Wood (2/2) †† François Blanchy * William Johnston (3/3) Bill Tilden (6/10)
1924 James Anderson (2/3) Jean Borotra * Jean Borotra (1/4) Bill Tilden (7/10)
1925 James Anderson (3/3) René Lacoste (1/7) ** René Lacoste (2/7) Bill Tilden (8/10)
1926 John Hawkes Henri Cochet (1/7) Jean Borotra (2/4) René Lacoste (3/7)
1927 Gerald Patterson (3/3)††† René Lacoste (4/7) Henri Cochet (2/7) René Lacoste (5/7)
1928 Jean Borotra (3/4) Henri Cochet (3/7) René Lacoste (6/7) Henri Cochet (4/7)
1929 John Gregory René Lacoste (7/7) Henri Cochet (5/7) Bill Tilden (9/10)
1930 Edgar Moon Henri Cochet (6/7) Bill Tilden (10/10) John Doeg
1931 Jack Crawford (1/6) Jean Borotra (4/4) Sidney Wood Ellsworth Vines (1/3)
1932 Jack Crawford (2/6) Henri Cochet (7/7) Ellsworth Vines (2/3) Ellsworth Vines (3/3)
1933 Jack Crawford (3/6) Jack Crawford (4/6) Jack Crawford (5/6) Fred Perry (1/8)
1934 Fred Perry (2/8) GER: Gottfried von Cramm (1/2) Fred Perry (3/8) Fred Perry (4/8)
1935 Jack Crawford (6/6) Fred Perry (5/8) Fred Perry (6/8) Wilmer Allison
1936 Adrian Quist (1/3) GER: Gottfried von Cramm (2/2) Fred Perry (7/8) Fred Perry (8/8)
1937 Vivian McGrath Henner Henkel Don Budge (1/6) Don Budge (2/6)
1938 Don Budge (3/6) Don Budge (4/6) Don Budge (5/6) Don Budge (6/6)
1939 John Bromwich (1/2) Don McNeill (1/2) Bobby Riggs (1/3) Bobby Riggs (2/3)
1940 Adrian Quist (2/3) Tournament canceled World War II Don McNeill (2/2)
1946 John Bromwich (2/2) Marcel Bernard Yvon Petra Jack Kramer (1/3)
1947 Dinny Pails HUN: József Asbóth Jack Kramer (2/3) Jack Kramer (3/3)
1948 Adrian Quist (3/3) Frank Parker (3/4) Bob Falkenburg Pancho Gonzales (1/2)
1949 Frank Sedgman (1/5) Frank Parker (4/4) Ted Schroeder (2/2) Pancho Gonzales (2/2)
1950 Frank Sedgman (2/5) Budge Patty (1/2) Budge Patty (2/2) Arthur Larsen
1951 Richard Savitt (1/2) EGY: Jaroslav Drobný (1/3) Richard Savitt (2/2) Frank Sedgman (3/5)
1952 Ken McGregor Jaroslav Drobný (2/3) Frank Sedgman (4/5) Frank Sedgman (5/5)
1953 Ken Rosewall (1/8) Ken Rosewall (2/8) Vic Seixas (1/2) Tony Trabert (1/5)
1954 Mervyn Rose (1/2) Tony Trabert (2/5) EGY: Jaroslav Drobný (3/3) Vic Seixas (2/2)
1955 Ken Rosewall (3/8) Tony Trabert (3/5) Tony Trabert (4/5) Tony Trabert (5/5)
1956 Lew Hoad (1/4) Lew Hoad (2/4) Lew Hoad (3/4) Ken Rosewall (4/8)
1957 Ashley Cooper (1/4) SWE: Sven Davidson Lew Hoad (4/4) Malcolm Anderson
1958 Ashley Cooper (2/4) Mervyn Rose (2/2) Ashley Cooper (3/4) Ashley Cooper (4/4)
1959 PER: Alex Olmedo (1/2) ITA: Nicola Pietrangeli (1/2) Alex Olmedo (2/2) Neale Fraser (1/3)
1960 Rod Laver (1/11) Nicola Pietrangeli (2/2) Neale Fraser (2/3) Neale Fraser (3/3)
1961 Roy Emerson (1/12) ESP: Manuel Santana (1/4) Rod Laver (2/11) Roy Emerson (2/12)
1962 Rod Laver (3/11) Rod Laver (4/11) Rod Laver (5/11) Rod Laver (6/11)
1963 Roy Emerson (3/12) Roy Emerson (4/12) Chuck McKinley MEX: Rafael Osuna
1964 Roy Emerson (5/12) Manuel Santana (2/4) Roy Emerson (6/12) Roy Emerson (7/12)
1965 Roy Emerson (8/12) Fred Stolle (1/2) Roy Emerson (9/12) Manuel Santana (3/4)
1966 Roy Emerson (10/12) Tony Roche Manuel Santana (4/4) Fred Stolle (2/2)
1967 Roy Emerson (11/12) Roy Emerson (12/12) John Newcombe (1/7) John Newcombe (2/7)
1968 William Bowrey Amateur era tennis ends Open era tennis begins Ken Rosewall (5/8) Rod Laver (7/11) Arthur Ashe (1/3)
1969 Rod Laver (8/11) Rod Laver (9/11) Rod Laver (10/11) Rod Laver (11/11)
1970 Arthur Ashe (2/3) TCH: Jan Kodeš (1/3) John Newcombe (3/7) Ken Rosewall (6/8)
1971 Ken Rosewall (7/8) Jan Kodeš (2/3) John Newcombe (4/7) Stan Smith (1/2)
1972 Ken Rosewall (8/8) Andrés Gimeno Stan Smith (2/2) ROU: Ilie Nastase (1/2)
1973 John Newcombe (5/7) Ilie Nastase (2/2) Jan Kodeš (3/3) John Newcombe (6/7)
1974 Jimmy Connors (1/8) Björn Borg (1/11) Jimmy Connors (2/8) Jimmy Connors (3/8)
1975 John Newcombe (7/7) Björn Borg (2/11) Arthur Ashe (3/3) Manuel Orantes
1976 Mark Edmondson Adriano Panatta Björn Borg (3/11) Jimmy Connors (4/8)
1978 Guillermo Vilas (3/4) †††† Björn Borg (5/11) Björn Borg (6/11) Jimmy Connors (5/8)
1979 Guillermo Vilas (4/4) †††† Björn Borg (7/11) Björn Borg (8/11) John McEnroe (1/7)
1980 Brian Teacher †††† Björn Borg (9/11) Björn Borg (10/11) John McEnroe (2/7)
1981 RSA: Johan Kriek (1/2) †††† Björn Borg (11/11) John McEnroe (3/7) John McEnroe (4/7)
1982 Johan Kriek (2/2) †††† Mats Wilander (1/7) Jimmy Connors (6/8) Jimmy Connors (7/8)
1983 Mats Wilander (2/7)†††† Yannick Noah John McEnroe (5/7) Jimmy Connors (8/8)
1984 Mats Wilander (3/7) †††† Ivan Lendl (1/8) John McEnroe (6/7) John McEnroe (7/7)
1985 Stefan Edberg (1/6) †††† Mats Wilander (4/7) FRG: Boris Becker (1/6) Ivan Lendl (2/8)
1986 Tournament date changed Ivan Lendl (3/8) Boris Becker (2/6) Ivan Lendl (4/8)
1987 Stefan Edberg (2/6) Ivan Lendl (5/8) Pat Cash Ivan Lendl (6/8)
1988 Mats Wilander (5/7) Mats Wilander (6/7) Stefan Edberg (3/6) Mats Wilander (7/7)
1989 Ivan Lendl (7/8) Michael Chang Boris Becker (3/6) Boris Becker (4/6)
1990 Ivan Lendl (8/8) ECU: Andrés Gómez Stefan Edberg (4/6) Pete Sampras (1/14)
1991 GER: Boris Becker (5/6) Jim Courier (1/4) Michael Stich Stefan Edberg (5/6)
1992 Jim Courier (2/4) Jim Courier (3/4) Andre Agassi (1/8) Stefan Edberg (6/6)
1993 Jim Courier (4/4) Sergi Bruguera (1/2) Pete Sampras (2/14) Pete Sampras (3/14)
1994 Pete Sampras (4/14) Sergi Bruguera (2/2) Pete Sampras (5/14) Andre Agassi (2/8)
1995 Andre Agassi (3/8) AUT: Thomas Muster Pete Sampras (6/14) Pete Sampras (7/14)
1996 Boris Becker (6/6) RUS: Yevgeny Kafelnikov (1/2) NED: Richard Krajicek Pete Sampras (8/14)
1997 Pete Sampras (9/14) BRA: Gustavo Kuerten (1/3) Pete Sampras (10/14) Patrick Rafter (1/2)
1998 CZE: Petr Korda Carlos Moyá Pete Sampras (11/14) Patrick Rafter (2/2)
1999 Yevgeny Kafelnikov (2/2) Andre Agassi (4/8) Pete Sampras (12/14) Andre Agassi (5/8)
2000 Andre Agassi (6/8) Gustavo Kuerten (2/3) Pete Sampras (13/14) Marat Safin (1/2)
2001 Andre Agassi (7/8) Gustavo Kuerten (3/3) Goran Ivaniševic Lleyton Hewitt (1/2)
2002 Thomas Johansson Albert Costa Lleyton Hewitt (2/2) Pete Sampras (14/14)
2003 Andre Agassi (8/8) Juan Carlos Ferrero SUI: Roger Federer (1/20) Andy Roddick
2004 Roger Federer (2/20) Gastón Gaudio Roger Federer (3/20) Roger Federer (4/20)
2005 Marat Safin (2/2) Rafael Nadal (1/17) Roger Federer (5/20) Roger Federer (6/20)
2006 Roger Federer (7/20) Rafael Nadal (2/17) Roger Federer (8/20) Roger Federer (9/20)
2007 Roger Federer (10/20) Rafael Nadal (3/17) Roger Federer (11/20) Roger Federer (12/20)
2008 SRB: Novak Djokovic (1/14) Rafael Nadal (4/17) Rafael Nadal (5/17) Roger Federer (13/20)
2009 Rafael Nadal (6/17) Roger Federer (14/20) Roger Federer (15/20) Juan Martín del Potro
2010 Roger Federer (16/20) Rafael Nadal (7/17) Rafael Nadal (8/17) Rafael Nadal (9/17)
2011 Novak Djokovic (2/14) Rafael Nadal (10/17) Novak Djokovic (3/14) Novak Djokovic (4/14)
2012 Novak Djokovic (5/14) Rafael Nadal (11/17) Roger Federer (17/20) Andy Murray (1/3)
2013 Novak Djokovic (6/14) Rafael Nadal (12/17) Andy Murray (2/3) Rafael Nadal (13/17)
2014 Stan Wawrinka (1/3) Rafael Nadal (14/17) Novak Djokovic (7/14) Marin Cilic
2015 Novak Djokovic (8/14) Stan Wawrinka (2/3) Novak Djokovic (9/14) Novak Djokovic (10/14)
2016 Novak Djokovic (11/14) Novak Djokovic (12/14) Andy Murray (3/3) Stan Wawrinka (3/3)
2017 Roger Federer (18/20) Rafael Nadal (15/17) Roger Federer (19/20) Rafael Nadal (16/17)
2018 Roger Federer (20/20) Rafael Nadal (17/17) Novak Djokovic (13/14) Novak Djokovic (14/14)
#we save the table to a csv file
write.csv(tblTable,file="grandSlamWinners.csv",row.names=FALSE)
#we can read this csv file
tblTable<-tbl_df(read.csv(file="grandSlamWinners.csv", header=TRUE, sep=",",colClasses = "character"))
tblTable<-setNames(tblTable,c('Year','Australian Open','French Open','Wimbledon','US Open'))

#we can also connect to a mySQL server and write the table there
#in mySQL we create a schema for our table and then we can write and read the table
mydb<-dbConnect(MySQL(),user='root',password='1234',dbname='tennis',host='localhost')
dbWriteTable(mydb, value = tblTable, name = "grandSlam")
## [1] TRUE
sqlTable<-dbReadTable(mydb,"grandSlam")
sqlTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Australian.Open French.Open Wimbledon US.Open
1877 started in 1905 started in 1891 GBR: Spencer Gore started in 1881
1878 tournament not created tournament not created Frank Hadow tournament not created
1879 tournament not created tournament not created John Hartley (1/2) tournament not created
1880 tournament not created tournament not created John Hartley (2/2) tournament not created
1881 tournament not created tournament not created William Renshaw (1/7) USA: Richard Sears (1/7)
1882 tournament not created tournament not created William Renshaw (2/7) Richard Sears (2/7)
1883 tournament not created tournament not created William Renshaw (3/7) Richard Sears (3/7)
1884 tournament not created tournament not created William Renshaw (4/7) Richard Sears (4/7)
1885 tournament not created tournament not created William Renshaw (5/7) Richard Sears (5/7)
1886 tournament not created tournament not created William Renshaw (6/7) Richard Sears (6/7)
1887 tournament not created tournament not created Herbert Lawford Richard Sears (7/7)
1888 tournament not created tournament not created Ernest Renshaw Henry Slocum (1/2)
1889 tournament not created tournament not created William Renshaw (7/7) Henry Slocum (2/2)
1890 tournament not created tournament not created Willoughby Hamilton Oliver Campbell (1/3)
1891 tournament not created H. Briggs * Wilfred Baddeley (1/3) Oliver Campbell (2/3)
1892 tournament not created FRA: Jean Schopfer * Wilfred Baddeley (2/3) Oliver Campbell (3/3)
1893 tournament not created Laurent Riboulet * Joshua Pim (1/2) Robert Wrenn (1/4)
1894 tournament not created André Vacherot * Joshua Pim (2/2) Robert Wrenn (2/4)
1895 tournament not created André Vacherot * Wilfred Baddeley (3/3) Fred Hovey
1896 tournament not created André Vacherot * Harold Mahony Robert Wrenn (3/4)
1897 tournament not created Paul Aymé * Reginald Doherty (1/4) Robert Wrenn (4/4)
1898 tournament not created Paul Aymé * Reginald Doherty (2/4) Malcolm Whitman (1/3)
1899 tournament not created Paul Aymé * Reginald Doherty (3/4) Malcolm Whitman (2/3)
1900 tournament not created Paul Aymé * Reginald Doherty (4/4) Malcolm Whitman (3/3)
1901 tournament not created André Vacherot * Arthur Gore (1/3) William Larned (1/7)
1902 tournament not created Michel Vacherot * Laurence Doherty (1/6) William Larned (2/7)
1903 tournament not created Max Decugis * Laurence Doherty (2/6) Laurence Doherty (3/6)
1904 tournament not created Max Decugis * Laurence Doherty (4/6) Holcombe Ward
1905 AUS: Rodney Heath (1/2) Maurice Germot * Laurence Doherty (5/6) Beals Wright
1906 NZL: Anthony Wilding (1/6) Maurice Germot * Laurence Doherty (6/6) William Clothier
1907 Horace Rice Max Decugis * Norman Brookes (1/3) William Larned (3/7)
1908 Fred Alexander Max Decugis * Arthur Gore (2/3) William Larned (4/7)
1909 Anthony Wilding (2/6) Max Decugis * Arthur Gore (3/3) William Larned (5/7)
1910 Rodney Heath (2/2) Maurice Germot * Anthony Wilding (3/6) William Larned (6/7)
1911 Norman Brookes (2/3) André Gobert * Anthony Wilding (4/6) William Larned (7/7)
1912 James Cecil Parke Max Decugis * Anthony Wilding (5/6) Maurice McLoughlin (1/2)
1913 Ernie Parker Max Decugis * Anthony Wilding (6/6) Maurice McLoughlin (2/2)
1914 Arthur O’Hara Wood Max Decugis * Norman Brookes (3/3) Richard Williams (1/2)
1915 Francis Lowe World War I World War I William Johnston (1/3)
1920 Pat O’Hara Wood (1/2) André Gobert * Bill Tilden (1/10) Bill Tilden (2/10)
1921 Rhys Gemmell Jean Samazeuilh * Bill Tilden (3/10) Bill Tilden (4/10)
1922 James Anderson (1/3) Henri Cochet * Gerald Patterson (2/3) Bill Tilden (5/10)
1923 Pat O’Hara Wood (2/2) †† François Blanchy * William Johnston (3/3) Bill Tilden (6/10)
1924 James Anderson (2/3) Jean Borotra * Jean Borotra (1/4) Bill Tilden (7/10)
1925 James Anderson (3/3) René Lacoste (1/7) ** René Lacoste (2/7) Bill Tilden (8/10)
1926 John Hawkes Henri Cochet (1/7) Jean Borotra (2/4) René Lacoste (3/7)
1927 Gerald Patterson (3/3)††† René Lacoste (4/7) Henri Cochet (2/7) René Lacoste (5/7)
1928 Jean Borotra (3/4) Henri Cochet (3/7) René Lacoste (6/7) Henri Cochet (4/7)
1929 John Gregory René Lacoste (7/7) Henri Cochet (5/7) Bill Tilden (9/10)
1930 Edgar Moon Henri Cochet (6/7) Bill Tilden (10/10) John Doeg
1931 Jack Crawford (1/6) Jean Borotra (4/4) Sidney Wood Ellsworth Vines (1/3)
1932 Jack Crawford (2/6) Henri Cochet (7/7) Ellsworth Vines (2/3) Ellsworth Vines (3/3)
1933 Jack Crawford (3/6) Jack Crawford (4/6) Jack Crawford (5/6) Fred Perry (1/8)
1934 Fred Perry (2/8) GER: Gottfried von Cramm (1/2) Fred Perry (3/8) Fred Perry (4/8)
1935 Jack Crawford (6/6) Fred Perry (5/8) Fred Perry (6/8) Wilmer Allison
1936 Adrian Quist (1/3) GER: Gottfried von Cramm (2/2) Fred Perry (7/8) Fred Perry (8/8)
1937 Vivian McGrath Henner Henkel Don Budge (1/6) Don Budge (2/6)
1938 Don Budge (3/6) Don Budge (4/6) Don Budge (5/6) Don Budge (6/6)
1939 John Bromwich (1/2) Don McNeill (1/2) Bobby Riggs (1/3) Bobby Riggs (2/3)
1940 Adrian Quist (2/3) Tournament canceled World War II Don McNeill (2/2)
1946 John Bromwich (2/2) Marcel Bernard Yvon Petra Jack Kramer (1/3)
1947 Dinny Pails HUN: József Asbóth Jack Kramer (2/3) Jack Kramer (3/3)
1948 Adrian Quist (3/3) Frank Parker (3/4) Bob Falkenburg Pancho Gonzales (1/2)
1949 Frank Sedgman (1/5) Frank Parker (4/4) Ted Schroeder (2/2) Pancho Gonzales (2/2)
1950 Frank Sedgman (2/5) Budge Patty (1/2) Budge Patty (2/2) Arthur Larsen
1951 Richard Savitt (1/2) EGY: Jaroslav Drobný (1/3) Richard Savitt (2/2) Frank Sedgman (3/5)
1952 Ken McGregor Jaroslav Drobný (2/3) Frank Sedgman (4/5) Frank Sedgman (5/5)
1953 Ken Rosewall (1/8) Ken Rosewall (2/8) Vic Seixas (1/2) Tony Trabert (1/5)
1954 Mervyn Rose (1/2) Tony Trabert (2/5) EGY: Jaroslav Drobný (3/3) Vic Seixas (2/2)
1955 Ken Rosewall (3/8) Tony Trabert (3/5) Tony Trabert (4/5) Tony Trabert (5/5)
1956 Lew Hoad (1/4) Lew Hoad (2/4) Lew Hoad (3/4) Ken Rosewall (4/8)
1957 Ashley Cooper (1/4) SWE: Sven Davidson Lew Hoad (4/4) Malcolm Anderson
1958 Ashley Cooper (2/4) Mervyn Rose (2/2) Ashley Cooper (3/4) Ashley Cooper (4/4)
1959 PER: Alex Olmedo (1/2) ITA: Nicola Pietrangeli (1/2) Alex Olmedo (2/2) Neale Fraser (1/3)
1960 Rod Laver (1/11) Nicola Pietrangeli (2/2) Neale Fraser (2/3) Neale Fraser (3/3)
1961 Roy Emerson (1/12) ESP: Manuel Santana (1/4) Rod Laver (2/11) Roy Emerson (2/12)
1962 Rod Laver (3/11) Rod Laver (4/11) Rod Laver (5/11) Rod Laver (6/11)
1963 Roy Emerson (3/12) Roy Emerson (4/12) Chuck McKinley MEX: Rafael Osuna
1964 Roy Emerson (5/12) Manuel Santana (2/4) Roy Emerson (6/12) Roy Emerson (7/12)
1965 Roy Emerson (8/12) Fred Stolle (1/2) Roy Emerson (9/12) Manuel Santana (3/4)
1966 Roy Emerson (10/12) Tony Roche Manuel Santana (4/4) Fred Stolle (2/2)
1967 Roy Emerson (11/12) Roy Emerson (12/12) John Newcombe (1/7) John Newcombe (2/7)
1968 William Bowrey Amateur era tennis ends Open era tennis begins Ken Rosewall (5/8) Rod Laver (7/11) Arthur Ashe (1/3)
1969 Rod Laver (8/11) Rod Laver (9/11) Rod Laver (10/11) Rod Laver (11/11)
1970 Arthur Ashe (2/3) TCH: Jan Kodeš (1/3) John Newcombe (3/7) Ken Rosewall (6/8)
1971 Ken Rosewall (7/8) Jan Kodeš (2/3) John Newcombe (4/7) Stan Smith (1/2)
1972 Ken Rosewall (8/8) Andrés Gimeno Stan Smith (2/2) ROU: Ilie Nastase (1/2)
1973 John Newcombe (5/7) Ilie Nastase (2/2) Jan Kodeš (3/3) John Newcombe (6/7)
1974 Jimmy Connors (1/8) Björn Borg (1/11) Jimmy Connors (2/8) Jimmy Connors (3/8)
1975 John Newcombe (7/7) Björn Borg (2/11) Arthur Ashe (3/3) Manuel Orantes
1976 Mark Edmondson Adriano Panatta Björn Borg (3/11) Jimmy Connors (4/8)
1978 Guillermo Vilas (3/4) †††† Björn Borg (5/11) Björn Borg (6/11) Jimmy Connors (5/8)
1979 Guillermo Vilas (4/4) †††† Björn Borg (7/11) Björn Borg (8/11) John McEnroe (1/7)
1980 Brian Teacher †††† Björn Borg (9/11) Björn Borg (10/11) John McEnroe (2/7)
1981 RSA: Johan Kriek (1/2) †††† Björn Borg (11/11) John McEnroe (3/7) John McEnroe (4/7)
1982 Johan Kriek (2/2) †††† Mats Wilander (1/7) Jimmy Connors (6/8) Jimmy Connors (7/8)
1983 Mats Wilander (2/7)†††† Yannick Noah John McEnroe (5/7) Jimmy Connors (8/8)
1984 Mats Wilander (3/7) †††† Ivan Lendl (1/8) John McEnroe (6/7) John McEnroe (7/7)
1985 Stefan Edberg (1/6) †††† Mats Wilander (4/7) FRG: Boris Becker (1/6) Ivan Lendl (2/8)
1986 Tournament date changed Ivan Lendl (3/8) Boris Becker (2/6) Ivan Lendl (4/8)
1987 Stefan Edberg (2/6) Ivan Lendl (5/8) Pat Cash Ivan Lendl (6/8)
1988 Mats Wilander (5/7) Mats Wilander (6/7) Stefan Edberg (3/6) Mats Wilander (7/7)
1989 Ivan Lendl (7/8) Michael Chang Boris Becker (3/6) Boris Becker (4/6)
1990 Ivan Lendl (8/8) ECU: Andrés Gómez Stefan Edberg (4/6) Pete Sampras (1/14)
1991 GER: Boris Becker (5/6) Jim Courier (1/4) Michael Stich Stefan Edberg (5/6)
1992 Jim Courier (2/4) Jim Courier (3/4) Andre Agassi (1/8) Stefan Edberg (6/6)
1993 Jim Courier (4/4) Sergi Bruguera (1/2) Pete Sampras (2/14) Pete Sampras (3/14)
1994 Pete Sampras (4/14) Sergi Bruguera (2/2) Pete Sampras (5/14) Andre Agassi (2/8)
1995 Andre Agassi (3/8) AUT: Thomas Muster Pete Sampras (6/14) Pete Sampras (7/14)
1996 Boris Becker (6/6) RUS: Yevgeny Kafelnikov (1/2) NED: Richard Krajicek Pete Sampras (8/14)
1997 Pete Sampras (9/14) BRA: Gustavo Kuerten (1/3) Pete Sampras (10/14) Patrick Rafter (1/2)
1998 CZE: Petr Korda Carlos Moyá Pete Sampras (11/14) Patrick Rafter (2/2)
1999 Yevgeny Kafelnikov (2/2) Andre Agassi (4/8) Pete Sampras (12/14) Andre Agassi (5/8)
2000 Andre Agassi (6/8) Gustavo Kuerten (2/3) Pete Sampras (13/14) Marat Safin (1/2)
2001 Andre Agassi (7/8) Gustavo Kuerten (3/3) Goran Ivaniševic Lleyton Hewitt (1/2)
2002 Thomas Johansson Albert Costa Lleyton Hewitt (2/2) Pete Sampras (14/14)
2003 Andre Agassi (8/8) Juan Carlos Ferrero SUI: Roger Federer (1/20) Andy Roddick
2004 Roger Federer (2/20) Gastón Gaudio Roger Federer (3/20) Roger Federer (4/20)
2005 Marat Safin (2/2) Rafael Nadal (1/17) Roger Federer (5/20) Roger Federer (6/20)
2006 Roger Federer (7/20) Rafael Nadal (2/17) Roger Federer (8/20) Roger Federer (9/20)
2007 Roger Federer (10/20) Rafael Nadal (3/17) Roger Federer (11/20) Roger Federer (12/20)
2008 SRB: Novak Djokovic (1/14) Rafael Nadal (4/17) Rafael Nadal (5/17) Roger Federer (13/20)
2009 Rafael Nadal (6/17) Roger Federer (14/20) Roger Federer (15/20) Juan Martín del Potro
2010 Roger Federer (16/20) Rafael Nadal (7/17) Rafael Nadal (8/17) Rafael Nadal (9/17)
2011 Novak Djokovic (2/14) Rafael Nadal (10/17) Novak Djokovic (3/14) Novak Djokovic (4/14)
2012 Novak Djokovic (5/14) Rafael Nadal (11/17) Roger Federer (17/20) Andy Murray (1/3)
2013 Novak Djokovic (6/14) Rafael Nadal (12/17) Andy Murray (2/3) Rafael Nadal (13/17)
2014 Stan Wawrinka (1/3) Rafael Nadal (14/17) Novak Djokovic (7/14) Marin Cilic
2015 Novak Djokovic (8/14) Stan Wawrinka (2/3) Novak Djokovic (9/14) Novak Djokovic (10/14)
2016 Novak Djokovic (11/14) Novak Djokovic (12/14) Andy Murray (3/3) Stan Wawrinka (3/3)
2017 Roger Federer (18/20) Rafael Nadal (15/17) Roger Federer (19/20) Rafael Nadal (16/17)
2018 Roger Federer (20/20) Rafael Nadal (17/17) Novak Djokovic (13/14) Novak Djokovic (14/14)
#Now that we have a a wide table we build our tidy table using gather
tidyTable<-gather(tblTable,"Tournament","Player",2:5)
#we do some heavy lifting to clean each cell
tidyTable$Player<-str_extract(tidyTable$Player,"[A-Z][:alpha:]+ [A-Z]'[A-Z][:alpha:]+ [:alpha:]+|[A-Z][:alpha:]+ [A-Z][:alpha:]+|[A-Z]\\. [:alpha:]+")
tidyTable$Player[tidyTable$Player=="World War"]<-NA
tidyTable$Player[tidyTable$Player=="Tournament date"]<-NA
tidyTable<-tidyTable %>% na.omit()
tidyTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Tournament Player
1905 Australian Open Rodney Heath
1906 Australian Open Anthony Wilding
1907 Australian Open Horace Rice
1908 Australian Open Fred Alexander
1909 Australian Open Anthony Wilding
1910 Australian Open Rodney Heath
1911 Australian Open Norman Brookes
1912 Australian Open James Cecil
1913 Australian Open Ernie Parker
1914 Australian Open Arthur O’Hara Wood
1915 Australian Open Francis Lowe
1920 Australian Open Pat O’Hara Wood
1921 Australian Open Rhys Gemmell
1922 Australian Open James Anderson
1923 Australian Open Pat O’Hara Wood
1924 Australian Open James Anderson
1925 Australian Open James Anderson
1926 Australian Open John Hawkes
1927 Australian Open Gerald Patterson
1928 Australian Open Jean Borotra
1929 Australian Open John Gregory
1930 Australian Open Edgar Moon
1931 Australian Open Jack Crawford
1932 Australian Open Jack Crawford
1933 Australian Open Jack Crawford
1934 Australian Open Fred Perry
1935 Australian Open Jack Crawford
1936 Australian Open Adrian Quist
1937 Australian Open Vivian McGrath
1938 Australian Open Don Budge
1939 Australian Open John Bromwich
1940 Australian Open Adrian Quist
1946 Australian Open John Bromwich
1947 Australian Open Dinny Pails
1948 Australian Open Adrian Quist
1949 Australian Open Frank Sedgman
1950 Australian Open Frank Sedgman
1951 Australian Open Richard Savitt
1952 Australian Open Ken McGregor
1953 Australian Open Ken Rosewall
1954 Australian Open Mervyn Rose
1955 Australian Open Ken Rosewall
1956 Australian Open Lew Hoad
1957 Australian Open Ashley Cooper
1958 Australian Open Ashley Cooper
1959 Australian Open Alex Olmedo
1960 Australian Open Rod Laver
1961 Australian Open Roy Emerson
1962 Australian Open Rod Laver
1963 Australian Open Roy Emerson
1964 Australian Open Roy Emerson
1965 Australian Open Roy Emerson
1966 Australian Open Roy Emerson
1967 Australian Open Roy Emerson
1968 Australian Open William Bowrey
1969 Australian Open Rod Laver
1970 Australian Open Arthur Ashe
1971 Australian Open Ken Rosewall
1972 Australian Open Ken Rosewall
1973 Australian Open John Newcombe
1974 Australian Open Jimmy Connors
1975 Australian Open John Newcombe
1976 Australian Open Mark Edmondson
1978 Australian Open Guillermo Vilas
1979 Australian Open Guillermo Vilas
1980 Australian Open Brian Teacher
1981 Australian Open Johan Kriek
1982 Australian Open Johan Kriek
1983 Australian Open Mats Wilander
1984 Australian Open Mats Wilander
1985 Australian Open Stefan Edberg
1987 Australian Open Stefan Edberg
1988 Australian Open Mats Wilander
1989 Australian Open Ivan Lendl
1990 Australian Open Ivan Lendl
1991 Australian Open Boris Becker
1992 Australian Open Jim Courier
1993 Australian Open Jim Courier
1994 Australian Open Pete Sampras
1995 Australian Open Andre Agassi
1996 Australian Open Boris Becker
1997 Australian Open Pete Sampras
1998 Australian Open Petr Korda
1999 Australian Open Yevgeny Kafelnikov
2000 Australian Open Andre Agassi
2001 Australian Open Andre Agassi
2002 Australian Open Thomas Johansson
2003 Australian Open Andre Agassi
2004 Australian Open Roger Federer
2005 Australian Open Marat Safin
2006 Australian Open Roger Federer
2007 Australian Open Roger Federer
2008 Australian Open Novak Djokovic
2009 Australian Open Rafael Nadal
2010 Australian Open Roger Federer
2011 Australian Open Novak Djokovic
2012 Australian Open Novak Djokovic
2013 Australian Open Novak Djokovic
2014 Australian Open Stan Wawrinka
2015 Australian Open Novak Djokovic
2016 Australian Open Novak Djokovic
2017 Australian Open Roger Federer
2018 Australian Open Roger Federer
1891 French Open H. Briggs
1892 French Open Jean Schopfer
1893 French Open Laurent Riboulet
1894 French Open André Vacherot
1895 French Open André Vacherot
1896 French Open André Vacherot
1897 French Open Paul Aymé
1898 French Open Paul Aymé
1899 French Open Paul Aymé
1900 French Open Paul Aymé
1901 French Open André Vacherot
1902 French Open Michel Vacherot
1903 French Open Max Decugis
1904 French Open Max Decugis
1905 French Open Maurice Germot
1906 French Open Maurice Germot
1907 French Open Max Decugis
1908 French Open Max Decugis
1909 French Open Max Decugis
1910 French Open Maurice Germot
1911 French Open André Gobert
1912 French Open Max Decugis
1913 French Open Max Decugis
1914 French Open Max Decugis
1920 French Open André Gobert
1921 French Open Jean Samazeuilh
1922 French Open Henri Cochet
1923 French Open François Blanchy
1924 French Open Jean Borotra
1925 French Open René Lacoste
1926 French Open Henri Cochet
1927 French Open René Lacoste
1928 French Open Henri Cochet
1929 French Open René Lacoste
1930 French Open Henri Cochet
1931 French Open Jean Borotra
1932 French Open Henri Cochet
1933 French Open Jack Crawford
1935 French Open Fred Perry
1937 French Open Henner Henkel
1938 French Open Don Budge
1939 French Open Don McNeill
1946 French Open Marcel Bernard
1947 French Open József Asbóth
1948 French Open Frank Parker
1949 French Open Frank Parker
1950 French Open Budge Patty
1951 French Open Jaroslav Drobný
1952 French Open Jaroslav Drobný
1953 French Open Ken Rosewall
1954 French Open Tony Trabert
1955 French Open Tony Trabert
1956 French Open Lew Hoad
1957 French Open Sven Davidson
1958 French Open Mervyn Rose
1959 French Open Nicola Pietrangeli
1960 French Open Nicola Pietrangeli
1961 French Open Manuel Santana
1962 French Open Rod Laver
1963 French Open Roy Emerson
1964 French Open Manuel Santana
1965 French Open Fred Stolle
1966 French Open Tony Roche
1967 French Open Roy Emerson
1968 French Open Ken Rosewall
1969 French Open Rod Laver
1970 French Open Jan Kodeš
1971 French Open Jan Kodeš
1972 French Open Andrés Gimeno
1973 French Open Ilie Nastase
1974 French Open Björn Borg
1975 French Open Björn Borg
1976 French Open Adriano Panatta
1978 French Open Björn Borg
1979 French Open Björn Borg
1980 French Open Björn Borg
1981 French Open Björn Borg
1982 French Open Mats Wilander
1983 French Open Yannick Noah
1984 French Open Ivan Lendl
1985 French Open Mats Wilander
1986 French Open Ivan Lendl
1987 French Open Ivan Lendl
1988 French Open Mats Wilander
1989 French Open Michael Chang
1990 French Open Andrés Gómez
1991 French Open Jim Courier
1992 French Open Jim Courier
1993 French Open Sergi Bruguera
1994 French Open Sergi Bruguera
1995 French Open Thomas Muster
1996 French Open Yevgeny Kafelnikov
1997 French Open Gustavo Kuerten
1998 French Open Carlos Moyá
1999 French Open Andre Agassi
2000 French Open Gustavo Kuerten
2001 French Open Gustavo Kuerten
2002 French Open Albert Costa
2003 French Open Juan Carlos
2004 French Open Gastón Gaudio
2005 French Open Rafael Nadal
2006 French Open Rafael Nadal
2007 French Open Rafael Nadal
2008 French Open Rafael Nadal
2009 French Open Roger Federer
2010 French Open Rafael Nadal
2011 French Open Rafael Nadal
2012 French Open Rafael Nadal
2013 French Open Rafael Nadal
2014 French Open Rafael Nadal
2015 French Open Stan Wawrinka
2016 French Open Novak Djokovic
2017 French Open Rafael Nadal
2018 French Open Rafael Nadal
1877 Wimbledon Spencer Gore
1878 Wimbledon Frank Hadow
1879 Wimbledon John Hartley
1880 Wimbledon John Hartley
1881 Wimbledon William Renshaw
1882 Wimbledon William Renshaw
1883 Wimbledon William Renshaw
1884 Wimbledon William Renshaw
1885 Wimbledon William Renshaw
1886 Wimbledon William Renshaw
1887 Wimbledon Herbert Lawford
1888 Wimbledon Ernest Renshaw
1889 Wimbledon William Renshaw
1890 Wimbledon Willoughby Hamilton
1891 Wimbledon Wilfred Baddeley
1892 Wimbledon Wilfred Baddeley
1893 Wimbledon Joshua Pim
1894 Wimbledon Joshua Pim
1895 Wimbledon Wilfred Baddeley
1896 Wimbledon Harold Mahony
1897 Wimbledon Reginald Doherty
1898 Wimbledon Reginald Doherty
1899 Wimbledon Reginald Doherty
1900 Wimbledon Reginald Doherty
1901 Wimbledon Arthur Gore
1902 Wimbledon Laurence Doherty
1903 Wimbledon Laurence Doherty
1904 Wimbledon Laurence Doherty
1905 Wimbledon Laurence Doherty
1906 Wimbledon Laurence Doherty
1907 Wimbledon Norman Brookes
1908 Wimbledon Arthur Gore
1909 Wimbledon Arthur Gore
1910 Wimbledon Anthony Wilding
1911 Wimbledon Anthony Wilding
1912 Wimbledon Anthony Wilding
1913 Wimbledon Anthony Wilding
1914 Wimbledon Norman Brookes
1920 Wimbledon Bill Tilden
1921 Wimbledon Bill Tilden
1922 Wimbledon Gerald Patterson
1923 Wimbledon William Johnston
1924 Wimbledon Jean Borotra
1925 Wimbledon René Lacoste
1926 Wimbledon Jean Borotra
1927 Wimbledon Henri Cochet
1928 Wimbledon René Lacoste
1929 Wimbledon Henri Cochet
1930 Wimbledon Bill Tilden
1931 Wimbledon Sidney Wood
1932 Wimbledon Ellsworth Vines
1933 Wimbledon Jack Crawford
1934 Wimbledon Fred Perry
1935 Wimbledon Fred Perry
1936 Wimbledon Fred Perry
1937 Wimbledon Don Budge
1938 Wimbledon Don Budge
1939 Wimbledon Bobby Riggs
1946 Wimbledon Yvon Petra
1947 Wimbledon Jack Kramer
1948 Wimbledon Bob Falkenburg
1949 Wimbledon Ted Schroeder
1950 Wimbledon Budge Patty
1951 Wimbledon Richard Savitt
1952 Wimbledon Frank Sedgman
1953 Wimbledon Vic Seixas
1954 Wimbledon Jaroslav Drobný
1955 Wimbledon Tony Trabert
1956 Wimbledon Lew Hoad
1957 Wimbledon Lew Hoad
1958 Wimbledon Ashley Cooper
1959 Wimbledon Alex Olmedo
1960 Wimbledon Neale Fraser
1961 Wimbledon Rod Laver
1962 Wimbledon Rod Laver
1963 Wimbledon Chuck McKinley
1964 Wimbledon Roy Emerson
1965 Wimbledon Roy Emerson
1966 Wimbledon Manuel Santana
1967 Wimbledon John Newcombe
1968 Wimbledon Rod Laver
1969 Wimbledon Rod Laver
1970 Wimbledon John Newcombe
1971 Wimbledon John Newcombe
1972 Wimbledon Stan Smith
1973 Wimbledon Jan Kodeš
1974 Wimbledon Jimmy Connors
1975 Wimbledon Arthur Ashe
1976 Wimbledon Björn Borg
1978 Wimbledon Björn Borg
1979 Wimbledon Björn Borg
1980 Wimbledon Björn Borg
1981 Wimbledon John McEnroe
1982 Wimbledon Jimmy Connors
1983 Wimbledon John McEnroe
1984 Wimbledon John McEnroe
1985 Wimbledon Boris Becker
1986 Wimbledon Boris Becker
1987 Wimbledon Pat Cash
1988 Wimbledon Stefan Edberg
1989 Wimbledon Boris Becker
1990 Wimbledon Stefan Edberg
1991 Wimbledon Michael Stich
1992 Wimbledon Andre Agassi
1993 Wimbledon Pete Sampras
1994 Wimbledon Pete Sampras
1995 Wimbledon Pete Sampras
1996 Wimbledon Richard Krajicek
1997 Wimbledon Pete Sampras
1998 Wimbledon Pete Sampras
1999 Wimbledon Pete Sampras
2000 Wimbledon Pete Sampras
2001 Wimbledon Goran Ivaniševic
2002 Wimbledon Lleyton Hewitt
2003 Wimbledon Roger Federer
2004 Wimbledon Roger Federer
2005 Wimbledon Roger Federer
2006 Wimbledon Roger Federer
2007 Wimbledon Roger Federer
2008 Wimbledon Rafael Nadal
2009 Wimbledon Roger Federer
2010 Wimbledon Rafael Nadal
2011 Wimbledon Novak Djokovic
2012 Wimbledon Roger Federer
2013 Wimbledon Andy Murray
2014 Wimbledon Novak Djokovic
2015 Wimbledon Novak Djokovic
2016 Wimbledon Andy Murray
2017 Wimbledon Roger Federer
2018 Wimbledon Novak Djokovic
1881 US Open Richard Sears
1882 US Open Richard Sears
1883 US Open Richard Sears
1884 US Open Richard Sears
1885 US Open Richard Sears
1886 US Open Richard Sears
1887 US Open Richard Sears
1888 US Open Henry Slocum
1889 US Open Henry Slocum
1890 US Open Oliver Campbell
1891 US Open Oliver Campbell
1892 US Open Oliver Campbell
1893 US Open Robert Wrenn
1894 US Open Robert Wrenn
1895 US Open Fred Hovey
1896 US Open Robert Wrenn
1897 US Open Robert Wrenn
1898 US Open Malcolm Whitman
1899 US Open Malcolm Whitman
1900 US Open Malcolm Whitman
1901 US Open William Larned
1902 US Open William Larned
1903 US Open Laurence Doherty
1904 US Open Holcombe Ward
1905 US Open Beals Wright
1906 US Open William Clothier
1907 US Open William Larned
1908 US Open William Larned
1909 US Open William Larned
1910 US Open William Larned
1911 US Open William Larned
1912 US Open Maurice McLoughlin
1913 US Open Maurice McLoughlin
1914 US Open Richard Williams
1915 US Open William Johnston
1920 US Open Bill Tilden
1921 US Open Bill Tilden
1922 US Open Bill Tilden
1923 US Open Bill Tilden
1924 US Open Bill Tilden
1925 US Open Bill Tilden
1926 US Open René Lacoste
1927 US Open René Lacoste
1928 US Open Henri Cochet
1929 US Open Bill Tilden
1930 US Open John Doeg
1931 US Open Ellsworth Vines
1932 US Open Ellsworth Vines
1933 US Open Fred Perry
1934 US Open Fred Perry
1935 US Open Wilmer Allison
1936 US Open Fred Perry
1937 US Open Don Budge
1938 US Open Don Budge
1939 US Open Bobby Riggs
1940 US Open Don McNeill
1946 US Open Jack Kramer
1947 US Open Jack Kramer
1948 US Open Pancho Gonzales
1949 US Open Pancho Gonzales
1950 US Open Arthur Larsen
1951 US Open Frank Sedgman
1952 US Open Frank Sedgman
1953 US Open Tony Trabert
1954 US Open Vic Seixas
1955 US Open Tony Trabert
1956 US Open Ken Rosewall
1957 US Open Malcolm Anderson
1958 US Open Ashley Cooper
1959 US Open Neale Fraser
1960 US Open Neale Fraser
1961 US Open Roy Emerson
1962 US Open Rod Laver
1963 US Open Rafael Osuna
1964 US Open Roy Emerson
1965 US Open Manuel Santana
1966 US Open Fred Stolle
1967 US Open John Newcombe
1968 US Open Arthur Ashe
1969 US Open Rod Laver
1970 US Open Ken Rosewall
1971 US Open Stan Smith
1972 US Open Ilie Nastase
1973 US Open John Newcombe
1974 US Open Jimmy Connors
1975 US Open Manuel Orantes
1976 US Open Jimmy Connors
1978 US Open Jimmy Connors
1979 US Open John McEnroe
1980 US Open John McEnroe
1981 US Open John McEnroe
1982 US Open Jimmy Connors
1983 US Open Jimmy Connors
1984 US Open John McEnroe
1985 US Open Ivan Lendl
1986 US Open Ivan Lendl
1987 US Open Ivan Lendl
1988 US Open Mats Wilander
1989 US Open Boris Becker
1990 US Open Pete Sampras
1991 US Open Stefan Edberg
1992 US Open Stefan Edberg
1993 US Open Pete Sampras
1994 US Open Andre Agassi
1995 US Open Pete Sampras
1996 US Open Pete Sampras
1997 US Open Patrick Rafter
1998 US Open Patrick Rafter
1999 US Open Andre Agassi
2000 US Open Marat Safin
2001 US Open Lleyton Hewitt
2002 US Open Pete Sampras
2003 US Open Andy Roddick
2004 US Open Roger Federer
2005 US Open Roger Federer
2006 US Open Roger Federer
2007 US Open Roger Federer
2008 US Open Roger Federer
2009 US Open Juan Martín
2010 US Open Rafael Nadal
2011 US Open Novak Djokovic
2012 US Open Andy Murray
2013 US Open Rafael Nadal
2014 US Open Marin Cilic
2015 US Open Novak Djokovic
2016 US Open Stan Wawrinka
2017 US Open Rafael Nadal
2018 US Open Novak Djokovic

Dataset Analysis

Players with most wins

tidyTable %>% group_by(Player) %>% summarise(Total_Wins=n())  %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Roger Federer 20
Rafael Nadal 17
Novak Djokovic 14
Pete Sampras 14
Roy Emerson 12
Rod Laver 11
Bill Tilden 10
Björn Borg 10
Andre Agassi 8
Fred Perry 8
Henri Cochet 8
Ivan Lendl 8
Jimmy Connors 8
Ken Rosewall 8
Max Decugis 8
John McEnroe 7
John Newcombe 7
Mats Wilander 7
René Lacoste 7
Richard Sears 7
William Larned 7
William Renshaw 7
Anthony Wilding 6
Boris Becker 6
Don Budge 6
Jack Crawford 6
Laurence Doherty 6
Stefan Edberg 6
Frank Sedgman 5
Jean Borotra 5
Tony Trabert 5
André Vacherot 4
Ashley Cooper 4
Jim Courier 4
Lew Hoad 4
Manuel Santana 4
Paul Aymé 4
Reginald Doherty 4
Robert Wrenn 4
Adrian Quist 3
Andy Murray 3
Arthur Ashe 3
Arthur Gore 3
Ellsworth Vines 3
Gustavo Kuerten 3
Jack Kramer 3
James Anderson 3
Jan Kodeš 3
Jaroslav Drobný 3
Malcolm Whitman 3
Maurice Germot 3
Neale Fraser 3
Norman Brookes 3
Oliver Campbell 3
Stan Wawrinka 3
Wilfred Baddeley 3
Alex Olmedo 2
André Gobert 2
Bobby Riggs 2
Budge Patty 2
Don McNeill 2
Frank Parker 2
Fred Stolle 2
Gerald Patterson 2
Guillermo Vilas 2
Henry Slocum 2
Ilie Nastase 2
Johan Kriek 2
John Bromwich 2
John Hartley 2
Joshua Pim 2
Lleyton Hewitt 2
Marat Safin 2
Maurice McLoughlin 2
Mervyn Rose 2
Nicola Pietrangeli 2
Pancho Gonzales 2
Pat O’Hara Wood 2
Patrick Rafter 2
Richard Savitt 2
Rodney Heath 2
Sergi Bruguera 2
Stan Smith 2
Vic Seixas 2
William Johnston 2
Yevgeny Kafelnikov 2
Adriano Panatta 1
Albert Costa 1
Andrés Gimeno 1
Andrés Gómez 1
Andy Roddick 1
Arthur Larsen 1
Arthur O’Hara Wood 1
Beals Wright 1
Bob Falkenburg 1
Brian Teacher 1
Carlos Moyá 1
Chuck McKinley 1
Dinny Pails 1
Edgar Moon 1
Ernest Renshaw 1
Ernie Parker 1
Francis Lowe 1
François Blanchy 1
Frank Hadow 1
Fred Alexander 1
Fred Hovey 1
Gastón Gaudio 1
Goran Ivaniševic 1
H. Briggs 1
Harold Mahony 1
Henner Henkel 1
Herbert Lawford 1
Holcombe Ward 1
Horace Rice 1
James Cecil 1
Jean Samazeuilh 1
Jean Schopfer 1
John Doeg 1
John Gregory 1
John Hawkes 1
József Asbóth 1
Juan Carlos 1
Juan Martín 1
Ken McGregor 1
Laurent Riboulet 1
Malcolm Anderson 1
Manuel Orantes 1
Marcel Bernard 1
Marin Cilic 1
Mark Edmondson 1
Michael Chang 1
Michael Stich 1
Michel Vacherot 1
Pat Cash 1
Petr Korda 1
Rafael Osuna 1
Rhys Gemmell 1
Richard Krajicek 1
Richard Williams 1
Sidney Wood 1
Spencer Gore 1
Sven Davidson 1
Ted Schroeder 1
Thomas Johansson 1
Thomas Muster 1
Tony Roche 1
Vivian McGrath 1
William Bowrey 1
William Clothier 1
Willoughby Hamilton 1
Wilmer Allison 1
Yannick Noah 1
Yvon Petra 1
tidyOrder<-tidyTable %>% group_by(Player) %>% summarise(Total_Wins=n()) %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 Grand Slam Winners") 

Australian Open players with most wins

tidyOrder<-tidyTable %>% filter(Tournament=="Australian Open") %>% group_by(Player) %>% summarise(Total_Wins=n())   
tidyOrder %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Novak Djokovic 6
Roger Federer 6
Roy Emerson 6
Andre Agassi 4
Jack Crawford 4
Ken Rosewall 4
Adrian Quist 3
James Anderson 3
Mats Wilander 3
Rod Laver 3
Anthony Wilding 2
Ashley Cooper 2
Boris Becker 2
Frank Sedgman 2
Guillermo Vilas 2
Ivan Lendl 2
Jim Courier 2
Johan Kriek 2
John Bromwich 2
John Newcombe 2
Pat O’Hara Wood 2
Pete Sampras 2
Rodney Heath 2
Stefan Edberg 2
Alex Olmedo 1
Arthur Ashe 1
Arthur O’Hara Wood 1
Brian Teacher 1
Dinny Pails 1
Don Budge 1
Edgar Moon 1
Ernie Parker 1
Francis Lowe 1
Fred Alexander 1
Fred Perry 1
Gerald Patterson 1
Horace Rice 1
James Cecil 1
Jean Borotra 1
Jimmy Connors 1
John Gregory 1
John Hawkes 1
Ken McGregor 1
Lew Hoad 1
Marat Safin 1
Mark Edmondson 1
Mervyn Rose 1
Norman Brookes 1
Petr Korda 1
Rafael Nadal 1
Rhys Gemmell 1
Richard Savitt 1
Stan Wawrinka 1
Thomas Johansson 1
Vivian McGrath 1
William Bowrey 1
Yevgeny Kafelnikov 1
tidyOrder<-tidyOrder %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 Australian Open Players") 

French Open players with most wins

tidyOrder<-tidyTable %>% filter(Tournament=="French Open") %>% group_by(Player) %>% summarise(Total_Wins=n()) 
tidyOrder %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Rafael Nadal 11
Max Decugis 8
Björn Borg 6
Henri Cochet 5
André Vacherot 4
Paul Aymé 4
Gustavo Kuerten 3
Ivan Lendl 3
Mats Wilander 3
Maurice Germot 3
René Lacoste 3
André Gobert 2
Frank Parker 2
Jan Kodeš 2
Jaroslav Drobný 2
Jean Borotra 2
Jim Courier 2
Ken Rosewall 2
Manuel Santana 2
Nicola Pietrangeli 2
Rod Laver 2
Roy Emerson 2
Sergi Bruguera 2
Tony Trabert 2
Adriano Panatta 1
Albert Costa 1
Andre Agassi 1
Andrés Gimeno 1
Andrés Gómez 1
Budge Patty 1
Carlos Moyá 1
Don Budge 1
Don McNeill 1
François Blanchy 1
Fred Perry 1
Fred Stolle 1
Gastón Gaudio 1
H. Briggs 1
Henner Henkel 1
Ilie Nastase 1
Jack Crawford 1
Jean Samazeuilh 1
Jean Schopfer 1
József Asbóth 1
Juan Carlos 1
Laurent Riboulet 1
Lew Hoad 1
Marcel Bernard 1
Mervyn Rose 1
Michael Chang 1
Michel Vacherot 1
Novak Djokovic 1
Roger Federer 1
Stan Wawrinka 1
Sven Davidson 1
Thomas Muster 1
Tony Roche 1
Yannick Noah 1
Yevgeny Kafelnikov 1
tidyOrder<-tidyOrder %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 French Open Players") 

Wimbledon players with most wins

tidyOrder<-tidyTable %>% filter(Tournament=="Wimbledon") %>% group_by(Player) %>% summarise(Total_Wins=n())
tidyOrder %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Roger Federer 8
Pete Sampras 7
William Renshaw 7
Laurence Doherty 5
Anthony Wilding 4
Björn Borg 4
Novak Djokovic 4
Reginald Doherty 4
Rod Laver 4
Arthur Gore 3
Bill Tilden 3
Boris Becker 3
Fred Perry 3
John McEnroe 3
John Newcombe 3
Wilfred Baddeley 3
Andy Murray 2
Don Budge 2
Henri Cochet 2
Jean Borotra 2
Jimmy Connors 2
John Hartley 2
Joshua Pim 2
Lew Hoad 2
Norman Brookes 2
Rafael Nadal 2
René Lacoste 2
Roy Emerson 2
Stefan Edberg 2
Alex Olmedo 1
Andre Agassi 1
Arthur Ashe 1
Ashley Cooper 1
Bob Falkenburg 1
Bobby Riggs 1
Budge Patty 1
Chuck McKinley 1
Ellsworth Vines 1
Ernest Renshaw 1
Frank Hadow 1
Frank Sedgman 1
Gerald Patterson 1
Goran Ivaniševic 1
Harold Mahony 1
Herbert Lawford 1
Jack Crawford 1
Jack Kramer 1
Jan Kodeš 1
Jaroslav Drobný 1
Lleyton Hewitt 1
Manuel Santana 1
Michael Stich 1
Neale Fraser 1
Pat Cash 1
Richard Krajicek 1
Richard Savitt 1
Sidney Wood 1
Spencer Gore 1
Stan Smith 1
Ted Schroeder 1
Tony Trabert 1
Vic Seixas 1
William Johnston 1
Willoughby Hamilton 1
Yvon Petra 1
tidyOrder<-tidyOrder %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 Wimbledon Players") 

US Open players with most wins

tidyOrder<-tidyTable %>% filter(Tournament=="US Open") %>% group_by(Player) %>% summarise(Total_Wins=n())  
tidyOrder %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Bill Tilden 7
Richard Sears 7
William Larned 7
Jimmy Connors 5
Pete Sampras 5
Roger Federer 5
John McEnroe 4
Robert Wrenn 4
Fred Perry 3
Ivan Lendl 3
Malcolm Whitman 3
Novak Djokovic 3
Oliver Campbell 3
Rafael Nadal 3
Andre Agassi 2
Don Budge 2
Ellsworth Vines 2
Frank Sedgman 2
Henry Slocum 2
Jack Kramer 2
John Newcombe 2
Ken Rosewall 2
Maurice McLoughlin 2
Neale Fraser 2
Pancho Gonzales 2
Patrick Rafter 2
René Lacoste 2
Rod Laver 2
Roy Emerson 2
Stefan Edberg 2
Tony Trabert 2
Andy Murray 1
Andy Roddick 1
Arthur Ashe 1
Arthur Larsen 1
Ashley Cooper 1
Beals Wright 1
Bobby Riggs 1
Boris Becker 1
Don McNeill 1
Fred Hovey 1
Fred Stolle 1
Henri Cochet 1
Holcombe Ward 1
Ilie Nastase 1
John Doeg 1
Juan Martín 1
Laurence Doherty 1
Lleyton Hewitt 1
Malcolm Anderson 1
Manuel Orantes 1
Manuel Santana 1
Marat Safin 1
Marin Cilic 1
Mats Wilander 1
Rafael Osuna 1
Richard Williams 1
Stan Smith 1
Stan Wawrinka 1
Vic Seixas 1
William Clothier 1
William Johnston 1
Wilmer Allison 1
tidyOrder<-tidyOrder %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 US Open Players") 

Most dominant players in the 90’s

tidyOrder<-tidyTable %>% filter(Year %in% paste(seq(1990,1999,1))) %>% group_by(Player) %>% summarise(Total_Wins=n())  
tidyOrder  %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Pete Sampras 12
Andre Agassi 5
Jim Courier 4
Stefan Edberg 3
Boris Becker 2
Patrick Rafter 2
Sergi Bruguera 2
Yevgeny Kafelnikov 2
Andrés Gómez 1
Carlos Moyá 1
Gustavo Kuerten 1
Ivan Lendl 1
Michael Stich 1
Petr Korda 1
Richard Krajicek 1
Thomas Muster 1
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Most Dominat Players in the 90's") 

Most dominant player per decade

tidyCase<-tidyTable %>% mutate(Decade=paste(substr(Year,1,3),"0's",sep = "")) %>% group_by(Decade,Player) %>% summarise(Total_Wins=n()) %>% filter(Total_Wins==max(Total_Wins))  
tidyCase %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Decade Player Total_Wins
2000’s Roger Federer 15
2010’s Novak Djokovic 13
1960’s Roy Emerson 12
1990’s Pete Sampras 12
1920’s Bill Tilden 9
1930’s Fred Perry 8
1880’s Richard Sears 7
1880’s William Renshaw 7
1970’s Björn Borg 7
1980’s Ivan Lendl 7
1980’s Mats Wilander 7
1900’s Laurence Doherty 6
1950’s Tony Trabert 5
1890’s Robert Wrenn 4
1910’s Anthony Wilding 4
1940’s Jack Kramer 3
1870’s Frank Hadow 1
1870’s John Hartley 1
1870’s Spencer Gore 1
tidyOrder<-tidyCase %>% mutate(PlayerDecade=paste(Player,Decade,sep = " in the "))
tidyOrder$PlayerDecade<-factor(tidyOrder$PlayerDecade,levels = tidyOrder$PlayerDecade[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=PlayerDecade, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Most Dominat player per decade")

Best players by surface

tidyCase<-tidyTable %>% mutate(Surface=ifelse(Tournament=="Wimbledon","Grass",ifelse(Tournament=="French Open","Clay",ifelse(Tournament=="Australian Open" & strtoi(Year)<1988,"Grass",ifelse(Tournament=="Australian Open" & strtoi(Year)>1987,"Hard Court",ifelse(Tournament=="US Open" & strtoi(Year)<1975,"Grass",ifelse(Tournament=="US Open" & strtoi(Year)>1974 & strtoi(Year)<1978,"Clay",ifelse(Tournament=="US Open" & strtoi(Year)>1977,"Hard Court",NA))))))))
tidyCase %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Tournament Player Surface
1905 Australian Open Rodney Heath Grass
1906 Australian Open Anthony Wilding Grass
1907 Australian Open Horace Rice Grass
1908 Australian Open Fred Alexander Grass
1909 Australian Open Anthony Wilding Grass
1910 Australian Open Rodney Heath Grass
1911 Australian Open Norman Brookes Grass
1912 Australian Open James Cecil Grass
1913 Australian Open Ernie Parker Grass
1914 Australian Open Arthur O’Hara Wood Grass
1915 Australian Open Francis Lowe Grass
1920 Australian Open Pat O’Hara Wood Grass
1921 Australian Open Rhys Gemmell Grass
1922 Australian Open James Anderson Grass
1923 Australian Open Pat O’Hara Wood Grass
1924 Australian Open James Anderson Grass
1925 Australian Open James Anderson Grass
1926 Australian Open John Hawkes Grass
1927 Australian Open Gerald Patterson Grass
1928 Australian Open Jean Borotra Grass
1929 Australian Open John Gregory Grass
1930 Australian Open Edgar Moon Grass
1931 Australian Open Jack Crawford Grass
1932 Australian Open Jack Crawford Grass
1933 Australian Open Jack Crawford Grass
1934 Australian Open Fred Perry Grass
1935 Australian Open Jack Crawford Grass
1936 Australian Open Adrian Quist Grass
1937 Australian Open Vivian McGrath Grass
1938 Australian Open Don Budge Grass
1939 Australian Open John Bromwich Grass
1940 Australian Open Adrian Quist Grass
1946 Australian Open John Bromwich Grass
1947 Australian Open Dinny Pails Grass
1948 Australian Open Adrian Quist Grass
1949 Australian Open Frank Sedgman Grass
1950 Australian Open Frank Sedgman Grass
1951 Australian Open Richard Savitt Grass
1952 Australian Open Ken McGregor Grass
1953 Australian Open Ken Rosewall Grass
1954 Australian Open Mervyn Rose Grass
1955 Australian Open Ken Rosewall Grass
1956 Australian Open Lew Hoad Grass
1957 Australian Open Ashley Cooper Grass
1958 Australian Open Ashley Cooper Grass
1959 Australian Open Alex Olmedo Grass
1960 Australian Open Rod Laver Grass
1961 Australian Open Roy Emerson Grass
1962 Australian Open Rod Laver Grass
1963 Australian Open Roy Emerson Grass
1964 Australian Open Roy Emerson Grass
1965 Australian Open Roy Emerson Grass
1966 Australian Open Roy Emerson Grass
1967 Australian Open Roy Emerson Grass
1968 Australian Open William Bowrey Grass
1969 Australian Open Rod Laver Grass
1970 Australian Open Arthur Ashe Grass
1971 Australian Open Ken Rosewall Grass
1972 Australian Open Ken Rosewall Grass
1973 Australian Open John Newcombe Grass
1974 Australian Open Jimmy Connors Grass
1975 Australian Open John Newcombe Grass
1976 Australian Open Mark Edmondson Grass
1978 Australian Open Guillermo Vilas Grass
1979 Australian Open Guillermo Vilas Grass
1980 Australian Open Brian Teacher Grass
1981 Australian Open Johan Kriek Grass
1982 Australian Open Johan Kriek Grass
1983 Australian Open Mats Wilander Grass
1984 Australian Open Mats Wilander Grass
1985 Australian Open Stefan Edberg Grass
1987 Australian Open Stefan Edberg Grass
1988 Australian Open Mats Wilander Hard Court
1989 Australian Open Ivan Lendl Hard Court
1990 Australian Open Ivan Lendl Hard Court
1991 Australian Open Boris Becker Hard Court
1992 Australian Open Jim Courier Hard Court
1993 Australian Open Jim Courier Hard Court
1994 Australian Open Pete Sampras Hard Court
1995 Australian Open Andre Agassi Hard Court
1996 Australian Open Boris Becker Hard Court
1997 Australian Open Pete Sampras Hard Court
1998 Australian Open Petr Korda Hard Court
1999 Australian Open Yevgeny Kafelnikov Hard Court
2000 Australian Open Andre Agassi Hard Court
2001 Australian Open Andre Agassi Hard Court
2002 Australian Open Thomas Johansson Hard Court
2003 Australian Open Andre Agassi Hard Court
2004 Australian Open Roger Federer Hard Court
2005 Australian Open Marat Safin Hard Court
2006 Australian Open Roger Federer Hard Court
2007 Australian Open Roger Federer Hard Court
2008 Australian Open Novak Djokovic Hard Court
2009 Australian Open Rafael Nadal Hard Court
2010 Australian Open Roger Federer Hard Court
2011 Australian Open Novak Djokovic Hard Court
2012 Australian Open Novak Djokovic Hard Court
2013 Australian Open Novak Djokovic Hard Court
2014 Australian Open Stan Wawrinka Hard Court
2015 Australian Open Novak Djokovic Hard Court
2016 Australian Open Novak Djokovic Hard Court
2017 Australian Open Roger Federer Hard Court
2018 Australian Open Roger Federer Hard Court
1891 French Open H. Briggs Clay
1892 French Open Jean Schopfer Clay
1893 French Open Laurent Riboulet Clay
1894 French Open André Vacherot Clay
1895 French Open André Vacherot Clay
1896 French Open André Vacherot Clay
1897 French Open Paul Aymé Clay
1898 French Open Paul Aymé Clay
1899 French Open Paul Aymé Clay
1900 French Open Paul Aymé Clay
1901 French Open André Vacherot Clay
1902 French Open Michel Vacherot Clay
1903 French Open Max Decugis Clay
1904 French Open Max Decugis Clay
1905 French Open Maurice Germot Clay
1906 French Open Maurice Germot Clay
1907 French Open Max Decugis Clay
1908 French Open Max Decugis Clay
1909 French Open Max Decugis Clay
1910 French Open Maurice Germot Clay
1911 French Open André Gobert Clay
1912 French Open Max Decugis Clay
1913 French Open Max Decugis Clay
1914 French Open Max Decugis Clay
1920 French Open André Gobert Clay
1921 French Open Jean Samazeuilh Clay
1922 French Open Henri Cochet Clay
1923 French Open François Blanchy Clay
1924 French Open Jean Borotra Clay
1925 French Open René Lacoste Clay
1926 French Open Henri Cochet Clay
1927 French Open René Lacoste Clay
1928 French Open Henri Cochet Clay
1929 French Open René Lacoste Clay
1930 French Open Henri Cochet Clay
1931 French Open Jean Borotra Clay
1932 French Open Henri Cochet Clay
1933 French Open Jack Crawford Clay
1935 French Open Fred Perry Clay
1937 French Open Henner Henkel Clay
1938 French Open Don Budge Clay
1939 French Open Don McNeill Clay
1946 French Open Marcel Bernard Clay
1947 French Open József Asbóth Clay
1948 French Open Frank Parker Clay
1949 French Open Frank Parker Clay
1950 French Open Budge Patty Clay
1951 French Open Jaroslav Drobný Clay
1952 French Open Jaroslav Drobný Clay
1953 French Open Ken Rosewall Clay
1954 French Open Tony Trabert Clay
1955 French Open Tony Trabert Clay
1956 French Open Lew Hoad Clay
1957 French Open Sven Davidson Clay
1958 French Open Mervyn Rose Clay
1959 French Open Nicola Pietrangeli Clay
1960 French Open Nicola Pietrangeli Clay
1961 French Open Manuel Santana Clay
1962 French Open Rod Laver Clay
1963 French Open Roy Emerson Clay
1964 French Open Manuel Santana Clay
1965 French Open Fred Stolle Clay
1966 French Open Tony Roche Clay
1967 French Open Roy Emerson Clay
1968 French Open Ken Rosewall Clay
1969 French Open Rod Laver Clay
1970 French Open Jan Kodeš Clay
1971 French Open Jan Kodeš Clay
1972 French Open Andrés Gimeno Clay
1973 French Open Ilie Nastase Clay
1974 French Open Björn Borg Clay
1975 French Open Björn Borg Clay
1976 French Open Adriano Panatta Clay
1978 French Open Björn Borg Clay
1979 French Open Björn Borg Clay
1980 French Open Björn Borg Clay
1981 French Open Björn Borg Clay
1982 French Open Mats Wilander Clay
1983 French Open Yannick Noah Clay
1984 French Open Ivan Lendl Clay
1985 French Open Mats Wilander Clay
1986 French Open Ivan Lendl Clay
1987 French Open Ivan Lendl Clay
1988 French Open Mats Wilander Clay
1989 French Open Michael Chang Clay
1990 French Open Andrés Gómez Clay
1991 French Open Jim Courier Clay
1992 French Open Jim Courier Clay
1993 French Open Sergi Bruguera Clay
1994 French Open Sergi Bruguera Clay
1995 French Open Thomas Muster Clay
1996 French Open Yevgeny Kafelnikov Clay
1997 French Open Gustavo Kuerten Clay
1998 French Open Carlos Moyá Clay
1999 French Open Andre Agassi Clay
2000 French Open Gustavo Kuerten Clay
2001 French Open Gustavo Kuerten Clay
2002 French Open Albert Costa Clay
2003 French Open Juan Carlos Clay
2004 French Open Gastón Gaudio Clay
2005 French Open Rafael Nadal Clay
2006 French Open Rafael Nadal Clay
2007 French Open Rafael Nadal Clay
2008 French Open Rafael Nadal Clay
2009 French Open Roger Federer Clay
2010 French Open Rafael Nadal Clay
2011 French Open Rafael Nadal Clay
2012 French Open Rafael Nadal Clay
2013 French Open Rafael Nadal Clay
2014 French Open Rafael Nadal Clay
2015 French Open Stan Wawrinka Clay
2016 French Open Novak Djokovic Clay
2017 French Open Rafael Nadal Clay
2018 French Open Rafael Nadal Clay
1877 Wimbledon Spencer Gore Grass
1878 Wimbledon Frank Hadow Grass
1879 Wimbledon John Hartley Grass
1880 Wimbledon John Hartley Grass
1881 Wimbledon William Renshaw Grass
1882 Wimbledon William Renshaw Grass
1883 Wimbledon William Renshaw Grass
1884 Wimbledon William Renshaw Grass
1885 Wimbledon William Renshaw Grass
1886 Wimbledon William Renshaw Grass
1887 Wimbledon Herbert Lawford Grass
1888 Wimbledon Ernest Renshaw Grass
1889 Wimbledon William Renshaw Grass
1890 Wimbledon Willoughby Hamilton Grass
1891 Wimbledon Wilfred Baddeley Grass
1892 Wimbledon Wilfred Baddeley Grass
1893 Wimbledon Joshua Pim Grass
1894 Wimbledon Joshua Pim Grass
1895 Wimbledon Wilfred Baddeley Grass
1896 Wimbledon Harold Mahony Grass
1897 Wimbledon Reginald Doherty Grass
1898 Wimbledon Reginald Doherty Grass
1899 Wimbledon Reginald Doherty Grass
1900 Wimbledon Reginald Doherty Grass
1901 Wimbledon Arthur Gore Grass
1902 Wimbledon Laurence Doherty Grass
1903 Wimbledon Laurence Doherty Grass
1904 Wimbledon Laurence Doherty Grass
1905 Wimbledon Laurence Doherty Grass
1906 Wimbledon Laurence Doherty Grass
1907 Wimbledon Norman Brookes Grass
1908 Wimbledon Arthur Gore Grass
1909 Wimbledon Arthur Gore Grass
1910 Wimbledon Anthony Wilding Grass
1911 Wimbledon Anthony Wilding Grass
1912 Wimbledon Anthony Wilding Grass
1913 Wimbledon Anthony Wilding Grass
1914 Wimbledon Norman Brookes Grass
1920 Wimbledon Bill Tilden Grass
1921 Wimbledon Bill Tilden Grass
1922 Wimbledon Gerald Patterson Grass
1923 Wimbledon William Johnston Grass
1924 Wimbledon Jean Borotra Grass
1925 Wimbledon René Lacoste Grass
1926 Wimbledon Jean Borotra Grass
1927 Wimbledon Henri Cochet Grass
1928 Wimbledon René Lacoste Grass
1929 Wimbledon Henri Cochet Grass
1930 Wimbledon Bill Tilden Grass
1931 Wimbledon Sidney Wood Grass
1932 Wimbledon Ellsworth Vines Grass
1933 Wimbledon Jack Crawford Grass
1934 Wimbledon Fred Perry Grass
1935 Wimbledon Fred Perry Grass
1936 Wimbledon Fred Perry Grass
1937 Wimbledon Don Budge Grass
1938 Wimbledon Don Budge Grass
1939 Wimbledon Bobby Riggs Grass
1946 Wimbledon Yvon Petra Grass
1947 Wimbledon Jack Kramer Grass
1948 Wimbledon Bob Falkenburg Grass
1949 Wimbledon Ted Schroeder Grass
1950 Wimbledon Budge Patty Grass
1951 Wimbledon Richard Savitt Grass
1952 Wimbledon Frank Sedgman Grass
1953 Wimbledon Vic Seixas Grass
1954 Wimbledon Jaroslav Drobný Grass
1955 Wimbledon Tony Trabert Grass
1956 Wimbledon Lew Hoad Grass
1957 Wimbledon Lew Hoad Grass
1958 Wimbledon Ashley Cooper Grass
1959 Wimbledon Alex Olmedo Grass
1960 Wimbledon Neale Fraser Grass
1961 Wimbledon Rod Laver Grass
1962 Wimbledon Rod Laver Grass
1963 Wimbledon Chuck McKinley Grass
1964 Wimbledon Roy Emerson Grass
1965 Wimbledon Roy Emerson Grass
1966 Wimbledon Manuel Santana Grass
1967 Wimbledon John Newcombe Grass
1968 Wimbledon Rod Laver Grass
1969 Wimbledon Rod Laver Grass
1970 Wimbledon John Newcombe Grass
1971 Wimbledon John Newcombe Grass
1972 Wimbledon Stan Smith Grass
1973 Wimbledon Jan Kodeš Grass
1974 Wimbledon Jimmy Connors Grass
1975 Wimbledon Arthur Ashe Grass
1976 Wimbledon Björn Borg Grass
1978 Wimbledon Björn Borg Grass
1979 Wimbledon Björn Borg Grass
1980 Wimbledon Björn Borg Grass
1981 Wimbledon John McEnroe Grass
1982 Wimbledon Jimmy Connors Grass
1983 Wimbledon John McEnroe Grass
1984 Wimbledon John McEnroe Grass
1985 Wimbledon Boris Becker Grass
1986 Wimbledon Boris Becker Grass
1987 Wimbledon Pat Cash Grass
1988 Wimbledon Stefan Edberg Grass
1989 Wimbledon Boris Becker Grass
1990 Wimbledon Stefan Edberg Grass
1991 Wimbledon Michael Stich Grass
1992 Wimbledon Andre Agassi Grass
1993 Wimbledon Pete Sampras Grass
1994 Wimbledon Pete Sampras Grass
1995 Wimbledon Pete Sampras Grass
1996 Wimbledon Richard Krajicek Grass
1997 Wimbledon Pete Sampras Grass
1998 Wimbledon Pete Sampras Grass
1999 Wimbledon Pete Sampras Grass
2000 Wimbledon Pete Sampras Grass
2001 Wimbledon Goran Ivaniševic Grass
2002 Wimbledon Lleyton Hewitt Grass
2003 Wimbledon Roger Federer Grass
2004 Wimbledon Roger Federer Grass
2005 Wimbledon Roger Federer Grass
2006 Wimbledon Roger Federer Grass
2007 Wimbledon Roger Federer Grass
2008 Wimbledon Rafael Nadal Grass
2009 Wimbledon Roger Federer Grass
2010 Wimbledon Rafael Nadal Grass
2011 Wimbledon Novak Djokovic Grass
2012 Wimbledon Roger Federer Grass
2013 Wimbledon Andy Murray Grass
2014 Wimbledon Novak Djokovic Grass
2015 Wimbledon Novak Djokovic Grass
2016 Wimbledon Andy Murray Grass
2017 Wimbledon Roger Federer Grass
2018 Wimbledon Novak Djokovic Grass
1881 US Open Richard Sears Grass
1882 US Open Richard Sears Grass
1883 US Open Richard Sears Grass
1884 US Open Richard Sears Grass
1885 US Open Richard Sears Grass
1886 US Open Richard Sears Grass
1887 US Open Richard Sears Grass
1888 US Open Henry Slocum Grass
1889 US Open Henry Slocum Grass
1890 US Open Oliver Campbell Grass
1891 US Open Oliver Campbell Grass
1892 US Open Oliver Campbell Grass
1893 US Open Robert Wrenn Grass
1894 US Open Robert Wrenn Grass
1895 US Open Fred Hovey Grass
1896 US Open Robert Wrenn Grass
1897 US Open Robert Wrenn Grass
1898 US Open Malcolm Whitman Grass
1899 US Open Malcolm Whitman Grass
1900 US Open Malcolm Whitman Grass
1901 US Open William Larned Grass
1902 US Open William Larned Grass
1903 US Open Laurence Doherty Grass
1904 US Open Holcombe Ward Grass
1905 US Open Beals Wright Grass
1906 US Open William Clothier Grass
1907 US Open William Larned Grass
1908 US Open William Larned Grass
1909 US Open William Larned Grass
1910 US Open William Larned Grass
1911 US Open William Larned Grass
1912 US Open Maurice McLoughlin Grass
1913 US Open Maurice McLoughlin Grass
1914 US Open Richard Williams Grass
1915 US Open William Johnston Grass
1920 US Open Bill Tilden Grass
1921 US Open Bill Tilden Grass
1922 US Open Bill Tilden Grass
1923 US Open Bill Tilden Grass
1924 US Open Bill Tilden Grass
1925 US Open Bill Tilden Grass
1926 US Open René Lacoste Grass
1927 US Open René Lacoste Grass
1928 US Open Henri Cochet Grass
1929 US Open Bill Tilden Grass
1930 US Open John Doeg Grass
1931 US Open Ellsworth Vines Grass
1932 US Open Ellsworth Vines Grass
1933 US Open Fred Perry Grass
1934 US Open Fred Perry Grass
1935 US Open Wilmer Allison Grass
1936 US Open Fred Perry Grass
1937 US Open Don Budge Grass
1938 US Open Don Budge Grass
1939 US Open Bobby Riggs Grass
1940 US Open Don McNeill Grass
1946 US Open Jack Kramer Grass
1947 US Open Jack Kramer Grass
1948 US Open Pancho Gonzales Grass
1949 US Open Pancho Gonzales Grass
1950 US Open Arthur Larsen Grass
1951 US Open Frank Sedgman Grass
1952 US Open Frank Sedgman Grass
1953 US Open Tony Trabert Grass
1954 US Open Vic Seixas Grass
1955 US Open Tony Trabert Grass
1956 US Open Ken Rosewall Grass
1957 US Open Malcolm Anderson Grass
1958 US Open Ashley Cooper Grass
1959 US Open Neale Fraser Grass
1960 US Open Neale Fraser Grass
1961 US Open Roy Emerson Grass
1962 US Open Rod Laver Grass
1963 US Open Rafael Osuna Grass
1964 US Open Roy Emerson Grass
1965 US Open Manuel Santana Grass
1966 US Open Fred Stolle Grass
1967 US Open John Newcombe Grass
1968 US Open Arthur Ashe Grass
1969 US Open Rod Laver Grass
1970 US Open Ken Rosewall Grass
1971 US Open Stan Smith Grass
1972 US Open Ilie Nastase Grass
1973 US Open John Newcombe Grass
1974 US Open Jimmy Connors Grass
1975 US Open Manuel Orantes Clay
1976 US Open Jimmy Connors Clay
1978 US Open Jimmy Connors Hard Court
1979 US Open John McEnroe Hard Court
1980 US Open John McEnroe Hard Court
1981 US Open John McEnroe Hard Court
1982 US Open Jimmy Connors Hard Court
1983 US Open Jimmy Connors Hard Court
1984 US Open John McEnroe Hard Court
1985 US Open Ivan Lendl Hard Court
1986 US Open Ivan Lendl Hard Court
1987 US Open Ivan Lendl Hard Court
1988 US Open Mats Wilander Hard Court
1989 US Open Boris Becker Hard Court
1990 US Open Pete Sampras Hard Court
1991 US Open Stefan Edberg Hard Court
1992 US Open Stefan Edberg Hard Court
1993 US Open Pete Sampras Hard Court
1994 US Open Andre Agassi Hard Court
1995 US Open Pete Sampras Hard Court
1996 US Open Pete Sampras Hard Court
1997 US Open Patrick Rafter Hard Court
1998 US Open Patrick Rafter Hard Court
1999 US Open Andre Agassi Hard Court
2000 US Open Marat Safin Hard Court
2001 US Open Lleyton Hewitt Hard Court
2002 US Open Pete Sampras Hard Court
2003 US Open Andy Roddick Hard Court
2004 US Open Roger Federer Hard Court
2005 US Open Roger Federer Hard Court
2006 US Open Roger Federer Hard Court
2007 US Open Roger Federer Hard Court
2008 US Open Roger Federer Hard Court
2009 US Open Juan Martín Hard Court
2010 US Open Rafael Nadal Hard Court
2011 US Open Novak Djokovic Hard Court
2012 US Open Andy Murray Hard Court
2013 US Open Rafael Nadal Hard Court
2014 US Open Marin Cilic Hard Court
2015 US Open Novak Djokovic Hard Court
2016 US Open Stan Wawrinka Hard Court
2017 US Open Rafael Nadal Hard Court
2018 US Open Novak Djokovic Hard Court
tidyOrder<-tidyCase %>% group_by(Surface,Player) %>% summarise(Total_Wins=n()) #%>% filter(Total_Wins==max(Total_Wins)) 
tidyOrder %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Surface Player Total_Wins
Clay Rafael Nadal 11
Hard Court Roger Federer 11
Grass Bill Tilden 10
Grass Roy Emerson 10
Grass Rod Laver 9
Hard Court Novak Djokovic 9
Clay Max Decugis 8
Grass Roger Federer 8
Grass Fred Perry 7
Grass John Newcombe 7
Grass Pete Sampras 7
Grass Richard Sears 7
Grass William Larned 7
Grass William Renshaw 7
Hard Court Pete Sampras 7
Clay Björn Borg 6
Grass Anthony Wilding 6
Grass Ken Rosewall 6
Grass Laurence Doherty 6
Hard Court Andre Agassi 6
Clay Henri Cochet 5
Grass Don Budge 5
Grass Frank Sedgman 5
Grass Jack Crawford 5
Hard Court Ivan Lendl 5
Clay André Vacherot 4
Clay Paul Aymé 4
Grass Ashley Cooper 4
Grass Björn Borg 4
Grass Jimmy Connors 4
Grass Novak Djokovic 4
Grass Reginald Doherty 4
Grass René Lacoste 4
Grass Robert Wrenn 4
Grass Stefan Edberg 4
Hard Court John McEnroe 4
Hard Court Rafael Nadal 4
Clay Gustavo Kuerten 3
Clay Ivan Lendl 3
Clay Mats Wilander 3
Clay Maurice Germot 3
Clay René Lacoste 3
Grass Adrian Quist 3
Grass Arthur Ashe 3
Grass Arthur Gore 3
Grass Boris Becker 3
Grass Ellsworth Vines 3
Grass Henri Cochet 3
Grass Jack Kramer 3
Grass James Anderson 3
Grass Jean Borotra 3
Grass John McEnroe 3
Grass Lew Hoad 3
Grass Malcolm Whitman 3
Grass Neale Fraser 3
Grass Norman Brookes 3
Grass Oliver Campbell 3
Grass Tony Trabert 3
Grass Wilfred Baddeley 3
Hard Court Boris Becker 3
Hard Court Jimmy Connors 3
Clay André Gobert 2
Clay Frank Parker 2
Clay Jan Kodeš 2
Clay Jaroslav Drobný 2
Clay Jean Borotra 2
Clay Jim Courier 2
Clay Ken Rosewall 2
Clay Manuel Santana 2
Clay Nicola Pietrangeli 2
Clay Rod Laver 2
Clay Roy Emerson 2
Clay Sergi Bruguera 2
Clay Tony Trabert 2
Grass Alex Olmedo 2
Grass Andy Murray 2
Grass Bobby Riggs 2
Grass Gerald Patterson 2
Grass Guillermo Vilas 2
Grass Henry Slocum 2
Grass Johan Kriek 2
Grass John Bromwich 2
Grass John Hartley 2
Grass Joshua Pim 2
Grass Manuel Santana 2
Grass Mats Wilander 2
Grass Maurice McLoughlin 2
Grass Pancho Gonzales 2
Grass Pat O’Hara Wood 2
Grass Rafael Nadal 2
Grass Richard Savitt 2
Grass Rodney Heath 2
Grass Stan Smith 2
Grass Vic Seixas 2
Grass William Johnston 2
Hard Court Jim Courier 2
Hard Court Marat Safin 2
Hard Court Mats Wilander 2
Hard Court Patrick Rafter 2
Hard Court Stan Wawrinka 2
Hard Court Stefan Edberg 2
Clay Adriano Panatta 1
Clay Albert Costa 1
Clay Andre Agassi 1
Clay Andrés Gimeno 1
Clay Andrés Gómez 1
Clay Budge Patty 1
Clay Carlos Moyá 1
Clay Don Budge 1
Clay Don McNeill 1
Clay François Blanchy 1
Clay Fred Perry 1
Clay Fred Stolle 1
Clay Gastón Gaudio 1
Clay H. Briggs 1
Clay Henner Henkel 1
Clay Ilie Nastase 1
Clay Jack Crawford 1
Clay Jean Samazeuilh 1
Clay Jean Schopfer 1
Clay Jimmy Connors 1
Clay József Asbóth 1
Clay Juan Carlos 1
Clay Laurent Riboulet 1
Clay Lew Hoad 1
Clay Manuel Orantes 1
Clay Marcel Bernard 1
Clay Mervyn Rose 1
Clay Michael Chang 1
Clay Michel Vacherot 1
Clay Novak Djokovic 1
Clay Roger Federer 1
Clay Stan Wawrinka 1
Clay Sven Davidson 1
Clay Thomas Muster 1
Clay Tony Roche 1
Clay Yannick Noah 1
Clay Yevgeny Kafelnikov 1
Grass Andre Agassi 1
Grass Arthur Larsen 1
Grass Arthur O’Hara Wood 1
Grass Beals Wright 1
Grass Bob Falkenburg 1
Grass Brian Teacher 1
Grass Budge Patty 1
Grass Chuck McKinley 1
Grass Dinny Pails 1
Grass Don McNeill 1
Grass Edgar Moon 1
Grass Ernest Renshaw 1
Grass Ernie Parker 1
Grass Francis Lowe 1
Grass Frank Hadow 1
Grass Fred Alexander 1
Grass Fred Hovey 1
Grass Fred Stolle 1
Grass Goran Ivaniševic 1
Grass Harold Mahony 1
Grass Herbert Lawford 1
Grass Holcombe Ward 1
Grass Horace Rice 1
Grass Ilie Nastase 1
Grass James Cecil 1
Grass Jan Kodeš 1
Grass Jaroslav Drobný 1
Grass John Doeg 1
Grass John Gregory 1
Grass John Hawkes 1
Grass Ken McGregor 1
Grass Lleyton Hewitt 1
Grass Malcolm Anderson 1
Grass Mark Edmondson 1
Grass Mervyn Rose 1
Grass Michael Stich 1
Grass Pat Cash 1
Grass Rafael Osuna 1
Grass Rhys Gemmell 1
Grass Richard Krajicek 1
Grass Richard Williams 1
Grass Sidney Wood 1
Grass Spencer Gore 1
Grass Ted Schroeder 1
Grass Vivian McGrath 1
Grass William Bowrey 1
Grass William Clothier 1
Grass Willoughby Hamilton 1
Grass Wilmer Allison 1
Grass Yvon Petra 1
Hard Court Andy Murray 1
Hard Court Andy Roddick 1
Hard Court Juan Martín 1
Hard Court Lleyton Hewitt 1
Hard Court Marin Cilic 1
Hard Court Petr Korda 1
Hard Court Thomas Johansson 1
Hard Court Yevgeny Kafelnikov 1
tidyOrder<-tidyOrder %>% mutate(PlayerSurface=paste(Player,Surface,sep = " on "))
tidyOrder$PlayerSurface<-factor(tidyOrder$PlayerSurface,levels = tidyOrder$PlayerSurface[order(-tidyOrder$Total_Wins)])
tidyOrder %>% filter(Total_Wins==max(Total_Wins)) %>% ggplot(aes(x=PlayerSurface, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Best player by surface") 

Adding ATP tournamets to table

url<-'https://en.wikipedia.org/wiki/ATP_World_Tour_Masters_1000'
webPage<- url %>% read_html()
vectorTable<-webPage %>% html_nodes('th') %>% html_text()
tableHeaderPositions<-which("Indian Wells"==vectorTable)
tableHeaderLengths<-diff(tableHeaderPositions)
tableHeaders<-c()
j<-seq(1:(length(tableHeaderPositions)-1))
for (i in j) {
  tableHeaders[[i]]<-vectorTable[(tableHeaderPositions[i]):((tableHeaderPositions[i])+tableHeaderLengths[i]-2)]
}
i<-i+1
tableHeaders[[i]]<-vectorTable[(tableHeaderPositions[i]):((tableHeaderPositions[i])+10)]
vectorTable<-webPage %>% html_nodes('td') %>% html_text()

getMastersTable<-function(endYear,startYear) {
  years<-paste(c(endYear:startYear))
  m<-match(years,vectorTable)
  n<-diff(m)
  #we copy all the years with complete tournament data on to a new vector 
  x<-c()
  i<-1
  for (nn in n) {x<-c(x,vectorTable[m[i]:(m[i]+(nn-1))]); i<-i+1}
  x<-c(x,vectorTable[m[i]:(m[i]+(nn-1))])
  tblTable<-tbl_df(as.data.frame(matrix(x,nrow=length(x)/10,ncol=10,byrow = TRUE)))
  tblTable<-setNames(tblTable,c('Year',tableHeaders[[1]]))
  tidyTableMasters<-gather(tblTable,"Tournament","Player",2:10)
  tidyTableMasters$Player<-str_extract(tidyTableMasters$Player," [:alpha:][:alpha:]+")
  tidyTableMasters<-tidyTableMasters %>% na.omit()
  return(mutate(tidyTableMasters,Tournament_Type='Masters'))
}
tidyTableMasters<-getMastersTable(2018,2011)
## Warning: attributes are not identical across measure variables;
## they will be dropped
#we clean the original Grand Slam table to only show last names so we can use it together with the Masters table
tidyTable$Player<-str_extract(tidyTable$Player," [A-Z][:alpha:]+")
tidyTable<-mutate(tidyTable,Tournament_Type='Grand Slam')
tidyTableAll<-full_join(tidyTable,tidyTableMasters)
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Tournament Player Tournament_Type
1905 Australian Open Heath Grand Slam
1906 Australian Open Wilding Grand Slam
1907 Australian Open Rice Grand Slam
1908 Australian Open Alexander Grand Slam
1909 Australian Open Wilding Grand Slam
1910 Australian Open Heath Grand Slam
1911 Australian Open Brookes Grand Slam
1912 Australian Open Cecil Grand Slam
1913 Australian Open Parker Grand Slam
1914 Australian Open Wood Grand Slam
1915 Australian Open Lowe Grand Slam
1920 Australian Open Wood Grand Slam
1921 Australian Open Gemmell Grand Slam
1922 Australian Open Anderson Grand Slam
1923 Australian Open Wood Grand Slam
1924 Australian Open Anderson Grand Slam
1925 Australian Open Anderson Grand Slam
1926 Australian Open Hawkes Grand Slam
1927 Australian Open Patterson Grand Slam
1928 Australian Open Borotra Grand Slam
1929 Australian Open Gregory Grand Slam
1930 Australian Open Moon Grand Slam
1931 Australian Open Crawford Grand Slam
1932 Australian Open Crawford Grand Slam
1933 Australian Open Crawford Grand Slam
1934 Australian Open Perry Grand Slam
1935 Australian Open Crawford Grand Slam
1936 Australian Open Quist Grand Slam
1937 Australian Open McGrath Grand Slam
1938 Australian Open Budge Grand Slam
1939 Australian Open Bromwich Grand Slam
1940 Australian Open Quist Grand Slam
1946 Australian Open Bromwich Grand Slam
1947 Australian Open Pails Grand Slam
1948 Australian Open Quist Grand Slam
1949 Australian Open Sedgman Grand Slam
1950 Australian Open Sedgman Grand Slam
1951 Australian Open Savitt Grand Slam
1952 Australian Open McGregor Grand Slam
1953 Australian Open Rosewall Grand Slam
1954 Australian Open Rose Grand Slam
1955 Australian Open Rosewall Grand Slam
1956 Australian Open Hoad Grand Slam
1957 Australian Open Cooper Grand Slam
1958 Australian Open Cooper Grand Slam
1959 Australian Open Olmedo Grand Slam
1960 Australian Open Laver Grand Slam
1961 Australian Open Emerson Grand Slam
1962 Australian Open Laver Grand Slam
1963 Australian Open Emerson Grand Slam
1964 Australian Open Emerson Grand Slam
1965 Australian Open Emerson Grand Slam
1966 Australian Open Emerson Grand Slam
1967 Australian Open Emerson Grand Slam
1968 Australian Open Bowrey Grand Slam
1969 Australian Open Laver Grand Slam
1970 Australian Open Ashe Grand Slam
1971 Australian Open Rosewall Grand Slam
1972 Australian Open Rosewall Grand Slam
1973 Australian Open Newcombe Grand Slam
1974 Australian Open Connors Grand Slam
1975 Australian Open Newcombe Grand Slam
1976 Australian Open Edmondson Grand Slam
1978 Australian Open Vilas Grand Slam
1979 Australian Open Vilas Grand Slam
1980 Australian Open Teacher Grand Slam
1981 Australian Open Kriek Grand Slam
1982 Australian Open Kriek Grand Slam
1983 Australian Open Wilander Grand Slam
1984 Australian Open Wilander Grand Slam
1985 Australian Open Edberg Grand Slam
1987 Australian Open Edberg Grand Slam
1988 Australian Open Wilander Grand Slam
1989 Australian Open Lendl Grand Slam
1990 Australian Open Lendl Grand Slam
1991 Australian Open Becker Grand Slam
1992 Australian Open Courier Grand Slam
1993 Australian Open Courier Grand Slam
1994 Australian Open Sampras Grand Slam
1995 Australian Open Agassi Grand Slam
1996 Australian Open Becker Grand Slam
1997 Australian Open Sampras Grand Slam
1998 Australian Open Korda Grand Slam
1999 Australian Open Kafelnikov Grand Slam
2000 Australian Open Agassi Grand Slam
2001 Australian Open Agassi Grand Slam
2002 Australian Open Johansson Grand Slam
2003 Australian Open Agassi Grand Slam
2004 Australian Open Federer Grand Slam
2005 Australian Open Safin Grand Slam
2006 Australian Open Federer Grand Slam
2007 Australian Open Federer Grand Slam
2008 Australian Open Djokovic Grand Slam
2009 Australian Open Nadal Grand Slam
2010 Australian Open Federer Grand Slam
2011 Australian Open Djokovic Grand Slam
2012 Australian Open Djokovic Grand Slam
2013 Australian Open Djokovic Grand Slam
2014 Australian Open Wawrinka Grand Slam
2015 Australian Open Djokovic Grand Slam
2016 Australian Open Djokovic Grand Slam
2017 Australian Open Federer Grand Slam
2018 Australian Open Federer Grand Slam
1891 French Open Briggs Grand Slam
1892 French Open Schopfer Grand Slam
1893 French Open Riboulet Grand Slam
1894 French Open Vacherot Grand Slam
1895 French Open Vacherot Grand Slam
1896 French Open Vacherot Grand Slam
1897 French Open Aymé Grand Slam
1898 French Open Aymé Grand Slam
1899 French Open Aymé Grand Slam
1900 French Open Aymé Grand Slam
1901 French Open Vacherot Grand Slam
1902 French Open Vacherot Grand Slam
1903 French Open Decugis Grand Slam
1904 French Open Decugis Grand Slam
1905 French Open Germot Grand Slam
1906 French Open Germot Grand Slam
1907 French Open Decugis Grand Slam
1908 French Open Decugis Grand Slam
1909 French Open Decugis Grand Slam
1910 French Open Germot Grand Slam
1911 French Open Gobert Grand Slam
1912 French Open Decugis Grand Slam
1913 French Open Decugis Grand Slam
1914 French Open Decugis Grand Slam
1920 French Open Gobert Grand Slam
1921 French Open Samazeuilh Grand Slam
1922 French Open Cochet Grand Slam
1923 French Open Blanchy Grand Slam
1924 French Open Borotra Grand Slam
1925 French Open Lacoste Grand Slam
1926 French Open Cochet Grand Slam
1927 French Open Lacoste Grand Slam
1928 French Open Cochet Grand Slam
1929 French Open Lacoste Grand Slam
1930 French Open Cochet Grand Slam
1931 French Open Borotra Grand Slam
1932 French Open Cochet Grand Slam
1933 French Open Crawford Grand Slam
1935 French Open Perry Grand Slam
1937 French Open Henkel Grand Slam
1938 French Open Budge Grand Slam
1939 French Open McNeill Grand Slam
1946 French Open Bernard Grand Slam
1947 French Open Asbóth Grand Slam
1948 French Open Parker Grand Slam
1949 French Open Parker Grand Slam
1950 French Open Patty Grand Slam
1951 French Open Drobný Grand Slam
1952 French Open Drobný Grand Slam
1953 French Open Rosewall Grand Slam
1954 French Open Trabert Grand Slam
1955 French Open Trabert Grand Slam
1956 French Open Hoad Grand Slam
1957 French Open Davidson Grand Slam
1958 French Open Rose Grand Slam
1959 French Open Pietrangeli Grand Slam
1960 French Open Pietrangeli Grand Slam
1961 French Open Santana Grand Slam
1962 French Open Laver Grand Slam
1963 French Open Emerson Grand Slam
1964 French Open Santana Grand Slam
1965 French Open Stolle Grand Slam
1966 French Open Roche Grand Slam
1967 French Open Emerson Grand Slam
1968 French Open Rosewall Grand Slam
1969 French Open Laver Grand Slam
1970 French Open Kodeš Grand Slam
1971 French Open Kodeš Grand Slam
1972 French Open Gimeno Grand Slam
1973 French Open Nastase Grand Slam
1974 French Open Borg Grand Slam
1975 French Open Borg Grand Slam
1976 French Open Panatta Grand Slam
1978 French Open Borg Grand Slam
1979 French Open Borg Grand Slam
1980 French Open Borg Grand Slam
1981 French Open Borg Grand Slam
1982 French Open Wilander Grand Slam
1983 French Open Noah Grand Slam
1984 French Open Lendl Grand Slam
1985 French Open Wilander Grand Slam
1986 French Open Lendl Grand Slam
1987 French Open Lendl Grand Slam
1988 French Open Wilander Grand Slam
1989 French Open Chang Grand Slam
1990 French Open Gómez Grand Slam
1991 French Open Courier Grand Slam
1992 French Open Courier Grand Slam
1993 French Open Bruguera Grand Slam
1994 French Open Bruguera Grand Slam
1995 French Open Muster Grand Slam
1996 French Open Kafelnikov Grand Slam
1997 French Open Kuerten Grand Slam
1998 French Open Moyá Grand Slam
1999 French Open Agassi Grand Slam
2000 French Open Kuerten Grand Slam
2001 French Open Kuerten Grand Slam
2002 French Open Costa Grand Slam
2003 French Open Carlos Grand Slam
2004 French Open Gaudio Grand Slam
2005 French Open Nadal Grand Slam
2006 French Open Nadal Grand Slam
2007 French Open Nadal Grand Slam
2008 French Open Nadal Grand Slam
2009 French Open Federer Grand Slam
2010 French Open Nadal Grand Slam
2011 French Open Nadal Grand Slam
2012 French Open Nadal Grand Slam
2013 French Open Nadal Grand Slam
2014 French Open Nadal Grand Slam
2015 French Open Wawrinka Grand Slam
2016 French Open Djokovic Grand Slam
2017 French Open Nadal Grand Slam
2018 French Open Nadal Grand Slam
1877 Wimbledon Gore Grand Slam
1878 Wimbledon Hadow Grand Slam
1879 Wimbledon Hartley Grand Slam
1880 Wimbledon Hartley Grand Slam
1881 Wimbledon Renshaw Grand Slam
1882 Wimbledon Renshaw Grand Slam
1883 Wimbledon Renshaw Grand Slam
1884 Wimbledon Renshaw Grand Slam
1885 Wimbledon Renshaw Grand Slam
1886 Wimbledon Renshaw Grand Slam
1887 Wimbledon Lawford Grand Slam
1888 Wimbledon Renshaw Grand Slam
1889 Wimbledon Renshaw Grand Slam
1890 Wimbledon Hamilton Grand Slam
1891 Wimbledon Baddeley Grand Slam
1892 Wimbledon Baddeley Grand Slam
1893 Wimbledon Pim Grand Slam
1894 Wimbledon Pim Grand Slam
1895 Wimbledon Baddeley Grand Slam
1896 Wimbledon Mahony Grand Slam
1897 Wimbledon Doherty Grand Slam
1898 Wimbledon Doherty Grand Slam
1899 Wimbledon Doherty Grand Slam
1900 Wimbledon Doherty Grand Slam
1901 Wimbledon Gore Grand Slam
1902 Wimbledon Doherty Grand Slam
1903 Wimbledon Doherty Grand Slam
1904 Wimbledon Doherty Grand Slam
1905 Wimbledon Doherty Grand Slam
1906 Wimbledon Doherty Grand Slam
1907 Wimbledon Brookes Grand Slam
1908 Wimbledon Gore Grand Slam
1909 Wimbledon Gore Grand Slam
1910 Wimbledon Wilding Grand Slam
1911 Wimbledon Wilding Grand Slam
1912 Wimbledon Wilding Grand Slam
1913 Wimbledon Wilding Grand Slam
1914 Wimbledon Brookes Grand Slam
1920 Wimbledon Tilden Grand Slam
1921 Wimbledon Tilden Grand Slam
1922 Wimbledon Patterson Grand Slam
1923 Wimbledon Johnston Grand Slam
1924 Wimbledon Borotra Grand Slam
1925 Wimbledon Lacoste Grand Slam
1926 Wimbledon Borotra Grand Slam
1927 Wimbledon Cochet Grand Slam
1928 Wimbledon Lacoste Grand Slam
1929 Wimbledon Cochet Grand Slam
1930 Wimbledon Tilden Grand Slam
1931 Wimbledon Wood Grand Slam
1932 Wimbledon Vines Grand Slam
1933 Wimbledon Crawford Grand Slam
1934 Wimbledon Perry Grand Slam
1935 Wimbledon Perry Grand Slam
1936 Wimbledon Perry Grand Slam
1937 Wimbledon Budge Grand Slam
1938 Wimbledon Budge Grand Slam
1939 Wimbledon Riggs Grand Slam
1946 Wimbledon Petra Grand Slam
1947 Wimbledon Kramer Grand Slam
1948 Wimbledon Falkenburg Grand Slam
1949 Wimbledon Schroeder Grand Slam
1950 Wimbledon Patty Grand Slam
1951 Wimbledon Savitt Grand Slam
1952 Wimbledon Sedgman Grand Slam
1953 Wimbledon Seixas Grand Slam
1954 Wimbledon Drobný Grand Slam
1955 Wimbledon Trabert Grand Slam
1956 Wimbledon Hoad Grand Slam
1957 Wimbledon Hoad Grand Slam
1958 Wimbledon Cooper Grand Slam
1959 Wimbledon Olmedo Grand Slam
1960 Wimbledon Fraser Grand Slam
1961 Wimbledon Laver Grand Slam
1962 Wimbledon Laver Grand Slam
1963 Wimbledon McKinley Grand Slam
1964 Wimbledon Emerson Grand Slam
1965 Wimbledon Emerson Grand Slam
1966 Wimbledon Santana Grand Slam
1967 Wimbledon Newcombe Grand Slam
1968 Wimbledon Laver Grand Slam
1969 Wimbledon Laver Grand Slam
1970 Wimbledon Newcombe Grand Slam
1971 Wimbledon Newcombe Grand Slam
1972 Wimbledon Smith Grand Slam
1973 Wimbledon Kodeš Grand Slam
1974 Wimbledon Connors Grand Slam
1975 Wimbledon Ashe Grand Slam
1976 Wimbledon Borg Grand Slam
1978 Wimbledon Borg Grand Slam
1979 Wimbledon Borg Grand Slam
1980 Wimbledon Borg Grand Slam
1981 Wimbledon McEnroe Grand Slam
1982 Wimbledon Connors Grand Slam
1983 Wimbledon McEnroe Grand Slam
1984 Wimbledon McEnroe Grand Slam
1985 Wimbledon Becker Grand Slam
1986 Wimbledon Becker Grand Slam
1987 Wimbledon Cash Grand Slam
1988 Wimbledon Edberg Grand Slam
1989 Wimbledon Becker Grand Slam
1990 Wimbledon Edberg Grand Slam
1991 Wimbledon Stich Grand Slam
1992 Wimbledon Agassi Grand Slam
1993 Wimbledon Sampras Grand Slam
1994 Wimbledon Sampras Grand Slam
1995 Wimbledon Sampras Grand Slam
1996 Wimbledon Krajicek Grand Slam
1997 Wimbledon Sampras Grand Slam
1998 Wimbledon Sampras Grand Slam
1999 Wimbledon Sampras Grand Slam
2000 Wimbledon Sampras Grand Slam
2001 Wimbledon Ivaniševic Grand Slam
2002 Wimbledon Hewitt Grand Slam
2003 Wimbledon Federer Grand Slam
2004 Wimbledon Federer Grand Slam
2005 Wimbledon Federer Grand Slam
2006 Wimbledon Federer Grand Slam
2007 Wimbledon Federer Grand Slam
2008 Wimbledon Nadal Grand Slam
2009 Wimbledon Federer Grand Slam
2010 Wimbledon Nadal Grand Slam
2011 Wimbledon Djokovic Grand Slam
2012 Wimbledon Federer Grand Slam
2013 Wimbledon Murray Grand Slam
2014 Wimbledon Djokovic Grand Slam
2015 Wimbledon Djokovic Grand Slam
2016 Wimbledon Murray Grand Slam
2017 Wimbledon Federer Grand Slam
2018 Wimbledon Djokovic Grand Slam
1881 US Open Sears Grand Slam
1882 US Open Sears Grand Slam
1883 US Open Sears Grand Slam
1884 US Open Sears Grand Slam
1885 US Open Sears Grand Slam
1886 US Open Sears Grand Slam
1887 US Open Sears Grand Slam
1888 US Open Slocum Grand Slam
1889 US Open Slocum Grand Slam
1890 US Open Campbell Grand Slam
1891 US Open Campbell Grand Slam
1892 US Open Campbell Grand Slam
1893 US Open Wrenn Grand Slam
1894 US Open Wrenn Grand Slam
1895 US Open Hovey Grand Slam
1896 US Open Wrenn Grand Slam
1897 US Open Wrenn Grand Slam
1898 US Open Whitman Grand Slam
1899 US Open Whitman Grand Slam
1900 US Open Whitman Grand Slam
1901 US Open Larned Grand Slam
1902 US Open Larned Grand Slam
1903 US Open Doherty Grand Slam
1904 US Open Ward Grand Slam
1905 US Open Wright Grand Slam
1906 US Open Clothier Grand Slam
1907 US Open Larned Grand Slam
1908 US Open Larned Grand Slam
1909 US Open Larned Grand Slam
1910 US Open Larned Grand Slam
1911 US Open Larned Grand Slam
1912 US Open McLoughlin Grand Slam
1913 US Open McLoughlin Grand Slam
1914 US Open Williams Grand Slam
1915 US Open Johnston Grand Slam
1920 US Open Tilden Grand Slam
1921 US Open Tilden Grand Slam
1922 US Open Tilden Grand Slam
1923 US Open Tilden Grand Slam
1924 US Open Tilden Grand Slam
1925 US Open Tilden Grand Slam
1926 US Open Lacoste Grand Slam
1927 US Open Lacoste Grand Slam
1928 US Open Cochet Grand Slam
1929 US Open Tilden Grand Slam
1930 US Open Doeg Grand Slam
1931 US Open Vines Grand Slam
1932 US Open Vines Grand Slam
1933 US Open Perry Grand Slam
1934 US Open Perry Grand Slam
1935 US Open Allison Grand Slam
1936 US Open Perry Grand Slam
1937 US Open Budge Grand Slam
1938 US Open Budge Grand Slam
1939 US Open Riggs Grand Slam
1940 US Open McNeill Grand Slam
1946 US Open Kramer Grand Slam
1947 US Open Kramer Grand Slam
1948 US Open Gonzales Grand Slam
1949 US Open Gonzales Grand Slam
1950 US Open Larsen Grand Slam
1951 US Open Sedgman Grand Slam
1952 US Open Sedgman Grand Slam
1953 US Open Trabert Grand Slam
1954 US Open Seixas Grand Slam
1955 US Open Trabert Grand Slam
1956 US Open Rosewall Grand Slam
1957 US Open Anderson Grand Slam
1958 US Open Cooper Grand Slam
1959 US Open Fraser Grand Slam
1960 US Open Fraser Grand Slam
1961 US Open Emerson Grand Slam
1962 US Open Laver Grand Slam
1963 US Open Osuna Grand Slam
1964 US Open Emerson Grand Slam
1965 US Open Santana Grand Slam
1966 US Open Stolle Grand Slam
1967 US Open Newcombe Grand Slam
1968 US Open Ashe Grand Slam
1969 US Open Laver Grand Slam
1970 US Open Rosewall Grand Slam
1971 US Open Smith Grand Slam
1972 US Open Nastase Grand Slam
1973 US Open Newcombe Grand Slam
1974 US Open Connors Grand Slam
1975 US Open Orantes Grand Slam
1976 US Open Connors Grand Slam
1978 US Open Connors Grand Slam
1979 US Open McEnroe Grand Slam
1980 US Open McEnroe Grand Slam
1981 US Open McEnroe Grand Slam
1982 US Open Connors Grand Slam
1983 US Open Connors Grand Slam
1984 US Open McEnroe Grand Slam
1985 US Open Lendl Grand Slam
1986 US Open Lendl Grand Slam
1987 US Open Lendl Grand Slam
1988 US Open Wilander Grand Slam
1989 US Open Becker Grand Slam
1990 US Open Sampras Grand Slam
1991 US Open Edberg Grand Slam
1992 US Open Edberg Grand Slam
1993 US Open Sampras Grand Slam
1994 US Open Agassi Grand Slam
1995 US Open Sampras Grand Slam
1996 US Open Sampras Grand Slam
1997 US Open Rafter Grand Slam
1998 US Open Rafter Grand Slam
1999 US Open Agassi Grand Slam
2000 US Open Safin Grand Slam
2001 US Open Hewitt Grand Slam
2002 US Open Sampras Grand Slam
2003 US Open Roddick Grand Slam
2004 US Open Federer Grand Slam
2005 US Open Federer Grand Slam
2006 US Open Federer Grand Slam
2007 US Open Federer Grand Slam
2008 US Open Federer Grand Slam
2009 US Open Martín Grand Slam
2010 US Open Nadal Grand Slam
2011 US Open Djokovic Grand Slam
2012 US Open Murray Grand Slam
2013 US Open Nadal Grand Slam
2014 US Open Cilic Grand Slam
2015 US Open Djokovic Grand Slam
2016 US Open Wawrinka Grand Slam
2017 US Open Nadal Grand Slam
2018 US Open Djokovic Grand Slam
2018 Indian Wells del Masters
2017 Indian Wells Federer Masters
2016 Indian Wells Djokovic Masters
2015 Indian Wells Djokovic Masters
2014 Indian Wells Djokovic Masters
2013 Indian Wells Nadal Masters
2012 Indian Wells Federer Masters
2011 Indian Wells Djokovic Masters
2018 Miami Isner Masters
2017 Miami Federer Masters
2016 Miami Djokovic Masters
2015 Miami Djokovic Masters
2014 Miami Djokovic Masters
2013 Miami Murray Masters
2012 Miami Djokovic Masters
2011 Miami Djokovic Masters
2018 Monte Carlo Nadal Masters
2017 Monte Carlo Nadal Masters
2016 Monte Carlo Nadal Masters
2015 Monte Carlo Djokovic Masters
2014 Monte Carlo Wawrinka Masters
2013 Monte Carlo Djokovic Masters
2012 Monte Carlo Nadal Masters
2011 Monte Carlo Nadal Masters
2018 Madrid Zverev Masters
2017 Madrid Nadal Masters
2016 Madrid Djokovic Masters
2015 Madrid Murray Masters
2014 Madrid Nadal Masters
2013 Madrid Nadal Masters
2012 Madrid Federer Masters
2011 Madrid Djokovic Masters
2018 Rome Nadal Masters
2017 Rome Zverev Masters
2016 Rome Murray Masters
2015 Rome Djokovic Masters
2014 Rome Djokovic Masters
2013 Rome Nadal Masters
2012 Rome Nadal Masters
2011 Rome Djokovic Masters
2018 Canada Nadal Masters
2017 Canada Zverev Masters
2016 Canada Djokovic Masters
2015 Canada Murray Masters
2014 Canada Tsonga Masters
2013 Canada Nadal Masters
2012 Canada Djokovic Masters
2011 Canada Djokovic Masters
2018 Cincinnati Djokovic Masters
2017 Cincinnati Dimitrov Masters
2016 Cincinnati Cilic Masters
2015 Cincinnati Federer Masters
2014 Cincinnati Federer Masters
2013 Cincinnati Nadal Masters
2012 Cincinnati Federer Masters
2011 Cincinnati Murray Masters
2017 Shanghai Federer Masters
2016 Shanghai Murray Masters
2015 Shanghai Djokovic Masters
2014 Shanghai Federer Masters
2013 Shanghai Djokovic Masters
2012 Shanghai Djokovic Masters
2011 Shanghai Murray Masters
2017 Paris Sock Masters
2016 Paris Murray Masters
2015 Paris Djokovic Masters
2014 Paris Djokovic Masters
2013 Paris Djokovic Masters
2012 Paris Ferrer Masters
2011 Paris Federer Masters
tidyTableAll<-full_join(tidyTableAll,getMastersTable(2010,2009))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll<-full_join(tidyTableAll,getMastersTable(2008,2004))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll<-full_join(tidyTableAll,getMastersTable(2003,2002))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll<-full_join(tidyTableAll,getMastersTable(2001,2000))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll<-full_join(tidyTableAll,getMastersTable(1999,1996))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll<-full_join(tidyTableAll,getMastersTable(1995,1990))
## Warning: attributes are not identical across measure variables;
## they will be dropped
## Joining, by = c("Year", "Tournament", "Player", "Tournament_Type")
## Warning: Column `Year` joining character vector and factor, coercing into
## character vector
tidyTableAll %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Year Tournament Player Tournament_Type
1905 Australian Open Heath Grand Slam
1906 Australian Open Wilding Grand Slam
1907 Australian Open Rice Grand Slam
1908 Australian Open Alexander Grand Slam
1909 Australian Open Wilding Grand Slam
1910 Australian Open Heath Grand Slam
1911 Australian Open Brookes Grand Slam
1912 Australian Open Cecil Grand Slam
1913 Australian Open Parker Grand Slam
1914 Australian Open Wood Grand Slam
1915 Australian Open Lowe Grand Slam
1920 Australian Open Wood Grand Slam
1921 Australian Open Gemmell Grand Slam
1922 Australian Open Anderson Grand Slam
1923 Australian Open Wood Grand Slam
1924 Australian Open Anderson Grand Slam
1925 Australian Open Anderson Grand Slam
1926 Australian Open Hawkes Grand Slam
1927 Australian Open Patterson Grand Slam
1928 Australian Open Borotra Grand Slam
1929 Australian Open Gregory Grand Slam
1930 Australian Open Moon Grand Slam
1931 Australian Open Crawford Grand Slam
1932 Australian Open Crawford Grand Slam
1933 Australian Open Crawford Grand Slam
1934 Australian Open Perry Grand Slam
1935 Australian Open Crawford Grand Slam
1936 Australian Open Quist Grand Slam
1937 Australian Open McGrath Grand Slam
1938 Australian Open Budge Grand Slam
1939 Australian Open Bromwich Grand Slam
1940 Australian Open Quist Grand Slam
1946 Australian Open Bromwich Grand Slam
1947 Australian Open Pails Grand Slam
1948 Australian Open Quist Grand Slam
1949 Australian Open Sedgman Grand Slam
1950 Australian Open Sedgman Grand Slam
1951 Australian Open Savitt Grand Slam
1952 Australian Open McGregor Grand Slam
1953 Australian Open Rosewall Grand Slam
1954 Australian Open Rose Grand Slam
1955 Australian Open Rosewall Grand Slam
1956 Australian Open Hoad Grand Slam
1957 Australian Open Cooper Grand Slam
1958 Australian Open Cooper Grand Slam
1959 Australian Open Olmedo Grand Slam
1960 Australian Open Laver Grand Slam
1961 Australian Open Emerson Grand Slam
1962 Australian Open Laver Grand Slam
1963 Australian Open Emerson Grand Slam
1964 Australian Open Emerson Grand Slam
1965 Australian Open Emerson Grand Slam
1966 Australian Open Emerson Grand Slam
1967 Australian Open Emerson Grand Slam
1968 Australian Open Bowrey Grand Slam
1969 Australian Open Laver Grand Slam
1970 Australian Open Ashe Grand Slam
1971 Australian Open Rosewall Grand Slam
1972 Australian Open Rosewall Grand Slam
1973 Australian Open Newcombe Grand Slam
1974 Australian Open Connors Grand Slam
1975 Australian Open Newcombe Grand Slam
1976 Australian Open Edmondson Grand Slam
1978 Australian Open Vilas Grand Slam
1979 Australian Open Vilas Grand Slam
1980 Australian Open Teacher Grand Slam
1981 Australian Open Kriek Grand Slam
1982 Australian Open Kriek Grand Slam
1983 Australian Open Wilander Grand Slam
1984 Australian Open Wilander Grand Slam
1985 Australian Open Edberg Grand Slam
1987 Australian Open Edberg Grand Slam
1988 Australian Open Wilander Grand Slam
1989 Australian Open Lendl Grand Slam
1990 Australian Open Lendl Grand Slam
1991 Australian Open Becker Grand Slam
1992 Australian Open Courier Grand Slam
1993 Australian Open Courier Grand Slam
1994 Australian Open Sampras Grand Slam
1995 Australian Open Agassi Grand Slam
1996 Australian Open Becker Grand Slam
1997 Australian Open Sampras Grand Slam
1998 Australian Open Korda Grand Slam
1999 Australian Open Kafelnikov Grand Slam
2000 Australian Open Agassi Grand Slam
2001 Australian Open Agassi Grand Slam
2002 Australian Open Johansson Grand Slam
2003 Australian Open Agassi Grand Slam
2004 Australian Open Federer Grand Slam
2005 Australian Open Safin Grand Slam
2006 Australian Open Federer Grand Slam
2007 Australian Open Federer Grand Slam
2008 Australian Open Djokovic Grand Slam
2009 Australian Open Nadal Grand Slam
2010 Australian Open Federer Grand Slam
2011 Australian Open Djokovic Grand Slam
2012 Australian Open Djokovic Grand Slam
2013 Australian Open Djokovic Grand Slam
2014 Australian Open Wawrinka Grand Slam
2015 Australian Open Djokovic Grand Slam
2016 Australian Open Djokovic Grand Slam
2017 Australian Open Federer Grand Slam
2018 Australian Open Federer Grand Slam
1891 French Open Briggs Grand Slam
1892 French Open Schopfer Grand Slam
1893 French Open Riboulet Grand Slam
1894 French Open Vacherot Grand Slam
1895 French Open Vacherot Grand Slam
1896 French Open Vacherot Grand Slam
1897 French Open Aymé Grand Slam
1898 French Open Aymé Grand Slam
1899 French Open Aymé Grand Slam
1900 French Open Aymé Grand Slam
1901 French Open Vacherot Grand Slam
1902 French Open Vacherot Grand Slam
1903 French Open Decugis Grand Slam
1904 French Open Decugis Grand Slam
1905 French Open Germot Grand Slam
1906 French Open Germot Grand Slam
1907 French Open Decugis Grand Slam
1908 French Open Decugis Grand Slam
1909 French Open Decugis Grand Slam
1910 French Open Germot Grand Slam
1911 French Open Gobert Grand Slam
1912 French Open Decugis Grand Slam
1913 French Open Decugis Grand Slam
1914 French Open Decugis Grand Slam
1920 French Open Gobert Grand Slam
1921 French Open Samazeuilh Grand Slam
1922 French Open Cochet Grand Slam
1923 French Open Blanchy Grand Slam
1924 French Open Borotra Grand Slam
1925 French Open Lacoste Grand Slam
1926 French Open Cochet Grand Slam
1927 French Open Lacoste Grand Slam
1928 French Open Cochet Grand Slam
1929 French Open Lacoste Grand Slam
1930 French Open Cochet Grand Slam
1931 French Open Borotra Grand Slam
1932 French Open Cochet Grand Slam
1933 French Open Crawford Grand Slam
1935 French Open Perry Grand Slam
1937 French Open Henkel Grand Slam
1938 French Open Budge Grand Slam
1939 French Open McNeill Grand Slam
1946 French Open Bernard Grand Slam
1947 French Open Asbóth Grand Slam
1948 French Open Parker Grand Slam
1949 French Open Parker Grand Slam
1950 French Open Patty Grand Slam
1951 French Open Drobný Grand Slam
1952 French Open Drobný Grand Slam
1953 French Open Rosewall Grand Slam
1954 French Open Trabert Grand Slam
1955 French Open Trabert Grand Slam
1956 French Open Hoad Grand Slam
1957 French Open Davidson Grand Slam
1958 French Open Rose Grand Slam
1959 French Open Pietrangeli Grand Slam
1960 French Open Pietrangeli Grand Slam
1961 French Open Santana Grand Slam
1962 French Open Laver Grand Slam
1963 French Open Emerson Grand Slam
1964 French Open Santana Grand Slam
1965 French Open Stolle Grand Slam
1966 French Open Roche Grand Slam
1967 French Open Emerson Grand Slam
1968 French Open Rosewall Grand Slam
1969 French Open Laver Grand Slam
1970 French Open Kodeš Grand Slam
1971 French Open Kodeš Grand Slam
1972 French Open Gimeno Grand Slam
1973 French Open Nastase Grand Slam
1974 French Open Borg Grand Slam
1975 French Open Borg Grand Slam
1976 French Open Panatta Grand Slam
1978 French Open Borg Grand Slam
1979 French Open Borg Grand Slam
1980 French Open Borg Grand Slam
1981 French Open Borg Grand Slam
1982 French Open Wilander Grand Slam
1983 French Open Noah Grand Slam
1984 French Open Lendl Grand Slam
1985 French Open Wilander Grand Slam
1986 French Open Lendl Grand Slam
1987 French Open Lendl Grand Slam
1988 French Open Wilander Grand Slam
1989 French Open Chang Grand Slam
1990 French Open Gómez Grand Slam
1991 French Open Courier Grand Slam
1992 French Open Courier Grand Slam
1993 French Open Bruguera Grand Slam
1994 French Open Bruguera Grand Slam
1995 French Open Muster Grand Slam
1996 French Open Kafelnikov Grand Slam
1997 French Open Kuerten Grand Slam
1998 French Open Moyá Grand Slam
1999 French Open Agassi Grand Slam
2000 French Open Kuerten Grand Slam
2001 French Open Kuerten Grand Slam
2002 French Open Costa Grand Slam
2003 French Open Carlos Grand Slam
2004 French Open Gaudio Grand Slam
2005 French Open Nadal Grand Slam
2006 French Open Nadal Grand Slam
2007 French Open Nadal Grand Slam
2008 French Open Nadal Grand Slam
2009 French Open Federer Grand Slam
2010 French Open Nadal Grand Slam
2011 French Open Nadal Grand Slam
2012 French Open Nadal Grand Slam
2013 French Open Nadal Grand Slam
2014 French Open Nadal Grand Slam
2015 French Open Wawrinka Grand Slam
2016 French Open Djokovic Grand Slam
2017 French Open Nadal Grand Slam
2018 French Open Nadal Grand Slam
1877 Wimbledon Gore Grand Slam
1878 Wimbledon Hadow Grand Slam
1879 Wimbledon Hartley Grand Slam
1880 Wimbledon Hartley Grand Slam
1881 Wimbledon Renshaw Grand Slam
1882 Wimbledon Renshaw Grand Slam
1883 Wimbledon Renshaw Grand Slam
1884 Wimbledon Renshaw Grand Slam
1885 Wimbledon Renshaw Grand Slam
1886 Wimbledon Renshaw Grand Slam
1887 Wimbledon Lawford Grand Slam
1888 Wimbledon Renshaw Grand Slam
1889 Wimbledon Renshaw Grand Slam
1890 Wimbledon Hamilton Grand Slam
1891 Wimbledon Baddeley Grand Slam
1892 Wimbledon Baddeley Grand Slam
1893 Wimbledon Pim Grand Slam
1894 Wimbledon Pim Grand Slam
1895 Wimbledon Baddeley Grand Slam
1896 Wimbledon Mahony Grand Slam
1897 Wimbledon Doherty Grand Slam
1898 Wimbledon Doherty Grand Slam
1899 Wimbledon Doherty Grand Slam
1900 Wimbledon Doherty Grand Slam
1901 Wimbledon Gore Grand Slam
1902 Wimbledon Doherty Grand Slam
1903 Wimbledon Doherty Grand Slam
1904 Wimbledon Doherty Grand Slam
1905 Wimbledon Doherty Grand Slam
1906 Wimbledon Doherty Grand Slam
1907 Wimbledon Brookes Grand Slam
1908 Wimbledon Gore Grand Slam
1909 Wimbledon Gore Grand Slam
1910 Wimbledon Wilding Grand Slam
1911 Wimbledon Wilding Grand Slam
1912 Wimbledon Wilding Grand Slam
1913 Wimbledon Wilding Grand Slam
1914 Wimbledon Brookes Grand Slam
1920 Wimbledon Tilden Grand Slam
1921 Wimbledon Tilden Grand Slam
1922 Wimbledon Patterson Grand Slam
1923 Wimbledon Johnston Grand Slam
1924 Wimbledon Borotra Grand Slam
1925 Wimbledon Lacoste Grand Slam
1926 Wimbledon Borotra Grand Slam
1927 Wimbledon Cochet Grand Slam
1928 Wimbledon Lacoste Grand Slam
1929 Wimbledon Cochet Grand Slam
1930 Wimbledon Tilden Grand Slam
1931 Wimbledon Wood Grand Slam
1932 Wimbledon Vines Grand Slam
1933 Wimbledon Crawford Grand Slam
1934 Wimbledon Perry Grand Slam
1935 Wimbledon Perry Grand Slam
1936 Wimbledon Perry Grand Slam
1937 Wimbledon Budge Grand Slam
1938 Wimbledon Budge Grand Slam
1939 Wimbledon Riggs Grand Slam
1946 Wimbledon Petra Grand Slam
1947 Wimbledon Kramer Grand Slam
1948 Wimbledon Falkenburg Grand Slam
1949 Wimbledon Schroeder Grand Slam
1950 Wimbledon Patty Grand Slam
1951 Wimbledon Savitt Grand Slam
1952 Wimbledon Sedgman Grand Slam
1953 Wimbledon Seixas Grand Slam
1954 Wimbledon Drobný Grand Slam
1955 Wimbledon Trabert Grand Slam
1956 Wimbledon Hoad Grand Slam
1957 Wimbledon Hoad Grand Slam
1958 Wimbledon Cooper Grand Slam
1959 Wimbledon Olmedo Grand Slam
1960 Wimbledon Fraser Grand Slam
1961 Wimbledon Laver Grand Slam
1962 Wimbledon Laver Grand Slam
1963 Wimbledon McKinley Grand Slam
1964 Wimbledon Emerson Grand Slam
1965 Wimbledon Emerson Grand Slam
1966 Wimbledon Santana Grand Slam
1967 Wimbledon Newcombe Grand Slam
1968 Wimbledon Laver Grand Slam
1969 Wimbledon Laver Grand Slam
1970 Wimbledon Newcombe Grand Slam
1971 Wimbledon Newcombe Grand Slam
1972 Wimbledon Smith Grand Slam
1973 Wimbledon Kodeš Grand Slam
1974 Wimbledon Connors Grand Slam
1975 Wimbledon Ashe Grand Slam
1976 Wimbledon Borg Grand Slam
1978 Wimbledon Borg Grand Slam
1979 Wimbledon Borg Grand Slam
1980 Wimbledon Borg Grand Slam
1981 Wimbledon McEnroe Grand Slam
1982 Wimbledon Connors Grand Slam
1983 Wimbledon McEnroe Grand Slam
1984 Wimbledon McEnroe Grand Slam
1985 Wimbledon Becker Grand Slam
1986 Wimbledon Becker Grand Slam
1987 Wimbledon Cash Grand Slam
1988 Wimbledon Edberg Grand Slam
1989 Wimbledon Becker Grand Slam
1990 Wimbledon Edberg Grand Slam
1991 Wimbledon Stich Grand Slam
1992 Wimbledon Agassi Grand Slam
1993 Wimbledon Sampras Grand Slam
1994 Wimbledon Sampras Grand Slam
1995 Wimbledon Sampras Grand Slam
1996 Wimbledon Krajicek Grand Slam
1997 Wimbledon Sampras Grand Slam
1998 Wimbledon Sampras Grand Slam
1999 Wimbledon Sampras Grand Slam
2000 Wimbledon Sampras Grand Slam
2001 Wimbledon Ivaniševic Grand Slam
2002 Wimbledon Hewitt Grand Slam
2003 Wimbledon Federer Grand Slam
2004 Wimbledon Federer Grand Slam
2005 Wimbledon Federer Grand Slam
2006 Wimbledon Federer Grand Slam
2007 Wimbledon Federer Grand Slam
2008 Wimbledon Nadal Grand Slam
2009 Wimbledon Federer Grand Slam
2010 Wimbledon Nadal Grand Slam
2011 Wimbledon Djokovic Grand Slam
2012 Wimbledon Federer Grand Slam
2013 Wimbledon Murray Grand Slam
2014 Wimbledon Djokovic Grand Slam
2015 Wimbledon Djokovic Grand Slam
2016 Wimbledon Murray Grand Slam
2017 Wimbledon Federer Grand Slam
2018 Wimbledon Djokovic Grand Slam
1881 US Open Sears Grand Slam
1882 US Open Sears Grand Slam
1883 US Open Sears Grand Slam
1884 US Open Sears Grand Slam
1885 US Open Sears Grand Slam
1886 US Open Sears Grand Slam
1887 US Open Sears Grand Slam
1888 US Open Slocum Grand Slam
1889 US Open Slocum Grand Slam
1890 US Open Campbell Grand Slam
1891 US Open Campbell Grand Slam
1892 US Open Campbell Grand Slam
1893 US Open Wrenn Grand Slam
1894 US Open Wrenn Grand Slam
1895 US Open Hovey Grand Slam
1896 US Open Wrenn Grand Slam
1897 US Open Wrenn Grand Slam
1898 US Open Whitman Grand Slam
1899 US Open Whitman Grand Slam
1900 US Open Whitman Grand Slam
1901 US Open Larned Grand Slam
1902 US Open Larned Grand Slam
1903 US Open Doherty Grand Slam
1904 US Open Ward Grand Slam
1905 US Open Wright Grand Slam
1906 US Open Clothier Grand Slam
1907 US Open Larned Grand Slam
1908 US Open Larned Grand Slam
1909 US Open Larned Grand Slam
1910 US Open Larned Grand Slam
1911 US Open Larned Grand Slam
1912 US Open McLoughlin Grand Slam
1913 US Open McLoughlin Grand Slam
1914 US Open Williams Grand Slam
1915 US Open Johnston Grand Slam
1920 US Open Tilden Grand Slam
1921 US Open Tilden Grand Slam
1922 US Open Tilden Grand Slam
1923 US Open Tilden Grand Slam
1924 US Open Tilden Grand Slam
1925 US Open Tilden Grand Slam
1926 US Open Lacoste Grand Slam
1927 US Open Lacoste Grand Slam
1928 US Open Cochet Grand Slam
1929 US Open Tilden Grand Slam
1930 US Open Doeg Grand Slam
1931 US Open Vines Grand Slam
1932 US Open Vines Grand Slam
1933 US Open Perry Grand Slam
1934 US Open Perry Grand Slam
1935 US Open Allison Grand Slam
1936 US Open Perry Grand Slam
1937 US Open Budge Grand Slam
1938 US Open Budge Grand Slam
1939 US Open Riggs Grand Slam
1940 US Open McNeill Grand Slam
1946 US Open Kramer Grand Slam
1947 US Open Kramer Grand Slam
1948 US Open Gonzales Grand Slam
1949 US Open Gonzales Grand Slam
1950 US Open Larsen Grand Slam
1951 US Open Sedgman Grand Slam
1952 US Open Sedgman Grand Slam
1953 US Open Trabert Grand Slam
1954 US Open Seixas Grand Slam
1955 US Open Trabert Grand Slam
1956 US Open Rosewall Grand Slam
1957 US Open Anderson Grand Slam
1958 US Open Cooper Grand Slam
1959 US Open Fraser Grand Slam
1960 US Open Fraser Grand Slam
1961 US Open Emerson Grand Slam
1962 US Open Laver Grand Slam
1963 US Open Osuna Grand Slam
1964 US Open Emerson Grand Slam
1965 US Open Santana Grand Slam
1966 US Open Stolle Grand Slam
1967 US Open Newcombe Grand Slam
1968 US Open Ashe Grand Slam
1969 US Open Laver Grand Slam
1970 US Open Rosewall Grand Slam
1971 US Open Smith Grand Slam
1972 US Open Nastase Grand Slam
1973 US Open Newcombe Grand Slam
1974 US Open Connors Grand Slam
1975 US Open Orantes Grand Slam
1976 US Open Connors Grand Slam
1978 US Open Connors Grand Slam
1979 US Open McEnroe Grand Slam
1980 US Open McEnroe Grand Slam
1981 US Open McEnroe Grand Slam
1982 US Open Connors Grand Slam
1983 US Open Connors Grand Slam
1984 US Open McEnroe Grand Slam
1985 US Open Lendl Grand Slam
1986 US Open Lendl Grand Slam
1987 US Open Lendl Grand Slam
1988 US Open Wilander Grand Slam
1989 US Open Becker Grand Slam
1990 US Open Sampras Grand Slam
1991 US Open Edberg Grand Slam
1992 US Open Edberg Grand Slam
1993 US Open Sampras Grand Slam
1994 US Open Agassi Grand Slam
1995 US Open Sampras Grand Slam
1996 US Open Sampras Grand Slam
1997 US Open Rafter Grand Slam
1998 US Open Rafter Grand Slam
1999 US Open Agassi Grand Slam
2000 US Open Safin Grand Slam
2001 US Open Hewitt Grand Slam
2002 US Open Sampras Grand Slam
2003 US Open Roddick Grand Slam
2004 US Open Federer Grand Slam
2005 US Open Federer Grand Slam
2006 US Open Federer Grand Slam
2007 US Open Federer Grand Slam
2008 US Open Federer Grand Slam
2009 US Open Martín Grand Slam
2010 US Open Nadal Grand Slam
2011 US Open Djokovic Grand Slam
2012 US Open Murray Grand Slam
2013 US Open Nadal Grand Slam
2014 US Open Cilic Grand Slam
2015 US Open Djokovic Grand Slam
2016 US Open Wawrinka Grand Slam
2017 US Open Nadal Grand Slam
2018 US Open Djokovic Grand Slam
2018 Indian Wells del Masters
2017 Indian Wells Federer Masters
2016 Indian Wells Djokovic Masters
2015 Indian Wells Djokovic Masters
2014 Indian Wells Djokovic Masters
2013 Indian Wells Nadal Masters
2012 Indian Wells Federer Masters
2011 Indian Wells Djokovic Masters
2018 Miami Isner Masters
2017 Miami Federer Masters
2016 Miami Djokovic Masters
2015 Miami Djokovic Masters
2014 Miami Djokovic Masters
2013 Miami Murray Masters
2012 Miami Djokovic Masters
2011 Miami Djokovic Masters
2018 Monte Carlo Nadal Masters
2017 Monte Carlo Nadal Masters
2016 Monte Carlo Nadal Masters
2015 Monte Carlo Djokovic Masters
2014 Monte Carlo Wawrinka Masters
2013 Monte Carlo Djokovic Masters
2012 Monte Carlo Nadal Masters
2011 Monte Carlo Nadal Masters
2018 Madrid Zverev Masters
2017 Madrid Nadal Masters
2016 Madrid Djokovic Masters
2015 Madrid Murray Masters
2014 Madrid Nadal Masters
2013 Madrid Nadal Masters
2012 Madrid Federer Masters
2011 Madrid Djokovic Masters
2018 Rome Nadal Masters
2017 Rome Zverev Masters
2016 Rome Murray Masters
2015 Rome Djokovic Masters
2014 Rome Djokovic Masters
2013 Rome Nadal Masters
2012 Rome Nadal Masters
2011 Rome Djokovic Masters
2018 Canada Nadal Masters
2017 Canada Zverev Masters
2016 Canada Djokovic Masters
2015 Canada Murray Masters
2014 Canada Tsonga Masters
2013 Canada Nadal Masters
2012 Canada Djokovic Masters
2011 Canada Djokovic Masters
2018 Cincinnati Djokovic Masters
2017 Cincinnati Dimitrov Masters
2016 Cincinnati Cilic Masters
2015 Cincinnati Federer Masters
2014 Cincinnati Federer Masters
2013 Cincinnati Nadal Masters
2012 Cincinnati Federer Masters
2011 Cincinnati Murray Masters
2017 Shanghai Federer Masters
2016 Shanghai Murray Masters
2015 Shanghai Djokovic Masters
2014 Shanghai Federer Masters
2013 Shanghai Djokovic Masters
2012 Shanghai Djokovic Masters
2011 Shanghai Murray Masters
2017 Paris Sock Masters
2016 Paris Murray Masters
2015 Paris Djokovic Masters
2014 Paris Djokovic Masters
2013 Paris Djokovic Masters
2012 Paris Ferrer Masters
2011 Paris Federer Masters
2010 Indian Wells Ljubicic Masters
2009 Indian Wells Nadal Masters
2010 Miami Roddick Masters
2009 Miami Murray Masters
2010 Monte Carlo Nadal Masters
2009 Monte Carlo Nadal Masters
2010 Madrid Nadal Masters
2009 Madrid Nadal Masters
2010 Rome Nadal Masters
2009 Rome Federer Masters
2010 Canada Murray Masters
2009 Canada Murray Masters
2010 Cincinnati Federer Masters
2009 Cincinnati Federer Masters
2010 Shanghai Murray Masters
2009 Shanghai Davydenko Masters
2010 Paris Söderling Masters
2009 Paris Djokovic Masters
2008 Indian Wells Djokovic Masters
2007 Indian Wells Nadal Masters
2006 Indian Wells Federer Masters
2005 Indian Wells Federer Masters
2004 Indian Wells Federer Masters
2008 Miami Davydenko Masters
2007 Miami Djokovic Masters
2006 Miami Federer Masters
2005 Miami Federer Masters
2004 Miami Roddick Masters
2008 Monte Carlo Nadal Masters
2007 Monte Carlo Nadal Masters
2006 Monte Carlo Nadal Masters
2005 Monte Carlo Nadal Masters
2004 Monte Carlo Coria Masters
2008 Madrid Djokovic Masters
2007 Madrid Nadal Masters
2006 Madrid Nadal Masters
2005 Madrid Nadal Masters
2004 Madrid Moyá Masters
2008 Rome Nadal Masters
2007 Rome Federer Masters
2006 Rome Robredo Masters
2005 Rome Federer Masters
2004 Rome Federer Masters
2008 Canada Nadal Masters
2007 Canada Djokovic Masters
2006 Canada Federer Masters
2005 Canada Nadal Masters
2004 Canada Federer Masters
2008 Cincinnati Murray Masters
2007 Cincinnati Federer Masters
2006 Cincinnati Roddick Masters
2005 Cincinnati Federer Masters
2004 Cincinnati Agassi Masters
2008 Shanghai Murray Masters
2007 Shanghai Nalbandian Masters
2006 Shanghai Federer Masters
2005 Shanghai Nadal Masters
2004 Shanghai Safin Masters
2008 Paris Tsonga Masters
2007 Paris Nalbandian Masters
2006 Paris Davydenko Masters
2005 Paris Berdych Masters
2004 Paris Safin Masters
2003 Indian Wells Hewitt Masters
2002 Indian Wells Hewitt Masters
2003 Miami Agassi Masters
2002 Miami Agassi Masters
2003 Monte Carlo Ferrero Masters
2002 Monte Carlo Ferrero Masters
2003 Madrid Mantilla Masters
2002 Madrid Agassi Masters
2003 Rome Coria Masters
2002 Rome Federer Masters
2003 Canada Roddick Masters
2002 Canada Cañas Masters
2003 Cincinnati Roddick Masters
2002 Cincinnati Moyá Masters
2003 Shanghai Ferrero Masters
2002 Shanghai Agassi Masters
2003 Paris Henman Masters
2002 Paris Safin Masters
2001 Indian Wells Agassi Masters
2000 Indian Wells Corretja Masters
2001 Miami Agassi Masters
2000 Miami Sampras Masters
2001 Monte Carlo Kuerten Masters
2000 Monte Carlo Pioline Masters
2001 Madrid Ferrero Masters
2000 Madrid Norman Masters
2001 Rome Portas Masters
2000 Rome Kuerten Masters
2001 Canada Pavel Masters
2000 Canada Safin Masters
2001 Cincinnati Kuerten Masters
2000 Cincinnati Enqvist Masters
2001 Shanghai Haas Masters
2000 Shanghai Ferreira Masters
2001 Paris Grosjean Masters
2000 Paris Safin Masters
1999 Indian Wells Philippoussis Masters
1998 Indian Wells Ríos Masters
1997 Indian Wells Chang Masters
1996 Indian Wells Chang Masters
1999 Miami Krajicek Masters
1998 Miami Ríos Masters
1997 Miami Muster Masters
1996 Miami Agassi Masters
1999 Monte Carlo Kuerten Masters
1998 Monte Carlo Moyá Masters
1997 Monte Carlo Ríos Masters
1996 Monte Carlo Muster Masters
1999 Madrid Ríos Masters
1998 Madrid Costa Masters
1997 Madrid Medvedev Masters
1996 Madrid Carretero Masters
1999 Rome Kuerten Masters
1998 Rome Ríos Masters
1997 Rome Corretja Masters
1996 Rome Muster Masters
1999 Canada Johansson Masters
1998 Canada Rafter Masters
1997 Canada Woodruff Masters
1996 Canada Ferreira Masters
1999 Cincinnati Sampras Masters
1998 Cincinnati Rafter Masters
1997 Cincinnati Sampras Masters
1996 Cincinnati Agassi Masters
1999 Shanghai Enqvist Masters
1998 Shanghai Krajicek Masters
1997 Shanghai Korda Masters
1996 Shanghai Becker Masters
1999 Paris Agassi Masters
1998 Paris Rusedski Masters
1997 Paris Sampras Masters
1996 Paris Enqvist Masters
1995 Indian Wells Sampras Masters
1994 Indian Wells Sampras Masters
1993 Indian Wells Courier Masters
1992 Indian Wells Chang Masters
1991 Indian Wells Courier Masters
1990 Indian Wells Edberg Masters
1995 Miami Agassi Masters
1994 Miami Sampras Masters
1993 Miami Sampras Masters
1992 Miami Chang Masters
1991 Miami Courier Masters
1990 Miami Agassi Masters
1995 Monte Carlo Muster Masters
1994 Monte Carlo Medvedev Masters
1993 Monte Carlo Bruguera Masters
1992 Monte Carlo Muster Masters
1991 Monte Carlo Bruguera Masters
1990 Monte Carlo Chesnokov Masters
1995 Madrid Medvedev Masters
1994 Madrid Medvedev Masters
1993 Madrid Stich Masters
1992 Madrid Edberg Masters
1991 Madrid Novácek Masters
1990 Madrid Aguilera Masters
1995 Rome Muster Masters
1994 Rome Sampras Masters
1993 Rome Courier Masters
1992 Rome Courier Masters
1991 Rome Sánchez Masters
1990 Rome Muster Masters
1995 Canada Agassi Masters
1994 Canada Agassi Masters
1993 Canada Pernfors Masters
1992 Canada Agassi Masters
1991 Canada Chesnokov Masters
1990 Canada Chang Masters
1995 Cincinnati Agassi Masters
1994 Cincinnati Chang Masters
1993 Cincinnati Chang Masters
1992 Cincinnati Sampras Masters
1991 Cincinnati Forget Masters
1990 Cincinnati Edberg Masters
1995 Shanghai Muster Masters
1994 Shanghai Becker Masters
1993 Shanghai Stich Masters
1992 Shanghai Ivaniševic Masters
1991 Shanghai Becker Masters
1990 Shanghai Becker Masters
1995 Paris Sampras Masters
1994 Paris Agassi Masters
1993 Paris Ivaniševic Masters
1992 Paris Becker Masters
1991 Paris Forget Masters
1990 Paris Edberg Masters

Players with most overall wins

tidyTableAll %>% group_by(Player) %>% summarise(Total_Wins=n())  %>% arrange(desc(Total_Wins)) %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Player Total_Wins
Nadal 50
Federer 47
Djokovic 45
Agassi 25
Sampras 25
Murray 17
Emerson 12
Becker 11
Laver 11
Borg 10
Doherty 10
Edberg 10
Tilden 10
Courier 9
Muster 9
Chang 8
Cochet 8
Connors 8
Decugis 8
Kuerten 8
Lendl 8
Perry 8
Renshaw 8
Rosewall 8
Lacoste 7
Larned 7
McEnroe 7
Newcombe 7
Safin 7
Sears 7
Wilander 7
Budge 6
Crawford 6
Roddick 6
Wilding 6
Borotra 5
Ríos 5
Sedgman 5
Trabert 5
Vacherot 5
Anderson 4
Aymé 4
Bruguera 4
Cooper 4
Ferrero 4
Gore 4
Hewitt 4
Hoad 4
Medvedev 4
Moyá 4
Rafter 4
Santana 4
Wawrinka 4
Wood 4
Wrenn 4
Ashe 3
Baddeley 3
Brookes 3
Campbell 3
Davydenko 3
Drobný 3
Enqvist 3
Fraser 3
Germot 3
Kodeš 3
Krajicek 3
Kramer 3
Parker 3
Quist 3
Stich 3
Vines 3
Whitman 3
Zverev 3
Bromwich 2
Chesnokov 2
Coria 2
Corretja 2
Costa 2
Ferreira 2
Forget 2
Gobert 2
Gonzales 2
Hartley 2
Heath 2
Ivaniševic 2
Johansson 2
Johnston 2
Kafelnikov 2
Korda 2
Kriek 2
McLoughlin 2
McNeill 2
Nalbandian 2
Nastase 2
Olmedo 2
Patterson 2
Patty 2
Pietrangeli 2
Pim 2
Riggs 2
Rose 2
Savitt 2
Seixas 2
Slocum 2
Smith 2
Stolle 2
Tsonga 2
Vilas 2
Aguilera 1
Alexander 1
Allison 1
Asbóth 1
Berdych 1
Bernard 1
Blanchy 1
Bowrey 1
Briggs 1
Cañas 1
Carlos 1
Carretero 1
Cash 1
Cecil 1
Cilic 1
Cilic 1
Clothier 1
Davidson 1
del 1
Dimitrov 1
Doeg 1
Edmondson 1
Falkenburg 1
Ferrer 1
Gaudio 1
Gemmell 1
Gimeno 1
Gómez 1
Gregory 1
Grosjean 1
Haas 1
Hadow 1
Hamilton 1
Hawkes 1
Henkel 1
Henman 1
Hovey 1
Isner 1
Ivaniševic 1
Larsen 1
Lawford 1
Ljubicic 1
Lowe 1
Mahony 1
Mantilla 1
Martín 1
McGrath 1
McGregor 1
McKinley 1
Moon 1
Noah 1
Norman 1
Novácek 1
Orantes 1
Osuna 1
Pails 1
Panatta 1
Pavel 1
Pernfors 1
Petra 1
Philippoussis 1
Pioline 1
Portas 1
Riboulet 1
Rice 1
Robredo 1
Roche 1
Rusedski 1
Samazeuilh 1
Sánchez 1
Schopfer 1
Schroeder 1
Sock 1
Söderling 1
Teacher 1
Ward 1
Williams 1
Woodruff 1
Wright 1
tidyOrder<-tidyTableAll %>% group_by(Player) %>% summarise(Total_Wins=n()) %>% top_n(50)
## Selecting by Total_Wins
tidyOrder$Player<-factor(tidyOrder$Player,levels = tidyOrder$Player[order(-tidyOrder$Total_Wins)])
ggplot(data=tidyOrder,aes(x=Player, y=Total_Wins))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Top 50 Overall Winners") 

Data set 2

Untidy data - airline safety by Ravi Itwaru

https://raw.githubusercontent.com/fivethirtyeight/data/master/airline-safety/airline-safety.csv

Below is a dataset I found on airline safety. We can perform some analyst on this data to find out which airlines had the worst record on fatalities and incidents.

#load csv data from github into a table
library(RCurl)
## Loading required package: bitops
## 
## Attaching package: 'RCurl'
## The following object is masked from 'package:tidyr':
## 
##     complete
csvTable<-tbl_df(read.csv(text = getURL("https://raw.githubusercontent.com/fivethirtyeight/data/master/airline-safety/airline-safety.csv  ")))
csvTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline avail_seat_km_per_week incidents_85_99 fatal_accidents_85_99 fatalities_85_99 incidents_00_14 fatal_accidents_00_14 fatalities_00_14
Aer Lingus 320906734 2 0 0 0 0 0
Aeroflot* 1197672318 76 14 128 6 1 88
Aerolineas Argentinas 385803648 6 0 0 1 0 0
Aeromexico* 596871813 3 1 64 5 0 0
Air Canada 1865253802 2 0 0 2 0 0
Air France 3004002661 14 4 79 6 2 337
Air India* 869253552 2 1 329 4 1 158
Air New Zealand* 710174817 3 0 0 5 1 7
Alaska Airlines* 965346773 5 0 0 5 1 88
Alitalia 698012498 7 2 50 4 0 0
All Nippon Airways 1841234177 3 1 1 7 0 0
American* 5228357340 21 5 101 17 3 416
Austrian Airlines 358239823 1 0 0 1 0 0
Avianca 396922563 5 3 323 0 0 0
British Airways* 3179760952 4 0 0 6 0 0
Cathay Pacific* 2582459303 0 0 0 2 0 0
China Airlines 813216487 12 6 535 2 1 225
Condor 417982610 2 1 16 0 0 0
COPA 550491507 3 1 47 0 0 0
Delta / Northwest* 6525658894 24 12 407 24 2 51
Egyptair 557699891 8 3 282 4 1 14
El Al 335448023 1 1 4 1 0 0
Ethiopian Airlines 488560643 25 5 167 5 2 92
Finnair 506464950 1 0 0 0 0 0
Garuda Indonesia 613356665 10 3 260 4 2 22
Gulf Air 301379762 1 0 0 3 1 143
Hawaiian Airlines 493877795 0 0 0 1 0 0
Iberia 1173203126 4 1 148 5 0 0
Japan Airlines 1574217531 3 1 520 0 0 0
Kenya Airways 277414794 2 0 0 2 2 283
KLM* 1874561773 7 1 3 1 0 0
Korean Air 1734522605 12 5 425 1 0 0
LAN Airlines 1001965891 3 2 21 0 0 0
Lufthansa* 3426529504 6 1 2 3 0 0
Malaysia Airlines 1039171244 3 1 34 3 2 537
Pakistan International 348563137 8 3 234 10 2 46
Philippine Airlines 413007158 7 4 74 2 1 1
Qantas* 1917428984 1 0 0 5 0 0
Royal Air Maroc 295705339 5 3 51 3 0 0
SAS* 682971852 5 0 0 6 1 110
Saudi Arabian 859673901 7 2 313 11 0 0
Singapore Airlines 2376857805 2 2 6 2 1 83
South African 651502442 2 1 159 1 0 0
Southwest Airlines 3276525770 1 0 0 8 0 0
Sri Lankan / AirLanka 325582976 2 1 14 4 0 0
SWISS* 792601299 2 1 229 3 0 0
TACA 259373346 3 1 3 1 1 3
TAM 1509195646 8 3 98 7 2 188
TAP - Air Portugal 619130754 0 0 0 0 0 0
Thai Airways 1702802250 8 4 308 2 1 1
Turkish Airlines 1946098294 8 3 64 8 2 84
United / Continental* 7139291291 19 8 319 14 2 109
US Airways / America West* 2455687887 16 7 224 11 2 23
Vietnam Airlines 625084918 7 3 171 1 0 0
Virgin Atlantic 1005248585 1 0 0 0 0 0
Xiamen Airlines 430462962 9 1 82 2 0 0
#we save the table to a csv file
write.csv(csvTable,file="airline-safety.csv",row.names = FALSE)
csvTable<-tbl_df(read.csv(file="airline-safety.csv", header=TRUE, sep=",",colClasses = "character"))

#with the data now in a data frame in R, we build our tidy table
#first we go from wide to tidy by creating a column for variables Type and # of Incidents
tidyTable<-csvTable %>% gather("Type","Incidents",3:8)
#second we split the incident column becouse it also contains info of the period of the observation
tidyTable<-tidyTable %>% sapply( function(x) str_replace(x,"s_","s-"),USE.NAMES = FALSE)
#we create a new period column so that each column is a separate variable
tidyTable<-tbl_df(tidyTable) %>% separate(Type,sep = "-",c('Type','Period'))
tidyTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline avail_seat_km_per_week Type Period Incidents
Aer Lingus 320906734 incidents 85_99 2
Aeroflot* 1197672318 incidents 85_99 76
Aerolineas Argentinas 385803648 incidents 85_99 6
Aeromexico* 596871813 incidents 85_99 3
Air Canada 1865253802 incidents 85_99 2
Air France 3004002661 incidents 85_99 14
Air India* 869253552 incidents 85_99 2
Air New Zealand* 710174817 incidents 85_99 3
Alaska Airlines* 965346773 incidents 85_99 5
Alitalia 698012498 incidents 85_99 7
All Nippon Airways 1841234177 incidents 85_99 3
American* 5228357340 incidents 85_99 21
Austrian Airlines 358239823 incidents 85_99 1
Avianca 396922563 incidents 85_99 5
British Airways* 3179760952 incidents 85_99 4
Cathay Pacific* 2582459303 incidents 85_99 0
China Airlines 813216487 incidents 85_99 12
Condor 417982610 incidents 85_99 2
COPA 550491507 incidents 85_99 3
Delta / Northwest* 6525658894 incidents 85_99 24
Egyptair 557699891 incidents 85_99 8
El Al 335448023 incidents 85_99 1
Ethiopian Airlines 488560643 incidents 85_99 25
Finnair 506464950 incidents 85_99 1
Garuda Indonesia 613356665 incidents 85_99 10
Gulf Air 301379762 incidents 85_99 1
Hawaiian Airlines 493877795 incidents 85_99 0
Iberia 1173203126 incidents 85_99 4
Japan Airlines 1574217531 incidents 85_99 3
Kenya Airways 277414794 incidents 85_99 2
KLM* 1874561773 incidents 85_99 7
Korean Air 1734522605 incidents 85_99 12
LAN Airlines 1001965891 incidents 85_99 3
Lufthansa* 3426529504 incidents 85_99 6
Malaysia Airlines 1039171244 incidents 85_99 3
Pakistan International 348563137 incidents 85_99 8
Philippine Airlines 413007158 incidents 85_99 7
Qantas* 1917428984 incidents 85_99 1
Royal Air Maroc 295705339 incidents 85_99 5
SAS* 682971852 incidents 85_99 5
Saudi Arabian 859673901 incidents 85_99 7
Singapore Airlines 2376857805 incidents 85_99 2
South African 651502442 incidents 85_99 2
Southwest Airlines 3276525770 incidents 85_99 1
Sri Lankan / AirLanka 325582976 incidents 85_99 2
SWISS* 792601299 incidents 85_99 2
TACA 259373346 incidents 85_99 3
TAM 1509195646 incidents 85_99 8
TAP - Air Portugal 619130754 incidents 85_99 0
Thai Airways 1702802250 incidents 85_99 8
Turkish Airlines 1946098294 incidents 85_99 8
United / Continental* 7139291291 incidents 85_99 19
US Airways / America West* 2455687887 incidents 85_99 16
Vietnam Airlines 625084918 incidents 85_99 7
Virgin Atlantic 1005248585 incidents 85_99 1
Xiamen Airlines 430462962 incidents 85_99 9
Aer Lingus 320906734 fatal_accidents 85_99 0
Aeroflot* 1197672318 fatal_accidents 85_99 14
Aerolineas Argentinas 385803648 fatal_accidents 85_99 0
Aeromexico* 596871813 fatal_accidents 85_99 1
Air Canada 1865253802 fatal_accidents 85_99 0
Air France 3004002661 fatal_accidents 85_99 4
Air India* 869253552 fatal_accidents 85_99 1
Air New Zealand* 710174817 fatal_accidents 85_99 0
Alaska Airlines* 965346773 fatal_accidents 85_99 0
Alitalia 698012498 fatal_accidents 85_99 2
All Nippon Airways 1841234177 fatal_accidents 85_99 1
American* 5228357340 fatal_accidents 85_99 5
Austrian Airlines 358239823 fatal_accidents 85_99 0
Avianca 396922563 fatal_accidents 85_99 3
British Airways* 3179760952 fatal_accidents 85_99 0
Cathay Pacific* 2582459303 fatal_accidents 85_99 0
China Airlines 813216487 fatal_accidents 85_99 6
Condor 417982610 fatal_accidents 85_99 1
COPA 550491507 fatal_accidents 85_99 1
Delta / Northwest* 6525658894 fatal_accidents 85_99 12
Egyptair 557699891 fatal_accidents 85_99 3
El Al 335448023 fatal_accidents 85_99 1
Ethiopian Airlines 488560643 fatal_accidents 85_99 5
Finnair 506464950 fatal_accidents 85_99 0
Garuda Indonesia 613356665 fatal_accidents 85_99 3
Gulf Air 301379762 fatal_accidents 85_99 0
Hawaiian Airlines 493877795 fatal_accidents 85_99 0
Iberia 1173203126 fatal_accidents 85_99 1
Japan Airlines 1574217531 fatal_accidents 85_99 1
Kenya Airways 277414794 fatal_accidents 85_99 0
KLM* 1874561773 fatal_accidents 85_99 1
Korean Air 1734522605 fatal_accidents 85_99 5
LAN Airlines 1001965891 fatal_accidents 85_99 2
Lufthansa* 3426529504 fatal_accidents 85_99 1
Malaysia Airlines 1039171244 fatal_accidents 85_99 1
Pakistan International 348563137 fatal_accidents 85_99 3
Philippine Airlines 413007158 fatal_accidents 85_99 4
Qantas* 1917428984 fatal_accidents 85_99 0
Royal Air Maroc 295705339 fatal_accidents 85_99 3
SAS* 682971852 fatal_accidents 85_99 0
Saudi Arabian 859673901 fatal_accidents 85_99 2
Singapore Airlines 2376857805 fatal_accidents 85_99 2
South African 651502442 fatal_accidents 85_99 1
Southwest Airlines 3276525770 fatal_accidents 85_99 0
Sri Lankan / AirLanka 325582976 fatal_accidents 85_99 1
SWISS* 792601299 fatal_accidents 85_99 1
TACA 259373346 fatal_accidents 85_99 1
TAM 1509195646 fatal_accidents 85_99 3
TAP - Air Portugal 619130754 fatal_accidents 85_99 0
Thai Airways 1702802250 fatal_accidents 85_99 4
Turkish Airlines 1946098294 fatal_accidents 85_99 3
United / Continental* 7139291291 fatal_accidents 85_99 8
US Airways / America West* 2455687887 fatal_accidents 85_99 7
Vietnam Airlines 625084918 fatal_accidents 85_99 3
Virgin Atlantic 1005248585 fatal_accidents 85_99 0
Xiamen Airlines 430462962 fatal_accidents 85_99 1
Aer Lingus 320906734 fatalities 85_99 0
Aeroflot* 1197672318 fatalities 85_99 128
Aerolineas Argentinas 385803648 fatalities 85_99 0
Aeromexico* 596871813 fatalities 85_99 64
Air Canada 1865253802 fatalities 85_99 0
Air France 3004002661 fatalities 85_99 79
Air India* 869253552 fatalities 85_99 329
Air New Zealand* 710174817 fatalities 85_99 0
Alaska Airlines* 965346773 fatalities 85_99 0
Alitalia 698012498 fatalities 85_99 50
All Nippon Airways 1841234177 fatalities 85_99 1
American* 5228357340 fatalities 85_99 101
Austrian Airlines 358239823 fatalities 85_99 0
Avianca 396922563 fatalities 85_99 323
British Airways* 3179760952 fatalities 85_99 0
Cathay Pacific* 2582459303 fatalities 85_99 0
China Airlines 813216487 fatalities 85_99 535
Condor 417982610 fatalities 85_99 16
COPA 550491507 fatalities 85_99 47
Delta / Northwest* 6525658894 fatalities 85_99 407
Egyptair 557699891 fatalities 85_99 282
El Al 335448023 fatalities 85_99 4
Ethiopian Airlines 488560643 fatalities 85_99 167
Finnair 506464950 fatalities 85_99 0
Garuda Indonesia 613356665 fatalities 85_99 260
Gulf Air 301379762 fatalities 85_99 0
Hawaiian Airlines 493877795 fatalities 85_99 0
Iberia 1173203126 fatalities 85_99 148
Japan Airlines 1574217531 fatalities 85_99 520
Kenya Airways 277414794 fatalities 85_99 0
KLM* 1874561773 fatalities 85_99 3
Korean Air 1734522605 fatalities 85_99 425
LAN Airlines 1001965891 fatalities 85_99 21
Lufthansa* 3426529504 fatalities 85_99 2
Malaysia Airlines 1039171244 fatalities 85_99 34
Pakistan International 348563137 fatalities 85_99 234
Philippine Airlines 413007158 fatalities 85_99 74
Qantas* 1917428984 fatalities 85_99 0
Royal Air Maroc 295705339 fatalities 85_99 51
SAS* 682971852 fatalities 85_99 0
Saudi Arabian 859673901 fatalities 85_99 313
Singapore Airlines 2376857805 fatalities 85_99 6
South African 651502442 fatalities 85_99 159
Southwest Airlines 3276525770 fatalities 85_99 0
Sri Lankan / AirLanka 325582976 fatalities 85_99 14
SWISS* 792601299 fatalities 85_99 229
TACA 259373346 fatalities 85_99 3
TAM 1509195646 fatalities 85_99 98
TAP - Air Portugal 619130754 fatalities 85_99 0
Thai Airways 1702802250 fatalities 85_99 308
Turkish Airlines 1946098294 fatalities 85_99 64
United / Continental* 7139291291 fatalities 85_99 319
US Airways / America West* 2455687887 fatalities 85_99 224
Vietnam Airlines 625084918 fatalities 85_99 171
Virgin Atlantic 1005248585 fatalities 85_99 0
Xiamen Airlines 430462962 fatalities 85_99 82
Aer Lingus 320906734 incidents 00_14 0
Aeroflot* 1197672318 incidents 00_14 6
Aerolineas Argentinas 385803648 incidents 00_14 1
Aeromexico* 596871813 incidents 00_14 5
Air Canada 1865253802 incidents 00_14 2
Air France 3004002661 incidents 00_14 6
Air India* 869253552 incidents 00_14 4
Air New Zealand* 710174817 incidents 00_14 5
Alaska Airlines* 965346773 incidents 00_14 5
Alitalia 698012498 incidents 00_14 4
All Nippon Airways 1841234177 incidents 00_14 7
American* 5228357340 incidents 00_14 17
Austrian Airlines 358239823 incidents 00_14 1
Avianca 396922563 incidents 00_14 0
British Airways* 3179760952 incidents 00_14 6
Cathay Pacific* 2582459303 incidents 00_14 2
China Airlines 813216487 incidents 00_14 2
Condor 417982610 incidents 00_14 0
COPA 550491507 incidents 00_14 0
Delta / Northwest* 6525658894 incidents 00_14 24
Egyptair 557699891 incidents 00_14 4
El Al 335448023 incidents 00_14 1
Ethiopian Airlines 488560643 incidents 00_14 5
Finnair 506464950 incidents 00_14 0
Garuda Indonesia 613356665 incidents 00_14 4
Gulf Air 301379762 incidents 00_14 3
Hawaiian Airlines 493877795 incidents 00_14 1
Iberia 1173203126 incidents 00_14 5
Japan Airlines 1574217531 incidents 00_14 0
Kenya Airways 277414794 incidents 00_14 2
KLM* 1874561773 incidents 00_14 1
Korean Air 1734522605 incidents 00_14 1
LAN Airlines 1001965891 incidents 00_14 0
Lufthansa* 3426529504 incidents 00_14 3
Malaysia Airlines 1039171244 incidents 00_14 3
Pakistan International 348563137 incidents 00_14 10
Philippine Airlines 413007158 incidents 00_14 2
Qantas* 1917428984 incidents 00_14 5
Royal Air Maroc 295705339 incidents 00_14 3
SAS* 682971852 incidents 00_14 6
Saudi Arabian 859673901 incidents 00_14 11
Singapore Airlines 2376857805 incidents 00_14 2
South African 651502442 incidents 00_14 1
Southwest Airlines 3276525770 incidents 00_14 8
Sri Lankan / AirLanka 325582976 incidents 00_14 4
SWISS* 792601299 incidents 00_14 3
TACA 259373346 incidents 00_14 1
TAM 1509195646 incidents 00_14 7
TAP - Air Portugal 619130754 incidents 00_14 0
Thai Airways 1702802250 incidents 00_14 2
Turkish Airlines 1946098294 incidents 00_14 8
United / Continental* 7139291291 incidents 00_14 14
US Airways / America West* 2455687887 incidents 00_14 11
Vietnam Airlines 625084918 incidents 00_14 1
Virgin Atlantic 1005248585 incidents 00_14 0
Xiamen Airlines 430462962 incidents 00_14 2
Aer Lingus 320906734 fatal_accidents 00_14 0
Aeroflot* 1197672318 fatal_accidents 00_14 1
Aerolineas Argentinas 385803648 fatal_accidents 00_14 0
Aeromexico* 596871813 fatal_accidents 00_14 0
Air Canada 1865253802 fatal_accidents 00_14 0
Air France 3004002661 fatal_accidents 00_14 2
Air India* 869253552 fatal_accidents 00_14 1
Air New Zealand* 710174817 fatal_accidents 00_14 1
Alaska Airlines* 965346773 fatal_accidents 00_14 1
Alitalia 698012498 fatal_accidents 00_14 0
All Nippon Airways 1841234177 fatal_accidents 00_14 0
American* 5228357340 fatal_accidents 00_14 3
Austrian Airlines 358239823 fatal_accidents 00_14 0
Avianca 396922563 fatal_accidents 00_14 0
British Airways* 3179760952 fatal_accidents 00_14 0
Cathay Pacific* 2582459303 fatal_accidents 00_14 0
China Airlines 813216487 fatal_accidents 00_14 1
Condor 417982610 fatal_accidents 00_14 0
COPA 550491507 fatal_accidents 00_14 0
Delta / Northwest* 6525658894 fatal_accidents 00_14 2
Egyptair 557699891 fatal_accidents 00_14 1
El Al 335448023 fatal_accidents 00_14 0
Ethiopian Airlines 488560643 fatal_accidents 00_14 2
Finnair 506464950 fatal_accidents 00_14 0
Garuda Indonesia 613356665 fatal_accidents 00_14 2
Gulf Air 301379762 fatal_accidents 00_14 1
Hawaiian Airlines 493877795 fatal_accidents 00_14 0
Iberia 1173203126 fatal_accidents 00_14 0
Japan Airlines 1574217531 fatal_accidents 00_14 0
Kenya Airways 277414794 fatal_accidents 00_14 2
KLM* 1874561773 fatal_accidents 00_14 0
Korean Air 1734522605 fatal_accidents 00_14 0
LAN Airlines 1001965891 fatal_accidents 00_14 0
Lufthansa* 3426529504 fatal_accidents 00_14 0
Malaysia Airlines 1039171244 fatal_accidents 00_14 2
Pakistan International 348563137 fatal_accidents 00_14 2
Philippine Airlines 413007158 fatal_accidents 00_14 1
Qantas* 1917428984 fatal_accidents 00_14 0
Royal Air Maroc 295705339 fatal_accidents 00_14 0
SAS* 682971852 fatal_accidents 00_14 1
Saudi Arabian 859673901 fatal_accidents 00_14 0
Singapore Airlines 2376857805 fatal_accidents 00_14 1
South African 651502442 fatal_accidents 00_14 0
Southwest Airlines 3276525770 fatal_accidents 00_14 0
Sri Lankan / AirLanka 325582976 fatal_accidents 00_14 0
SWISS* 792601299 fatal_accidents 00_14 0
TACA 259373346 fatal_accidents 00_14 1
TAM 1509195646 fatal_accidents 00_14 2
TAP - Air Portugal 619130754 fatal_accidents 00_14 0
Thai Airways 1702802250 fatal_accidents 00_14 1
Turkish Airlines 1946098294 fatal_accidents 00_14 2
United / Continental* 7139291291 fatal_accidents 00_14 2
US Airways / America West* 2455687887 fatal_accidents 00_14 2
Vietnam Airlines 625084918 fatal_accidents 00_14 0
Virgin Atlantic 1005248585 fatal_accidents 00_14 0
Xiamen Airlines 430462962 fatal_accidents 00_14 0
Aer Lingus 320906734 fatalities 00_14 0
Aeroflot* 1197672318 fatalities 00_14 88
Aerolineas Argentinas 385803648 fatalities 00_14 0
Aeromexico* 596871813 fatalities 00_14 0
Air Canada 1865253802 fatalities 00_14 0
Air France 3004002661 fatalities 00_14 337
Air India* 869253552 fatalities 00_14 158
Air New Zealand* 710174817 fatalities 00_14 7
Alaska Airlines* 965346773 fatalities 00_14 88
Alitalia 698012498 fatalities 00_14 0
All Nippon Airways 1841234177 fatalities 00_14 0
American* 5228357340 fatalities 00_14 416
Austrian Airlines 358239823 fatalities 00_14 0
Avianca 396922563 fatalities 00_14 0
British Airways* 3179760952 fatalities 00_14 0
Cathay Pacific* 2582459303 fatalities 00_14 0
China Airlines 813216487 fatalities 00_14 225
Condor 417982610 fatalities 00_14 0
COPA 550491507 fatalities 00_14 0
Delta / Northwest* 6525658894 fatalities 00_14 51
Egyptair 557699891 fatalities 00_14 14
El Al 335448023 fatalities 00_14 0
Ethiopian Airlines 488560643 fatalities 00_14 92
Finnair 506464950 fatalities 00_14 0
Garuda Indonesia 613356665 fatalities 00_14 22
Gulf Air 301379762 fatalities 00_14 143
Hawaiian Airlines 493877795 fatalities 00_14 0
Iberia 1173203126 fatalities 00_14 0
Japan Airlines 1574217531 fatalities 00_14 0
Kenya Airways 277414794 fatalities 00_14 283
KLM* 1874561773 fatalities 00_14 0
Korean Air 1734522605 fatalities 00_14 0
LAN Airlines 1001965891 fatalities 00_14 0
Lufthansa* 3426529504 fatalities 00_14 0
Malaysia Airlines 1039171244 fatalities 00_14 537
Pakistan International 348563137 fatalities 00_14 46
Philippine Airlines 413007158 fatalities 00_14 1
Qantas* 1917428984 fatalities 00_14 0
Royal Air Maroc 295705339 fatalities 00_14 0
SAS* 682971852 fatalities 00_14 110
Saudi Arabian 859673901 fatalities 00_14 0
Singapore Airlines 2376857805 fatalities 00_14 83
South African 651502442 fatalities 00_14 0
Southwest Airlines 3276525770 fatalities 00_14 0
Sri Lankan / AirLanka 325582976 fatalities 00_14 0
SWISS* 792601299 fatalities 00_14 0
TACA 259373346 fatalities 00_14 3
TAM 1509195646 fatalities 00_14 188
TAP - Air Portugal 619130754 fatalities 00_14 0
Thai Airways 1702802250 fatalities 00_14 1
Turkish Airlines 1946098294 fatalities 00_14 84
United / Continental* 7139291291 fatalities 00_14 109
US Airways / America West* 2455687887 fatalities 00_14 23
Vietnam Airlines 625084918 fatalities 00_14 0
Virgin Atlantic 1005248585 fatalities 00_14 0
Xiamen Airlines 430462962 fatalities 00_14 0

Airlines with most incidents

tidyOrder<-tidyTable %>% group_by(airline) %>% summarise(Total_Incidents=sum(strtoi(Incidents)))  %>% arrange(desc(Total_Incidents))
tidyOrder %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline Total_Incidents
China Airlines 781
Malaysia Airlines 580
American* 563
Japan Airlines 524
Delta / Northwest* 520
Air India* 495
United / Continental* 471
Korean Air 443
Air France 442
Saudi Arabian 333
Avianca 331
Thai Airways 324
Aeroflot* 313
Egyptair 312
TAM 306
Pakistan International 303
Garuda Indonesia 301
Ethiopian Airlines 296
Kenya Airways 289
US Airways / America West* 283
SWISS* 235
Vietnam Airlines 182
Turkish Airlines 169
South African 163
Iberia 158
Gulf Air 148
SAS* 122
Alaska Airlines* 99
Singapore Airlines 96
Xiamen Airlines 94
Philippine Airlines 89
Aeromexico* 73
Alitalia 63
Royal Air Maroc 62
COPA 51
LAN Airlines 26
Sri Lankan / AirLanka 21
Condor 19
Air New Zealand* 16
All Nippon Airways 12
KLM* 12
Lufthansa* 12
TACA 12
British Airways* 10
Southwest Airlines 9
Aerolineas Argentinas 7
El Al 7
Qantas* 6
Air Canada 4
Aer Lingus 2
Austrian Airlines 2
Cathay Pacific* 2
Finnair 1
Hawaiian Airlines 1
Virgin Atlantic 1
TAP - Air Portugal 0
tidyOrder$airline<-factor(tidyOrder$airline,levels = tidyOrder$airline[order(-tidyOrder$Total_Incidents)])
ggplot(data=tidyOrder,aes(x=airline, y=Total_Incidents))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Airlines with most Incidents") 

Airlines with most fatal incidents

tidyOrder<-tidyTable %>% filter(Type=='fatal_accidents') %>% group_by(airline) %>% summarise(Total_Incidents=sum(strtoi(Incidents)))  %>% arrange(desc(Total_Incidents))
tidyOrder %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline Total_Incidents
Aeroflot* 15
Delta / Northwest* 14
United / Continental* 10
US Airways / America West* 9
American* 8
China Airlines 7
Ethiopian Airlines 7
Air France 6
Garuda Indonesia 5
Korean Air 5
Pakistan International 5
Philippine Airlines 5
TAM 5
Thai Airways 5
Turkish Airlines 5
Egyptair 4
Avianca 3
Malaysia Airlines 3
Royal Air Maroc 3
Singapore Airlines 3
Vietnam Airlines 3
Air India* 2
Alitalia 2
Kenya Airways 2
LAN Airlines 2
Saudi Arabian 2
TACA 2
Aeromexico* 1
Air New Zealand* 1
Alaska Airlines* 1
All Nippon Airways 1
Condor 1
COPA 1
El Al 1
Gulf Air 1
Iberia 1
Japan Airlines 1
KLM* 1
Lufthansa* 1
SAS* 1
South African 1
Sri Lankan / AirLanka 1
SWISS* 1
Xiamen Airlines 1
Aer Lingus 0
Aerolineas Argentinas 0
Air Canada 0
Austrian Airlines 0
British Airways* 0
Cathay Pacific* 0
Finnair 0
Hawaiian Airlines 0
Qantas* 0
Southwest Airlines 0
TAP - Air Portugal 0
Virgin Atlantic 0
tidyOrder$airline<-factor(tidyOrder$airline,levels = tidyOrder$airline[order(-tidyOrder$Total_Incidents)])
ggplot(data=tidyOrder,aes(x=airline, y=Total_Incidents))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Airlines with most Fatal Incidents") 

Airlines with most normalized incidents

tidyOrder<-tidyTable %>% group_by(airline) %>% summarise(Total_IncidentsPERavail_seat_km_per_week=sum(as.numeric(Incidents))/(sum(as.numeric(avail_seat_km_per_week))/n()))  %>% arrange(desc(Total_IncidentsPERavail_seat_km_per_week))
tidyOrder %>% kable(digits = 10) %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline Total_IncidentsPERavail_seat_km_per_week
Kenya Airways 1.0418e-06
China Airlines 9.6040e-07
Pakistan International 8.6930e-07
Avianca 8.3390e-07
Ethiopian Airlines 6.0590e-07
Air India* 5.6950e-07
Egyptair 5.5940e-07
Malaysia Airlines 5.5810e-07
Gulf Air 4.9110e-07
Garuda Indonesia 4.9070e-07
Saudi Arabian 3.8740e-07
Japan Airlines 3.3290e-07
SWISS* 2.9650e-07
Vietnam Airlines 2.9120e-07
Aeroflot* 2.6130e-07
Korean Air 2.5540e-07
South African 2.5020e-07
Xiamen Airlines 2.1840e-07
Philippine Airlines 2.1550e-07
Royal Air Maroc 2.0970e-07
TAM 2.0280e-07
Thai Airways 1.9030e-07
SAS* 1.7860e-07
Air France 1.4710e-07
Iberia 1.3470e-07
Aeromexico* 1.2230e-07
US Airways / America West* 1.1520e-07
American* 1.0770e-07
Alaska Airlines* 1.0260e-07
COPA 9.2600e-08
Alitalia 9.0300e-08
Turkish Airlines 8.6800e-08
Delta / Northwest* 7.9700e-08
United / Continental* 6.6000e-08
Sri Lankan / AirLanka 6.4500e-08
TACA 4.6300e-08
Condor 4.5500e-08
Singapore Airlines 4.0400e-08
LAN Airlines 2.5900e-08
Air New Zealand* 2.2500e-08
El Al 2.0900e-08
Aerolineas Argentinas 1.8100e-08
All Nippon Airways 6.5000e-09
KLM* 6.4000e-09
Aer Lingus 6.2000e-09
Austrian Airlines 5.6000e-09
Lufthansa* 3.5000e-09
British Airways* 3.1000e-09
Qantas* 3.1000e-09
Southwest Airlines 2.7000e-09
Air Canada 2.1000e-09
Hawaiian Airlines 2.0000e-09
Finnair 2.0000e-09
Virgin Atlantic 1.0000e-09
Cathay Pacific* 8.0000e-10
TAP - Air Portugal 0.0000e+00
tidyOrder$airline<-factor(tidyOrder$airline,levels = tidyOrder$airline[order(-tidyOrder$Total_IncidentsPERavail_seat_km_per_week)])
ggplot(data=tidyOrder,aes(x=airline, y=Total_IncidentsPERavail_seat_km_per_week))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Airlines with most Normalized Incidents") 

Airlines with most normalized fatal incidents

tidyOrder<-tidyTable %>% filter(Type=='fatal_accidents') %>% group_by(airline) %>% summarise(Total_IncidentsPERavail_seat_km_per_week=sum(as.numeric(Incidents))/(sum(as.numeric(avail_seat_km_per_week))/n()))  %>% arrange(desc(Total_IncidentsPERavail_seat_km_per_week))
tidyOrder %>% kable(digits = 10) %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
airline Total_IncidentsPERavail_seat_km_per_week
Pakistan International 1.43e-08
Ethiopian Airlines 1.43e-08
Aeroflot* 1.25e-08
Philippine Airlines 1.21e-08
Royal Air Maroc 1.01e-08
China Airlines 8.60e-09
Garuda Indonesia 8.20e-09
TACA 7.70e-09
Avianca 7.60e-09
Kenya Airways 7.20e-09
Egyptair 7.20e-09
Vietnam Airlines 4.80e-09
US Airways / America West* 3.70e-09
Gulf Air 3.30e-09
TAM 3.30e-09
Sri Lankan / AirLanka 3.10e-09
El Al 3.00e-09
Thai Airways 2.90e-09
Malaysia Airlines 2.90e-09
Korean Air 2.90e-09
Alitalia 2.90e-09
Turkish Airlines 2.60e-09
Condor 2.40e-09
Saudi Arabian 2.30e-09
Xiamen Airlines 2.30e-09
Air India* 2.30e-09
Delta / Northwest* 2.10e-09
Air France 2.00e-09
LAN Airlines 2.00e-09
COPA 1.80e-09
Aeromexico* 1.70e-09
South African 1.50e-09
American* 1.50e-09
SAS* 1.50e-09
Air New Zealand* 1.40e-09
United / Continental* 1.40e-09
Singapore Airlines 1.30e-09
SWISS* 1.30e-09
Alaska Airlines* 1.00e-09
Iberia 9.00e-10
Japan Airlines 6.00e-10
All Nippon Airways 5.00e-10
KLM* 5.00e-10
Lufthansa* 3.00e-10
Aer Lingus 0.00e+00
Aerolineas Argentinas 0.00e+00
Air Canada 0.00e+00
Austrian Airlines 0.00e+00
British Airways* 0.00e+00
Cathay Pacific* 0.00e+00
Finnair 0.00e+00
Hawaiian Airlines 0.00e+00
Qantas* 0.00e+00
Southwest Airlines 0.00e+00
TAP - Air Portugal 0.00e+00
Virgin Atlantic 0.00e+00
tidyOrder$airline<-factor(tidyOrder$airline,levels = tidyOrder$airline[order(-tidyOrder$Total_IncidentsPERavail_seat_km_per_week)])
ggplot(data=tidyOrder,aes(x=airline, y=Total_IncidentsPERavail_seat_km_per_week))+geom_bar(stat = "identity")+theme(axis.text = element_text(angle=90))+ggtitle("Airlines with most Normilized Fatal Incidents") 

Data set 3

Untidy Data by Corey Arnouts

https://en.wikipedia.org/wiki/College_football

On the college football wikipedia page there is a historical college football scoring datatable that indicates the different ways to score points in college football throughout the evolution of the game. This would be an interesting data table to extract and then see if you could find final scores of games from those time periods and compare the two tables and see what the correlation between the two is.

#first we scrappe the table from the wiki site
url<-'https://en.wikipedia.org/wiki/College_football'
webPage<- url %>% read_html()
vectorTable<-webPage %>% html_nodes('tr th') %>% html_text()
tableHeader<-vectorTable[1:8]
vectorTable<-webPage %>% html_nodes('tr td') %>% html_text() %>% str_replace("present",format(Sys.Date(), "%Y"))
tableData<-vectorTable[1:(8*8)]
tblTable<-tbl_df(as.data.frame(matrix(tableData,nrow=length(tableData)/length(tableHeader),ncol=length(tableHeader),byrow = TRUE)))
tblTable<-setNames(tblTable,tableHeader)
tblTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Era Touchdown Field goal Conversion (kick) Conversion (touchdown) Safety Conversion safety Defensive conversion
1883 2 5 4 – 1 – –
1883–1897 4 5 2 – 2 – –
1898–1903 5 5 1 – 2 – –
1904–1908 5 4 1 – 2 – –
1909–1911 5 3 1 – 2 – –
1912–1957 6 3 1 – 2 – –
1958–1987 6 3 1 2 2 1 –
1988–2018 6 3 1 2 2 1 2
#we save the table to a csv file
#write.csv(tblTable,file="college_football.csv",row.names = FALSE)
#we can read this csv file  --  note: knitt in windows did not handle emdash in table. emdash was replaced manually in csv file with endash. knitt had no issues on Mac
tblTable<-tbl_df(read.csv(file="college_football.csv", header=TRUE, sep=",",colClasses = "character"))
tblTable<-setNames(tblTable,tableHeader)

#we convert the wide table into a tidy table
tidyTable<-gather(tblTable,"Play","Points",2:length(tableHeader))
tidyTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Era Play Points
1883 Touchdown 2
1883-1897 Touchdown 4
1898-1903 Touchdown 5
1904-1908 Touchdown 5
1909-1911 Touchdown 5
1912-1957 Touchdown 6
1958-1987 Touchdown 6
1988-2018 Touchdown 6
1883 Field goal 5
1883-1897 Field goal 5
1898-1903 Field goal 5
1904-1908 Field goal 4
1909-1911 Field goal 3
1912-1957 Field goal 3
1958-1987 Field goal 3
1988-2018 Field goal 3
1883 Conversion (kick) 4
1883-1897 Conversion (kick) 2
1898-1903 Conversion (kick) 1
1904-1908 Conversion (kick) 1
1909-1911 Conversion (kick) 1
1912-1957 Conversion (kick) 1
1958-1987 Conversion (kick) 1
1988-2018 Conversion (kick) 1
1883 Conversion (touchdown) –
1883-1897 Conversion (touchdown) –
1898-1903 Conversion (touchdown) –
1904-1908 Conversion (touchdown) –
1909-1911 Conversion (touchdown) –
1912-1957 Conversion (touchdown) –
1958-1987 Conversion (touchdown) 2
1988-2018 Conversion (touchdown) 2
1883 Safety 1
1883-1897 Safety 2
1898-1903 Safety 2
1904-1908 Safety 2
1909-1911 Safety 2
1912-1957 Safety 2
1958-1987 Safety 2
1988-2018 Safety 2
1883 Conversion safety –
1883-1897 Conversion safety –
1898-1903 Conversion safety –
1904-1908 Conversion safety –
1909-1911 Conversion safety –
1912-1957 Conversion safety –
1958-1987 Conversion safety 1
1988-2018 Conversion safety 1
1883 Defensive conversion –
1883-1897 Defensive conversion –
1898-1903 Defensive conversion –
1904-1908 Defensive conversion –
1909-1911 Defensive conversion –
1912-1957 Defensive conversion –
1958-1987 Defensive conversion –
1988-2018 Defensive conversion 2
#we split the Era column into Year_start and Year_End
tidyTable<-tbl_df(tidyTable)
tidyTable<-tidyTable %>% separate(Era,sep = "-",into = c('Start_Year','End_YearTemp')) 
## Warning: Expected 2 pieces. Missing pieces filled with `NA` in 7 rows [1,
## 9, 17, 25, 33, 41, 49].
tidyTable<-tidyTable %>% mutate(End_Year=coalesce(End_YearTemp,Start_Year)) %>% select(c(Start_Year,End_Year,Play,Points))  
tidyTable<-tidyTable %>% sapply( function(x) toupper(x),USE.NAMES = FALSE)
tidyTable<-tbl_df(tidyTable)
tidyTable %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Start_Year End_Year Play Points
1883 1883 TOUCHDOWN 2
1883 1897 TOUCHDOWN 4
1898 1903 TOUCHDOWN 5
1904 1908 TOUCHDOWN 5
1909 1911 TOUCHDOWN 5
1912 1957 TOUCHDOWN 6
1958 1987 TOUCHDOWN 6
1988 2018 TOUCHDOWN 6
1883 1883 FIELD GOAL 5
1883 1897 FIELD GOAL 5
1898 1903 FIELD GOAL 5
1904 1908 FIELD GOAL 4
1909 1911 FIELD GOAL 3
1912 1957 FIELD GOAL 3
1958 1987 FIELD GOAL 3
1988 2018 FIELD GOAL 3
1883 1883 CONVERSION (KICK) 4
1883 1897 CONVERSION (KICK) 2
1898 1903 CONVERSION (KICK) 1
1904 1908 CONVERSION (KICK) 1
1909 1911 CONVERSION (KICK) 1
1912 1957 CONVERSION (KICK) 1
1958 1987 CONVERSION (KICK) 1
1988 2018 CONVERSION (KICK) 1
1883 1883 CONVERSION (TOUCHDOWN) –
1883 1897 CONVERSION (TOUCHDOWN) –
1898 1903 CONVERSION (TOUCHDOWN) –
1904 1908 CONVERSION (TOUCHDOWN) –
1909 1911 CONVERSION (TOUCHDOWN) –
1912 1957 CONVERSION (TOUCHDOWN) –
1958 1987 CONVERSION (TOUCHDOWN) 2
1988 2018 CONVERSION (TOUCHDOWN) 2
1883 1883 SAFETY 1
1883 1897 SAFETY 2
1898 1903 SAFETY 2
1904 1908 SAFETY 2
1909 1911 SAFETY 2
1912 1957 SAFETY 2
1958 1987 SAFETY 2
1988 2018 SAFETY 2
1883 1883 CONVERSION SAFETY –
1883 1897 CONVERSION SAFETY –
1898 1903 CONVERSION SAFETY –
1904 1908 CONVERSION SAFETY –
1909 1911 CONVERSION SAFETY –
1912 1957 CONVERSION SAFETY –
1958 1987 CONVERSION SAFETY 1
1988 2018 CONVERSION SAFETY 1
1883 1883 DEFENSIVE CONVERSION –
1883 1897 DEFENSIVE CONVERSION –
1898 1903 DEFENSIVE CONVERSION –
1904 1908 DEFENSIVE CONVERSION –
1909 1911 DEFENSIVE CONVERSION –
1912 1957 DEFENSIVE CONVERSION –
1958 1987 DEFENSIVE CONVERSION –
1988 2018 DEFENSIVE CONVERSION 2

Now that we have a tidy table we can start comparing games as if they were played in different eras.

2018 Super Bowl: Eagles vs Patriots

We will use this table to determine if the 2018 Super Bowl would have been won if it was played using the scoring system in effect in 1883

#We screpe the plays of this game from the ESPN website
url<-'http://www.sportingnews.com/us/nfl/news/philadelphia-eagles-new-england-patriots-score-updates-results-highlights-super-bowl-52/1obg36rfzvjkw170ws1sxy2tcl'
webPage<- url %>% read_html()
vectorPlays<-webPage %>% html_nodes('strong') %>% html_text()
vectorPlays<-vectorPlays[3:length(vectorPlays)]
#kick conversions after touchdown are added manually since they are not recorded on the web site
vectorPlays<-c(vectorPlays,"CONVERSION (KICK), Eagles","CONVERSION (KICK), Eagles","CONVERSION (KICK), Patriots","CONVERSION (KICK), Patriots","CONVERSION (KICK), Patriots") 
vectorPlays
##  [1] "10:17 p.m."                       "10:10 p.m. — FIELD GOAL, Eagles" 
##  [3] " 41-33, Eagles "                  "10:03 p.m. — TURNOVER"           
##  [5] "9:56 p.m. — TOUCHDOWN, Eagles"    " 38-33, Eagles "                 
##  [7] "9:35 p.m. — TOUCHDOWN, Patriots"  " 33-32, Patriots "               
##  [9] "9:25 p.m. — FIELD GOAL, Eagles"   " 32-26, Eagles "                 
## [11] "9:21 p.m. "                       "9:10 p.m. — TOUCHDOWN, Patriots" 
## [13] " 29-26, Eagles "                  "8:59 p.m. — TOUCHDOWN, Eagles"   
## [15] " 29-19, Eagles "                  "8:46 p.m. — TOUCHDOWN, Patriots" 
## [17] " 22-19, Eagles "                  "8:41 p.m. "                      
## [19] "8:10 p.m. "                       "8:03 p.m. — TOUCHDOWN, Eagles"   
## [21] " 22-12, Eagles "                  "7:51 p.m. — TOUCHDOWN, Patriots" 
## [23] " 15-12, Eagles "                  "7:44 p.m. — TURNOVER"            
## [25] "7:38 p.m. — FIELD GOAL, Patriots" " 15-6, Eagles "                  
## [27] "7:31 p.m. — TOUCHDOWN, Eagles"    " 15-3, Eagles "                  
## [29] "7:25 p.m."                        "7:21 p.m."                       
## [31] "7:12 p.m."                        "7:08 p.m."                       
## [33] "6:58 p.m. — TOUCHDOWN, Eagles:"   " 9-3, Eagles "                   
## [35] "6:55 p.m. — FIELD GOAL, Patriots" " 3-3, tie "                      
## [37] "6:41 p.m. — FIELD GOAL, Eagles"   " 3-0, Eagles "                   
## [39] "6:31 p.m."                        "6:27 p.m."                       
## [41] "6:22 p.m."                        "6:11 p.m."                       
## [43] "6:10 p.m."                        "5:40 p.m."                       
## [45] "5:37 p.m."                        "5:33 p.m."                       
## [47] "5:13 p.m."                        "5 p.m."                          
## [49] "4:54 p.m."                        "4:43 p.m."                       
## [51] "4:32 p.m."                        "4:13 p.m."                       
## [53] "4:02 p.m."                        "3:52 p.m."                       
## [55] "2:30 p.m."                        "CONVERSION (KICK), Eagles"       
## [57] "CONVERSION (KICK), Eagles"        "CONVERSION (KICK), Patriots"     
## [59] "CONVERSION (KICK), Patriots"      "CONVERSION (KICK), Patriots"
getTeamPlayPoints<-function(GameYear,TeamName) {
  GameYear
  vectorTeamPlays<-str_extract(vectorPlays,paste(" [A-Z]+, ",TeamName,"| [A-Z]+ [A-Z]+, ",TeamName,"|[A-Z]+ \\([^()]+\\), ",TeamName,sep = "")) %>% str_extract("[A-Z]+ \\([^()]+\\)|[A-Z]+ [A-Z]+|[A-Z]+")
  vectorTeamPlays<-vectorTeamPlays[!is.na(vectorTeamPlays)]
  tablePlays<-tbl_df(data.frame(matrix(vectorTeamPlays,nrow=length(vectorTeamPlays),ncol=1,byrow=TRUE)))
  tablePlays<-setNames(tablePlays,"Play")
  #We select only 2018 rows from tidyTable and then do a join with the eagle plays table
  tidyTableFiltered<-tidyTable %>% filter(End_Year==GameYear) 
  return(inner_join(tablePlays,tidyTableFiltered))
}

tableEaglePlaysPoints<-getTeamPlayPoints("2018","Eagles")
## Joining, by = "Play"
## Warning: Column `Play` joining factor and character vector, coercing into
## character vector
tableEaglePlaysPoints %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Play Start_Year End_Year Points
FIELD GOAL 1988 2018 3
TOUCHDOWN 1988 2018 6
FIELD GOAL 1988 2018 3
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
FIELD GOAL 1988 2018 3
CONVERSION (KICK) 1988 2018 1
CONVERSION (KICK) 1988 2018 1
totalEaglePoints2018<-sum(strtoi(tableEaglePlaysPoints$Points))
print(paste("Eagles Score with 2018 scoring: ",toString(totalEaglePoints2018)))
## [1] "Eagles Score with 2018 scoring:  41"
game<-c("Super Bowl")
year<-c("2018")
team<-c("Eagles")
scoring_sys<-c("2018")
score<-c(totalEaglePoints2018)

tablePatriotsPlaysPoints<-getTeamPlayPoints("2018","Patriots")
## Joining, by = "Play"
## Warning: Column `Play` joining factor and character vector, coercing into
## character vector
tablePatriotsPlaysPoints %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Play Start_Year End_Year Points
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
TOUCHDOWN 1988 2018 6
FIELD GOAL 1988 2018 3
FIELD GOAL 1988 2018 3
CONVERSION (KICK) 1988 2018 1
CONVERSION (KICK) 1988 2018 1
CONVERSION (KICK) 1988 2018 1
totalPatriotsPoints2018<-sum(strtoi(tablePatriotsPlaysPoints$Points))
print(paste("Patriots Score with 2018 scoring: ",toString(totalPatriotsPoints2018)))
## [1] "Patriots Score with 2018 scoring:  33"
game<-c(game,"Super Bowl")
year<-c(year,"2018")
team<-c(team,"Patriots")
scoring_sys<-c(scoring_sys,"2018")
score<-c(score,totalPatriotsPoints2018)

tableEaglePlaysPoints<-getTeamPlayPoints("1883","Eagles")
## Joining, by = "Play"
## Warning: Column `Play` joining factor and character vector, coercing into
## character vector
tableEaglePlaysPoints %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Play Start_Year End_Year Points
FIELD GOAL 1883 1883 5
TOUCHDOWN 1883 1883 2
FIELD GOAL 1883 1883 5
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
FIELD GOAL 1883 1883 5
CONVERSION (KICK) 1883 1883 4
CONVERSION (KICK) 1883 1883 4
totalEaglePoints1883<-sum(strtoi(tableEaglePlaysPoints$Points))
print(paste("Eagles Score with 1883 scoring: ",toString(totalEaglePoints1883)))
## [1] "Eagles Score with 1883 scoring:  33"
game<-c(game,"Super Bowl")
year<-c(year,"2018")
team<-c(team,"Eagles")
scoring_sys<-c(scoring_sys,"1883")
score<-c(score,totalEaglePoints1883)

tablePatriotsPlaysPoints<-getTeamPlayPoints("1883","Patriots")
## Joining, by = "Play"
## Warning: Column `Play` joining factor and character vector, coercing into
## character vector
tablePatriotsPlaysPoints %>% kable() %>% kable_styling() %>% scroll_box(width = "910px", height = "400px")
Play Start_Year End_Year Points
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
TOUCHDOWN 1883 1883 2
FIELD GOAL 1883 1883 5
FIELD GOAL 1883 1883 5
CONVERSION (KICK) 1883 1883 4
CONVERSION (KICK) 1883 1883 4
CONVERSION (KICK) 1883 1883 4
totalPatriotsPoints1883<-sum(strtoi(tablePatriotsPlaysPoints$Points))
print(paste("Patriots Score with 1883 scoring: ",toString(totalPatriotsPoints1883)))
## [1] "Patriots Score with 1883 scoring:  30"
game<-c(game,"Super Bowl")
year<-c(year,"2018")
team<-c(team,"Patriots")
scoring_sys<-c(scoring_sys,"1883")
score<-c(score,totalPatriotsPoints1883)

results<-data.frame(game,year,team,scoring_sys,score)
results<-tbl_df(results)
results %>% kable() %>% kable_styling() %>% scroll_box(width = "910px")
game year team scoring_sys score
Super Bowl 2018 Eagles 2018 41
Super Bowl 2018 Patriots 2018 33
Super Bowl 2018 Eagles 1883 33
Super Bowl 2018 Patriots 1883 30
results %>% group_by(scoring_sys) %>% ggplot(aes(x=team,y=score,fill=scoring_sys))+geom_bar(stat = "identity",position = 'dodge')

print("2018 vs 1883 resluts")
## [1] "2018 vs 1883 resluts"
print(paste("2018: Eagles ",toString(totalEaglePoints2018),"vs Patriots ",toString(totalPatriotsPoints2018)))
## [1] "2018: Eagles  41 vs Patriots  33"
print(paste("1883: Eagles ",toString(totalEaglePoints1883),"vs Patriots ",toString(totalPatriotsPoints1883)))
## [1] "1883: Eagles  33 vs Patriots  30"

Eagles would have still defeted the Patriots if 1883 football scoring rules were still in effect, although by a smaller margin.