Skip to contents

All Star appearances by players

Usage

data(AllstarFull)

Format

A data frame with 5655 observations on the following 8 variables.

playerID

Player ID code

yearID

Year

gameNum

Game number (for years in which more than one game was played)

gameID

Game ID code

teamID

Team; a factor

lgID

League; a factor with levels AL NL

GP

Game played (zero if player did not appear in game)

startingPos

If 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>