
AllstarFull table
AllstarFull.RdAll Star appearances by players
Usage
data(AllstarFull)Format
A data frame with 5655 observations on the following 8 variables.
playerIDPlayer ID code
yearIDYear
gameNumGame number (for years in which more than one game was played)
gameIDGame ID code
teamIDTeam; a factor
lgIDLeague; a factor with levels
ALNLGPGame played (zero if player did not appear in game)
startingPosIf the player started, what position he played
Source
Lahman, S. (2025) Lahman's Baseball Database, 1871-2024, 2025 version, https://sabr.org/lahman-database/
Examples
data(AllstarFull)
# find number of appearances by players in the All Star games
player_appearances <- with(AllstarFull, rev(sort(table(playerID))))
# How many All-Star players, in total?
length(player_appearances)
#> [1] 2017
# density plot of the whole distribution
plot(density(player_appearances), main="Player appearances in All Star Games")
rug(jitter(player_appearances))
# who has played in more than 10 ASGs?
player_appearances[player_appearances > 10]
#> playerID
#> musiast01 mayswi01 aaronha01 willite01 ripkeca01 mantlmi01 yastrca01 robinbr01
#> 24 24 24 19 19 19 18 18
#> kalinal01 carewro01 berrayo01 rosepe01 spahnwa01 smithoz01 gwynnto01 foxne01
#> 18 18 18 17 16 15 15 15
#> clemero01 rodriiv01 rodrial01 robinfr02 jeterde01 jacksre01 bondsba01 benchjo01
#> 15 14 14 14 14 14 14 14
#> bankser01 riverma01 killeha01 griffke02 dimagjo01 brettge01 aparilu01 winfida01
#> 14 13 13 13 13 13 13 12
#> seaveto01 schmimi01 ramirma02 piazzmi01 ottme01 mcgwima01 matheed01 larkiba01
#> 12 12 12 12 12 12 12 12
#> cabremi01 boggswa01 alomaro01 troutmi01 pujolal01 howarel01 freehbi01 fiskca01
#> 12 12 12 11 11 11 11 11
#> dickebi01 crandde01 clemero02 cepedor01 cartega01 boyerke01
#> 11 11 11 11 11 11
hist(player_appearances[player_appearances > 10])
# Hank Aaron's All-Star record:
subset(AllstarFull, playerID == "aaronha01")
#> playerID yearID gameNum gameID teamID lgID GP startingPos
#> 1 aaronha01 1955 0 NLS195507120 ML1 NL 1 <NA>
#> 2 aaronha01 1956 0 ALS195607100 ML1 NL 1 <NA>
#> 3 aaronha01 1957 0 NLS195707090 ML1 NL 1 9
#> 4 aaronha01 1958 0 ALS195807080 ML1 NL 1 9
#> 5 aaronha01 1959 1 NLS195907070 ML1 NL 1 9
#> 6 aaronha01 1959 2 NLS195908030 ML1 NL 1 9
#> 7 aaronha01 1960 1 ALS196007110 ML1 NL 1 9
#> 8 aaronha01 1960 2 ALS196007130 ML1 NL 1 9
#> 9 aaronha01 1961 1 NLS196107110 ML1 NL 1 <NA>
#> 10 aaronha01 1961 2 ALS196107310 ML1 NL 1 <NA>
#> 11 aaronha01 1962 2 NLS196207300 ML1 NL 1 <NA>
#> 12 aaronha01 1963 0 ALS196307090 ML1 NL 1 9
#> 13 aaronha01 1964 0 NLS196407070 ML1 NL 1 <NA>
#> 14 aaronha01 1965 0 ALS196507130 ML1 NL 1 9
#> 15 aaronha01 1966 0 NLS196607120 ATL NL 1 7
#> 16 aaronha01 1967 0 ALS196707110 ATL NL 1 8
#> 17 aaronha01 1968 0 NLS196807090 ATL NL 1 9
#> 18 aaronha01 1969 0 ALS196907230 ATL NL 1 9
#> 19 aaronha01 1970 0 NLS197007140 ATL NL 1 9
#> 20 aaronha01 1971 0 ALS197107130 ATL NL 1 9
#> 21 aaronha01 1972 0 NLS197207250 ATL NL 1 9
#> 22 aaronha01 1973 0 ALS197307240 ATL NL 1 3
#> 23 aaronha01 1974 0 NLS197407230 ATL NL 1 9
#> 24 aaronha01 1975 0 ALS197507150 ML4 AL 1 <NA>
# Years that Stan Musial played in the ASG:
with(AllstarFull, yearID[playerID == "musiast01"])
#> [1] 1943 1944 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958
#> [16] 1959 1959 1960 1960 1961 1961 1962 1962 1963
# Starting positions he played (NA means did not start)
with(AllstarFull, startingPos[playerID == "musiast01"])
#> [1] "7" "8" "7" NA "7" "8" "3" "7" "8" "7" "9" NA "9" "3" "3" "3" NA NA NA
#> [20] NA NA NA NA NA
# All-Star rosters from the 1966 ASG
subset(AllstarFull, gameID == "NLS196607120")
#> playerID yearID gameNum gameID teamID lgID GP startingPos
#> 15 aaronha01 1966 0 NLS196607120 ATL NL 1 7
#> 39 ageeto01 1966 0 NLS196607120 CHA AL 1 <NA>
#> 54 allendi01 1966 0 NLS196607120 PHI NL 1 <NA>
#> 91 aloufe01 1966 0 NLS196607120 ATL NL 0 <NA>
#> 264 barbest01 1966 0 NLS196607120 BAL AL 0 <NA>
#> 280 batteea01 1966 0 NLS196607120 MIN AL 1 <NA>
#> 323 bellga01 1966 0 NLS196607120 CLE AL 0 <NA>
#> 672 bunniji01 1966 0 NLS196607120 PHI NL 1 <NA>
#> 783 cardele01 1966 0 NLS196607120 CIN NL 1 6
#> 859 cashno01 1966 0 NLS196607120 DET AL 1 <NA>
#> 966 clemero01 1966 0 NLS196607120 PIT NL 1 9
#> 999 colavro01 1966 0 NLS196607120 CLE AL 1 <NA>
#> 1439 etchean01 1966 0 NLS196607120 BAL AL 0 <NA>
#> 1549 floodcu01 1966 0 NLS196607120 SLN NL 1 <NA>
#> 1618 freehbi01 1966 0 NLS196607120 DET AL 1 2
#> 1637 fregoji01 1966 0 NLS196607120 CAL AL 1 <NA>
#> 1760 gibsobo01 1966 0 NLS196607120 SLN NL 0 <NA>
#> 2038 halleto01 1966 0 NLS196607120 SFN NL 0 <NA>
#> 2105 hartji01 1966 0 NLS196607120 SFN NL 1 <NA>
#> 2352 hunteca01 1966 0 NLS196607120 KC1 AL 0 <NA>
#> 2366 huntro01 1966 0 NLS196607120 NYN NL 1 <NA>
#> 2546 kaatji01 1966 0 NLS196607120 MIN AL 1 <NA>
#> 2562 kalinal01 1966 0 NLS196607120 DET AL 1 8
#> 2657 killeha01 1966 0 NLS196607120 MIN AL 1 <NA>
#> 2712 knoopbo01 1966 0 NLS196607120 CAL AL 1 4
#> 2730 koufasa01 1966 0 NLS196607120 LAN NL 1 1
#> 2833 lefebji01 1966 0 NLS196607120 LAN NL 1 4
#> 3052 maricju01 1966 0 NLS196607120 SFN NL 1 <NA>
#> 3202 mayswi01 1966 0 NLS196607120 SFN NL 1 8
#> 3222 mcauldi01 1966 0 NLS196607120 DET AL 1 6
#> 3236 mccarti01 1966 0 NLS196607120 SLN NL 1 <NA>
#> 3240 mccoobi01 1966 0 NLS196607120 CIN NL 0 <NA>
#> 3255 mccovwi01 1966 0 NLS196607120 SFN NL 1 3
#> 3280 mcdowsa01 1966 0 NLS196607120 CLE AL 0 <NA>
#> 3311 mclaide01 1966 0 NLS196607120 DET AL 1 1
#> 3483 morgajo02 1966 0 NLS196607120 HOU NL 0 <NA>
#> 3709 olivato01 1966 0 NLS196607120 MIN AL 1 9
#> 3919 perryga01 1966 0 NLS196607120 SFN NL 1 <NA>
#> 4121 raymocl01 1966 0 NLS196607120 HOU NL 0 <NA>
#> 4144 reganph01 1966 0 NLS196607120 LAN NL 0 <NA>
#> 4200 richabo01 1966 0 NLS196607120 NYA AL 1 <NA>
#> 4203 richepe01 1966 0 NLS196607120 WS2 AL 1 <NA>
#> 4279 robinbr01 1966 0 NLS196607120 BAL AL 1 5
#> 4300 robinfr02 1966 0 NLS196607120 BAL AL 1 7
#> 4559 santoro01 1966 0 NLS196607120 CHN NL 1 5
#> 4631 scottge02 1966 0 NLS196607120 BOS AL 1 3
#> 4708 siebeso01 1966 0 NLS196607120 CLE AL 1 <NA>
#> 4914 stargwi01 1966 0 NLS196607120 PIT NL 1 <NA>
#> 4962 stottme01 1966 0 NLS196607120 NYA AL 1 <NA>
#> 5116 torrejo01 1966 0 NLS196607120 ATL NL 1 2
#> 5242 vealebo01 1966 0 NLS196607120 PIT NL 0 <NA>
#> 5497 willsma01 1966 0 NLS196607120 LAN NL 1 <NA>
#> 5584 yastrca01 1966 0 NLS196607120 BOS AL 0 <NA>
# All-Stars from the Washington Nationals
subset(AllstarFull, teamID == "WAS")
#> playerID yearID gameNum gameID teamID lgID GP startingPos
#> 26 abramcj01 2024 0 ALS202407160 WAS NL 1 <NA>
#> 778 cappsma01 2010 0 ALS201007130 WAS NL 1 <NA>
#> 984 clippty01 2011 0 NLS201107120 WAS NL 1 <NA>
#> 985 clippty01 2014 0 ALS201407150 WAS NL 1 <NA>
#> 1080 cordech01 2005 0 ALS200507120 WAS NL 1 <NA>
#> 1249 desmoia01 2012 0 ALS201207100 WAS NL 0 <NA>
#> 1334 doolise01 2018 0 NLS201807170 WAS NL 0 <NA>
#> 1531 finneky01 2024 0 ALS202407160 WAS NL 0 <NA>
#> 1820 gonzagi01 2012 0 ALS201207100 WAS NL 1 <NA>
#> 1879 grayjo03 2023 0 ALS202307110 WAS NL 1 <NA>
#> 1997 guzmacr01 2008 0 ALS200807150 WAS NL 1 <NA>
#> 2082 harpebr03 2012 0 ALS201207100 WAS NL 1 <NA>
#> 2083 harpebr03 2013 0 NLS201307160 WAS NL 1 8
#> 2084 harpebr03 2015 0 NLS201507140 WAS NL 1 9
#> 2085 harpebr03 2016 0 ALS201607120 WAS NL 1 9
#> 2086 harpebr03 2017 0 NLS201707110 WAS NL 1 9
#> 2087 harpebr03 2018 0 NLS201807170 WAS NL 1 8
#> 2209 hernali01 2005 0 ALS200507120 WAS NL 1 <NA>
#> 3562 murphda08 2016 0 ALS201607120 WAS NL 1 <NA>
#> 3563 murphda08 2017 0 NLS201707110 WAS NL 1 4
#> 4107 ramoswi01 2016 0 ALS201607120 WAS NL 1 <NA>
#> 4151 rendoan01 2019 0 ALS201907090 WAS NL 0 <NA>
#> 4580 scherma01 2015 0 NLS201507140 WAS NL 0 <NA>
#> 4581 scherma01 2016 0 ALS201607120 WAS NL 1 <NA>
#> 4582 scherma01 2017 0 NLS201707110 WAS NL 1 1
#> 4583 scherma01 2018 0 NLS201807170 WAS NL 1 1
#> 4584 scherma01 2019 0 ALS201907090 WAS NL 0 <NA>
#> 4585 scherma01 2021 0 NLS202107130 WAS NL 1 1
#> 4625 schwaky01 2021 0 NLS202107130 WAS NL 0 <NA>
#> 4841 soriaal01 2006 0 NLS200607110 WAS NL 1 7
#> 4858 sotoju01 2021 0 NLS202107130 WAS NL 1 <NA>
#> 4859 sotoju01 2022 0 NLS202207190 WAS NL 1 <NA>
#> 4967 strasst01 2012 0 ALS201207100 WAS NL 1 <NA>
#> 4968 strasst01 2016 0 ALS201607120 WAS NL 0 <NA>
#> 4969 strasst01 2017 0 NLS201707110 WAS NL 0 <NA>
#> 5181 turnetr01 2021 0 NLS202107130 WAS NL 1 <NA>
#> 5619 youngdm01 2007 0 NLS200707100 WAS NL 1 <NA>
#> 5643 zimmejo02 2013 0 NLS201307160 WAS NL 0 <NA>
#> 5644 zimmejo02 2014 0 ALS201407150 WAS NL 0 <NA>
#> 5645 zimmery01 2009 0 NLS200907140 WAS NL 1 <NA>
#> 5646 zimmery01 2017 0 NLS201707110 WAS NL 1 3
# Teams with the fewest All-Stars
rare <- names(which(table(AllstarFull$teamID) < 10))
# Records associated with the 'rare' teams:
# (There are a few teamID typos: can you spot them?)
subset(AllstarFull, teamID %in% rare)
#> playerID yearID gameNum gameID teamID lgID GP startingPos
#> 2137 heganmi01 1969 0 ALS196907230 SE1 AL 0 <NA>
#> 3396 minchdo01 1969 0 ALS196907230 SE1 AL 1 <NA>