15 统计学习介绍
15.1 介绍
统计学习(statistical learning), 也有数据挖掘(data mining),机器学习(machine learning)等称呼。 主要目的是用一些计算机算法从大量数据中发现知识。 方兴未艾的数据科学就以统计学习为重要支柱。 方法分为有监督(supervised)学习与无监督(unsupervised)学习。
无监督学习方法如聚类问题、购物篮问题、主成分分析等。
有监督学习即统计中回归分析、判别分析、逻辑斯谛回归解决的问题, 现在又有树回归、树判别、最近邻方法、随机森林、lasso、boosting、支持向量机、神经网络、贝叶斯网络、排序算法等许多方法。
统计学习介绍的主要参考书:
- (James et al. 2013): Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani(2013) An Introduction to Statistical Learning: with Applications in R, Springer.
调入需要的扩展包:
## Loading required package: Matrix
## Loaded glmnet 4.1-8
## randomForest 4.7-1.2
## Type rfNews() to see new features/changes/bug fixes.
## Loaded gbm 2.2.2
## This version of gbm is no longer under development. Consider transitioning to gbm3, https://github.com/gbm-developers/gbm3
无监督学习在给了数据之后, 直接从数据中发现规律, 比如聚类分析是发现数据中的聚集和分组现象, 购物篮分析是从数据中找到更多的共同出现的条目 (比如购买啤酒的用户也有较大可能购买火腿肠)。
有监督学习方法众多。 通常,需要把数据分为训练样本和测试样本, 训练样本的因变量(数值型或分类型)是已知的, 根据训练样本中自变量和因变量的关系训练出一个回归函数, 此函数以自变量为输入, 可以输出因变量的预测值。
训练出的函数有可能是有简单表达式的(例如,logistic回归)、 有参数众多的表达式的(如神经网络), 也有可能是依赖于所有训练样本而无法写出表达式的(例如k近邻分类)。
15.1.1 偏差与方差折衷
对回归问题,经常使用均方误差\(E|\hat y - Ey|^2\)来衡量精度。 对分类问题,经常使用分类准确率等来衡量精度。 均方误差可分解: \[ \text{均方误差} = E|\hat y Ey|^2 = \text{Var}(\hat y) + [Ey - E \hat y]^2 = \text{方差} + \text{偏差}^2 . \]
训练的回归函数如果仅考虑对训练样本解释尽可能好, 就会使得估计结果方差很大, 在对测试样本进行计算时因方差大而导致很大的误差, 所以选取的回归函数应该尽可能简单。
如果选取的回归函数过于简单而实际上自变量与因变量关系比较复杂, 就会使得估计的回归函数偏差比较大, 这样在对检验样本进行计算时也会有比较大的误差。
另外,训练样本的样本量也是一个关键因素, 如果因变量和自变量之间的实际关系很复杂但样本量不够大, 这时方差会比较大, 无法使用更复杂的模型。 如果在样本量较小时使用了复杂的模型, 就会造成过度拟合; 如果样本量足够但是模型过于简单, 这时偏差太大, 造成拟合不足。
所以,在有监督学习时, 回归函数的复杂程度是一个很关键的量, 太复杂和太简单都可能导致差的结果, 需要找到一个折衷的值。 这个问题在机器学习中也称为泛化(generalization)问题, 就是从训练样本得到的回归函数能否有效地预测其它没有参与训练的数据。
复杂程度在线性回归中就是自变量个数, 在一元曲线拟合中就是曲线的不光滑程度。 在其它指标类似的情况下,简单的模型更稳定、可解释更好, 所以统计学特别重视模型的简化。
15.1.2 训练集、验证集和测试集
设输入的数据的集合为\(D\), 其中每个元素是一个“样例”。 从统计上, \(D\)是来自某个多元分布的独立同分布样本。 有监督学习的目的, 是找到一个最优(或者接近最优)的函数\(f(\cdot)\), 用来描述样本所来自的总体中自变量(也称为特征)和因变量(也称为标记或标签)的关系。 如果我们使用\(D\)中所有样本进行估计, 然后使用对这些样本的模型预测结果评估模型的性能, 就很容易发生过度拟合问题, 不能真实地反映模型的泛化能力。 所以, 可以将\(D\)随机地(或随机分层抽样)划分为\(D_1\)和\(D_2\)两个子集, 在\(D_1\)上估计函数\(f\), 称\(D_1\)为“训练集”; 在\(D_2\)上评估训练得到的函数的性能(误差指标), 成\(D_2\)为“测试集”。
在更实际的应用中, 最后获得的模型是需要应用到类似的未知数据上的, 哪些未知数据若称为“测试集”, 则将\(D_2\)称为“验证集”(validation set)。
因为训练集和测试集的划分是随机的, 所以在测试集上得到的误差指标受到随时划分的影响。 为此, 可以多次进行训练集与测试集的随机划分, 并将得到的多个误差指标进行平均, 以期得到更稳定可靠的泛化误差估计。
15.1.3 交叉验证
即使是在从训练集训练(估计)回归函数时, 也需要适当地选择模型的复杂度。 仅考虑对训练数据的拟合程度是不够的, 这会造成过度拟合问题。
为了相对客观地度量模型的预报误差, 假设训练样本有\(n\)个观测, 可以留出第一个观测不用, 用剩余的\(n-1\)个观测建模,然后预测第一个观测的因变量值, 得到一个误差;对每个观测都这样做, 就可以得到\(n\)个误差。 这样的方法叫做留一法。 利用这样得到的\(n\)个误差评估模型的预测精度, 找到最优的复杂度或在多个候选模型中找到最优的模型。 但是,当样本量\(n\)很大时, 需要估计的模型的个数过多, 计算量太大。
更常用的是十折(\(k\)折)交叉验证。 假设训练集有\(n\)个观测, 将其均分成\(10\)分, 保留第一份不用, 将其余九份合并在一起用来建模,然后预报第一份; 对每一份都这样做, 也可以得到\(n\)个误差, 利用这些误差进行模型比较和选择, 这叫做十折(ten-fold)交叉验证方法。 因为要预报的数据没有用来建模, 交叉验证得到的误差估计更准确。
在划分十折的子集时一般进行随机分组, 这会使得最后的误差估计受到随机分组的影响。 为此, 可以重复地进行多次随机分组, 每一次得到十折交叉验证的误差估计, 然后将误差估计平均, 以期获得较稳定的误差估计。
15.2 回归变量选择
在有监督学习中, 减少自变量个数是常用的降低模型复杂度的方法。 其它的降低模型复杂度方法包括收缩(shrinkage,如lasso、岭回归)、 自变量降维(主成分回归、偏最小二乘)等方法。
有各种筛选自变量的方法, 比如在线性回归分析中,按照BIC准则筛选: \[\begin{aligned} \text{BIC}(p) = \frac{1}{n}( \text{RSS}(p) + p \hat\sigma^2 \log n ), \end{aligned}\] 其中\(p\)为自变量个数,\(n\)为观测个数, \(\text{RSS}(p)\)是子集回归的残差平方和, \(\hat\sigma^2\)是回归误差项方差\(\sigma^2\)的无偏估计, 常用全体自变量模型估计。 取使得BIC(\(p\))最小的自变量子集。
类似地有AIC准则: \[\begin{aligned} \text{AIC}(p) = \frac{1}{n}( \text{RSS}(p) + 2p \hat\sigma^2 ), \end{aligned}\] BIC在大样本情形下能保证得到的子集相合, AIC在中小样本情形下可以使重要变量不被错误删除。
注意,不能用\(R^2\)最小作为模型选择准则, 因为增加更多自变量一定会增大\(R^2\), 但有可能造成过度拟合。
lasso方法可以利用惩罚函数和参数估计收缩达到自变量筛选的目的, 可以控制模型的复杂度。
关于线性回归中过度拟合的示例, 参见统计软件教程中的内容。
15.2.1 维数诅咒
现代的数据中出现了很多高维问题, 可能会有变量个数\(p\)远大于观测个数\(n\)的情况出现, 比如基因表达数据。 高维使得问题变得很难解决甚至无法解决, 其原因是高维空间中的数据点彼此距离都很稀疏, 也就是说, 高维空间的观测点都是很稀疏的。 这个问题叫做维数诅咒。
比如,\(n=100\)的样本量在一维的\([0,1]\)区间中已经比较稠密了。 放到\(p=10\)维空间中,如果每个点占据一个10维超立方体, 每个立方体的边长则有0.63,彼此距离相当远。
回归分析需要比较多的临近数据,否则很难得到有用的回归函数。 即使用了变量选择、收缩、降维等方法, 高维问题还是会造成很大的影响。 并不是自变量越多越好, 增加许多与因变量无关的自变量实际上会使得模型变差。
15.2.2 R中的最优子集回归
在R用leaps包的regsubsets()
函数计算最优子集回归,
办法是对某个试验性的子集自变量个数\(\hat p\)值,
都找到\(\hat p\)固定情况下残差平方和最小的变量子集,
这样只要在这些不同\(\hat p\)的最优子集中挑选就可以了。
对拟合结果用coef()
加id=
指定一种子集。
15.2.3 Hitters数据分析
考虑ISLR包的Hitters数据集。 此数据集有322个运动员的20个变量的数据, 其中的变量Salary(工资)是我们关心的。 变量包括:
## [1] "AtBat" "Hits" "HmRun" "Runs" "RBI" "Walks" "Years" "CAtBat" "CHits" "CHmRun" "CRuns" "CRBI" "CWalks" "League" "Division" "PutOuts" "Assists" "Errors" "Salary" "NewLeague"
数据集的详细变量信息如下:
## 'data.frame': 322 obs. of 20 variables:
## $ AtBat : int 293 315 479 496 321 594 185 298 323 401 ...
## $ Hits : int 66 81 130 141 87 169 37 73 81 92 ...
## $ HmRun : int 1 7 18 20 10 4 1 0 6 17 ...
## $ Runs : int 30 24 66 65 39 74 23 24 26 49 ...
## $ RBI : int 29 38 72 78 42 51 8 24 32 66 ...
## $ Walks : int 14 39 76 37 30 35 21 7 8 65 ...
## $ Years : int 1 14 3 11 2 11 2 3 2 13 ...
## $ CAtBat : int 293 3449 1624 5628 396 4408 214 509 341 5206 ...
## $ CHits : int 66 835 457 1575 101 1133 42 108 86 1332 ...
## $ CHmRun : int 1 69 63 225 12 19 1 0 6 253 ...
## $ CRuns : int 30 321 224 828 48 501 30 41 32 784 ...
## $ CRBI : int 29 414 266 838 46 336 9 37 34 890 ...
## $ CWalks : int 14 375 263 354 33 194 24 12 8 866 ...
## $ League : Factor w/ 2 levels "A","N": 1 2 1 2 2 1 2 1 2 1 ...
## $ Division : Factor w/ 2 levels "E","W": 1 2 2 1 1 2 1 2 2 1 ...
## $ PutOuts : int 446 632 880 200 805 282 76 121 143 0 ...
## $ Assists : int 33 43 82 11 40 421 127 283 290 0 ...
## $ Errors : int 20 10 14 3 4 25 7 9 19 0 ...
## $ Salary : num NA 475 480 500 91.5 750 70 100 75 1100 ...
## $ NewLeague: Factor w/ 2 levels "A","N": 1 2 1 2 2 1 1 1 2 1 ...
希望以Salary为因变量,查看其缺失值个数:
## [1] 59
为简单起见,去掉有缺失值的观测:
## [1] 263 20
15.2.4 回归自变量选择
15.2.4.1 最优子集选择
用leaps包的regsubsets()
函数计算最优子集回归,
办法是对某个试验性的子集自变量个数\(\hat p\)值,
都找到\(\hat p\)固定情况下残差平方和最小的变量子集,
这样只要在这些不同\(\hat p\)的最优子集中挑选就可以了。
可以先进行一个包含所有自变量的全集回归:
regfit.full <- regsubsets(Salary ~ ., data=d, nvmax=19)
reg.summary <- summary(regfit.full)
reg.summary
## Subset selection object
## Call: regsubsets.formula(Salary ~ ., data = d, nvmax = 19)
## 19 Variables (and intercept)
## Forced in Forced out
## AtBat FALSE FALSE
## Hits FALSE FALSE
## HmRun FALSE FALSE
## Runs FALSE FALSE
## RBI FALSE FALSE
## Walks FALSE FALSE
## Years FALSE FALSE
## CAtBat FALSE FALSE
## CHits FALSE FALSE
## CHmRun FALSE FALSE
## CRuns FALSE FALSE
## CRBI FALSE FALSE
## CWalks FALSE FALSE
## LeagueN FALSE FALSE
## DivisionW FALSE FALSE
## PutOuts FALSE FALSE
## Assists FALSE FALSE
## Errors FALSE FALSE
## NewLeagueN FALSE FALSE
## 1 subsets of each size up to 19
## Selection Algorithm: exhaustive
## AtBat Hits HmRun Runs RBI Walks Years CAtBat CHits CHmRun CRuns CRBI CWalks LeagueN DivisionW PutOuts Assists Errors NewLeagueN
## 1 ( 1 ) " " " " " " " " " " " " " " " " " " " " " " "*" " " " " " " " " " " " " " "
## 2 ( 1 ) " " "*" " " " " " " " " " " " " " " " " " " "*" " " " " " " " " " " " " " "
## 3 ( 1 ) " " "*" " " " " " " " " " " " " " " " " " " "*" " " " " " " "*" " " " " " "
## 4 ( 1 ) " " "*" " " " " " " " " " " " " " " " " " " "*" " " " " "*" "*" " " " " " "
## 5 ( 1 ) "*" "*" " " " " " " " " " " " " " " " " " " "*" " " " " "*" "*" " " " " " "
## 6 ( 1 ) "*" "*" " " " " " " "*" " " " " " " " " " " "*" " " " " "*" "*" " " " " " "
## 7 ( 1 ) " " "*" " " " " " " "*" " " "*" "*" "*" " " " " " " " " "*" "*" " " " " " "
## 8 ( 1 ) "*" "*" " " " " " " "*" " " " " " " "*" "*" " " "*" " " "*" "*" " " " " " "
## 9 ( 1 ) "*" "*" " " " " " " "*" " " "*" " " " " "*" "*" "*" " " "*" "*" " " " " " "
## 10 ( 1 ) "*" "*" " " " " " " "*" " " "*" " " " " "*" "*" "*" " " "*" "*" "*" " " " "
## 11 ( 1 ) "*" "*" " " " " " " "*" " " "*" " " " " "*" "*" "*" "*" "*" "*" "*" " " " "
## 12 ( 1 ) "*" "*" " " "*" " " "*" " " "*" " " " " "*" "*" "*" "*" "*" "*" "*" " " " "
## 13 ( 1 ) "*" "*" " " "*" " " "*" " " "*" " " " " "*" "*" "*" "*" "*" "*" "*" "*" " "
## 14 ( 1 ) "*" "*" "*" "*" " " "*" " " "*" " " " " "*" "*" "*" "*" "*" "*" "*" "*" " "
## 15 ( 1 ) "*" "*" "*" "*" " " "*" " " "*" "*" " " "*" "*" "*" "*" "*" "*" "*" "*" " "
## 16 ( 1 ) "*" "*" "*" "*" "*" "*" " " "*" "*" " " "*" "*" "*" "*" "*" "*" "*" "*" " "
## 17 ( 1 ) "*" "*" "*" "*" "*" "*" " " "*" "*" " " "*" "*" "*" "*" "*" "*" "*" "*" "*"
## 18 ( 1 ) "*" "*" "*" "*" "*" "*" "*" "*" "*" " " "*" "*" "*" "*" "*" "*" "*" "*" "*"
## 19 ( 1 ) "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*" "*"
这里用nvmax=
指定了允许所有的自变量都参加,
缺省行为是限制最多个数的。
上述结果表格中每一行给出了固定\(\hat p\)条件下的最优子集。
试比较这些最优模型的BIC值:
## [1] -90.84637 -128.92622 -135.62693 -141.80892 -144.07143 -147.91690 -145.25594 -147.61525 -145.44316 -143.21651 -138.86077 -133.87283 -128.77759 -123.64420 -118.21832 -112.81768 -107.35339 -101.86391 -96.30412
其中\(\hat p=6, 8\)的值相近,都很低,
取\(\hat p=6\)。
用coef()
加id=6
指定第六种子集:
## (Intercept) AtBat Hits Walks CRBI DivisionW PutOuts
## 91.5117981 -1.8685892 7.6043976 3.6976468 0.6430169 -122.9515338 0.2643076
这种方法实现了选取BIC最小的自变量子集。
15.2.4.2 逐步回归方法
在用lm()
做了全集回归后,
把全集回归结果输入到step()
函数中可以执行逐步回归。
如:
##
## Call:
## lm(formula = Salary ~ ., data = d)
##
## Residuals:
## Min 1Q Median 3Q Max
## -907.62 -178.35 -31.11 139.09 1877.04
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 163.10359 90.77854 1.797 0.073622 .
## AtBat -1.97987 0.63398 -3.123 0.002008 **
## Hits 7.50077 2.37753 3.155 0.001808 **
## HmRun 4.33088 6.20145 0.698 0.485616
## Runs -2.37621 2.98076 -0.797 0.426122
## RBI -1.04496 2.60088 -0.402 0.688204
## Walks 6.23129 1.82850 3.408 0.000766 ***
## Years -3.48905 12.41219 -0.281 0.778874
## CAtBat -0.17134 0.13524 -1.267 0.206380
## CHits 0.13399 0.67455 0.199 0.842713
## CHmRun -0.17286 1.61724 -0.107 0.914967
## CRuns 1.45430 0.75046 1.938 0.053795 .
## CRBI 0.80771 0.69262 1.166 0.244691
## CWalks -0.81157 0.32808 -2.474 0.014057 *
## LeagueN 62.59942 79.26140 0.790 0.430424
## DivisionW -116.84925 40.36695 -2.895 0.004141 **
## PutOuts 0.28189 0.07744 3.640 0.000333 ***
## Assists 0.37107 0.22120 1.678 0.094723 .
## Errors -3.36076 4.39163 -0.765 0.444857
## NewLeagueN -24.76233 79.00263 -0.313 0.754218
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 315.6 on 243 degrees of freedom
## Multiple R-squared: 0.5461, Adjusted R-squared: 0.5106
## F-statistic: 15.39 on 19 and 243 DF, p-value: < 2.2e-16
## Start: AIC=3046.02
## Salary ~ AtBat + Hits + HmRun + Runs + RBI + Walks + Years +
## CAtBat + CHits + CHmRun + CRuns + CRBI + CWalks + League +
## Division + PutOuts + Assists + Errors + NewLeague
##
## Df Sum of Sq RSS AIC
## - CHmRun 1 1138 24201837 3044.0
## - CHits 1 3930 24204629 3044.1
## - Years 1 7869 24208569 3044.1
## - NewLeague 1 9784 24210484 3044.1
## - RBI 1 16076 24216776 3044.2
## - HmRun 1 48572 24249272 3044.6
## - Errors 1 58324 24259023 3044.7
## - League 1 62121 24262821 3044.7
## - Runs 1 63291 24263990 3044.7
## - CRBI 1 135439 24336138 3045.5
## - CAtBat 1 159864 24360564 3045.8
## <none> 24200700 3046.0
## - Assists 1 280263 24480963 3047.1
## - CRuns 1 374007 24574707 3048.1
## - CWalks 1 609408 24810108 3050.6
## - Division 1 834491 25035190 3052.9
## - AtBat 1 971288 25171987 3054.4
## - Hits 1 991242 25191941 3054.6
## - Walks 1 1156606 25357305 3056.3
## - PutOuts 1 1319628 25520328 3058.0
##
## Step: AIC=3044.03
## Salary ~ AtBat + Hits + HmRun + Runs + RBI + Walks + Years +
## CAtBat + CHits + CRuns + CRBI + CWalks + League + Division +
## PutOuts + Assists + Errors + NewLeague
##
## Df Sum of Sq RSS AIC
## - Years 1 7609 24209447 3042.1
## - NewLeague 1 10268 24212106 3042.2
## - CHits 1 14003 24215840 3042.2
## - RBI 1 14955 24216793 3042.2
## - HmRun 1 52777 24254614 3042.6
## - Errors 1 59530 24261367 3042.7
## - League 1 63407 24265244 3042.7
## - Runs 1 64860 24266698 3042.7
## - CAtBat 1 174992 24376830 3043.9
## <none> 24201837 3044.0
## - Assists 1 285766 24487603 3045.1
## - CRuns 1 611358 24813196 3048.6
## - CWalks 1 645627 24847464 3049.0
## - Division 1 834637 25036474 3050.9
## - CRBI 1 864220 25066057 3051.3
## - AtBat 1 970861 25172699 3052.4
## - Hits 1 1025981 25227819 3052.9
## - Walks 1 1167378 25369216 3054.4
## - PutOuts 1 1325273 25527110 3056.1
##
## Step: AIC=3042.12
## Salary ~ AtBat + Hits + HmRun + Runs + RBI + Walks + CAtBat +
## CHits + CRuns + CRBI + CWalks + League + Division + PutOuts +
## Assists + Errors + NewLeague
##
## Df Sum of Sq RSS AIC
## - NewLeague 1 9931 24219377 3040.2
## - RBI 1 15989 24225436 3040.3
## - CHits 1 18291 24227738 3040.3
## - HmRun 1 54144 24263591 3040.7
## - Errors 1 57312 24266759 3040.7
## - Runs 1 63172 24272619 3040.8
## - League 1 65732 24275178 3040.8
## <none> 24209447 3042.1
## - CAtBat 1 266205 24475652 3043.0
## - Assists 1 293479 24502926 3043.3
## - CRuns 1 646350 24855797 3047.1
## - CWalks 1 649269 24858716 3047.1
## - Division 1 827511 25036958 3049.0
## - CRBI 1 872121 25081568 3049.4
## - AtBat 1 968713 25178160 3050.4
## - Hits 1 1018379 25227825 3050.9
## - Walks 1 1164536 25373983 3052.5
## - PutOuts 1 1334525 25543972 3054.2
##
## Step: AIC=3040.22
## Salary ~ AtBat + Hits + HmRun + Runs + RBI + Walks + CAtBat +
## CHits + CRuns + CRBI + CWalks + League + Division + PutOuts +
## Assists + Errors
##
## Df Sum of Sq RSS AIC
## - RBI 1 15800 24235177 3038.4
## - CHits 1 15859 24235237 3038.4
## - Errors 1 54505 24273883 3038.8
## - HmRun 1 54938 24274316 3038.8
## - Runs 1 62294 24281671 3038.9
## - League 1 107479 24326856 3039.4
## <none> 24219377 3040.2
## - CAtBat 1 261336 24480713 3041.1
## - Assists 1 295536 24514914 3041.4
## - CWalks 1 648860 24868237 3045.2
## - CRuns 1 661449 24880826 3045.3
## - Division 1 824672 25044049 3047.0
## - CRBI 1 880429 25099806 3047.6
## - AtBat 1 999057 25218434 3048.9
## - Hits 1 1034463 25253840 3049.2
## - Walks 1 1157205 25376583 3050.5
## - PutOuts 1 1335173 25554550 3052.3
##
## Step: AIC=3038.4
## Salary ~ AtBat + Hits + HmRun + Runs + Walks + CAtBat + CHits +
## CRuns + CRBI + CWalks + League + Division + PutOuts + Assists +
## Errors
##
## Df Sum of Sq RSS AIC
## - CHits 1 13483 24248660 3036.5
## - HmRun 1 44586 24279763 3036.9
## - Runs 1 54057 24289234 3037.0
## - Errors 1 57656 24292833 3037.0
## - League 1 108644 24343821 3037.6
## <none> 24235177 3038.4
## - CAtBat 1 252756 24487934 3039.1
## - Assists 1 294674 24529851 3039.6
## - CWalks 1 639690 24874868 3043.2
## - CRuns 1 693535 24928712 3043.8
## - Division 1 808984 25044161 3045.0
## - CRBI 1 893830 25129008 3045.9
## - Hits 1 1034884 25270061 3047.4
## - AtBat 1 1042798 25277975 3047.5
## - Walks 1 1145013 25380191 3048.5
## - PutOuts 1 1340713 25575890 3050.6
##
## Step: AIC=3036.54
## Salary ~ AtBat + Hits + HmRun + Runs + Walks + CAtBat + CRuns +
## CRBI + CWalks + League + Division + PutOuts + Assists + Errors
##
## Df Sum of Sq RSS AIC
## - HmRun 1 40487 24289148 3035.0
## - Errors 1 51930 24300590 3035.1
## - Runs 1 79343 24328003 3035.4
## - League 1 114742 24363402 3035.8
## <none> 24248660 3036.5
## - Assists 1 283442 24532103 3037.6
## - CAtBat 1 613356 24862016 3041.1
## - Division 1 801474 25050134 3043.1
## - CRBI 1 903248 25151908 3044.2
## - CWalks 1 1011953 25260613 3045.3
## - Walks 1 1246164 25494824 3047.7
## - AtBat 1 1339620 25588280 3048.7
## - CRuns 1 1390808 25639469 3049.2
## - PutOuts 1 1406023 25654684 3049.4
## - Hits 1 1607990 25856650 3051.4
##
## Step: AIC=3034.98
## Salary ~ AtBat + Hits + Runs + Walks + CAtBat + CRuns + CRBI +
## CWalks + League + Division + PutOuts + Assists + Errors
##
## Df Sum of Sq RSS AIC
## - Errors 1 44085 24333232 3033.5
## - Runs 1 49068 24338215 3033.5
## - League 1 103837 24392985 3034.1
## <none> 24289148 3035.0
## - Assists 1 247002 24536150 3035.6
## - CAtBat 1 652746 24941894 3040.0
## - Division 1 795643 25084791 3041.5
## - CWalks 1 982896 25272044 3043.4
## - Walks 1 1205823 25494971 3045.7
## - AtBat 1 1300972 25590120 3046.7
## - CRuns 1 1351200 25640348 3047.2
## - CRBI 1 1353507 25642655 3047.2
## - PutOuts 1 1429006 25718154 3048.0
## - Hits 1 1574140 25863288 3049.5
##
## Step: AIC=3033.46
## Salary ~ AtBat + Hits + Runs + Walks + CAtBat + CRuns + CRBI +
## CWalks + League + Division + PutOuts + Assists
##
## Df Sum of Sq RSS AIC
## - Runs 1 54113 24387345 3032.0
## - League 1 91269 24424501 3032.4
## <none> 24333232 3033.5
## - Assists 1 220010 24553242 3033.8
## - CAtBat 1 650513 24983746 3038.4
## - Division 1 799455 25132687 3040.0
## - CWalks 1 971260 25304493 3041.8
## - Walks 1 1239533 25572765 3044.5
## - CRBI 1 1331672 25664904 3045.5
## - CRuns 1 1361070 25694302 3045.8
## - AtBat 1 1378592 25711824 3045.9
## - PutOuts 1 1391660 25724892 3046.1
## - Hits 1 1649291 25982523 3048.7
##
## Step: AIC=3032.04
## Salary ~ AtBat + Hits + Walks + CAtBat + CRuns + CRBI + CWalks +
## League + Division + PutOuts + Assists
##
## Df Sum of Sq RSS AIC
## - League 1 113056 24500402 3031.3
## <none> 24387345 3032.0
## - Assists 1 280689 24668034 3033.1
## - CAtBat 1 596622 24983967 3036.4
## - Division 1 780369 25167714 3038.3
## - CWalks 1 946687 25334032 3040.1
## - Walks 1 1212997 25600342 3042.8
## - CRuns 1 1334397 25721742 3044.1
## - CRBI 1 1361339 25748684 3044.3
## - PutOuts 1 1455210 25842555 3045.3
## - AtBat 1 1522760 25910105 3046.0
## - Hits 1 1718870 26106215 3047.9
##
## Step: AIC=3031.26
## Salary ~ AtBat + Hits + Walks + CAtBat + CRuns + CRBI + CWalks +
## Division + PutOuts + Assists
##
## Df Sum of Sq RSS AIC
## <none> 24500402 3031.3
## - Assists 1 313650 24814051 3032.6
## - CAtBat 1 534156 25034558 3034.9
## - Division 1 798473 25298875 3037.7
## - CWalks 1 965875 25466276 3039.4
## - CRuns 1 1265082 25765484 3042.5
## - Walks 1 1290168 25790569 3042.8
## - CRBI 1 1326770 25827172 3043.1
## - PutOuts 1 1551523 26051925 3045.4
## - AtBat 1 1589780 26090181 3045.8
## - Hits 1 1716068 26216469 3047.1
##
## Call:
## lm(formula = Salary ~ AtBat + Hits + Walks + CAtBat + CRuns +
## CRBI + CWalks + Division + PutOuts + Assists, data = d)
##
## Coefficients:
## (Intercept) AtBat Hits Walks CAtBat CRuns CRBI CWalks DivisionW PutOuts Assists
## 162.5354 -2.1687 6.9180 5.7732 -0.1301 1.4082 0.7743 -0.8308 -112.3801 0.2974 0.2832
最后保留了10个自变量。
15.2.4.3 划分训练集与测试集
在整个数据集中随机选取一部分作为训练集,其余作为测试集。 下面的程序把原始数据大约一分为二:
set.seed(1)
train_id <- sample(nrow(d), size=round(0.5*nrow(d)))
train <- rep(FALSE, nrow(d))
train[train_id] <- TRUE
test <- (!train)
其中train_id
保存了作为训练集的序号,
train
则用真值、假值表示每个观测是否入选训练集。
仅用训练集估计模型。 为了在测试集上用模型进行预报并估计预测均方误差, 需要自己写一个预测函数:
predict.regsubsets <- function(object, newdata, id, ...){
form <- as.formula(object$call[[2]])
mat <- model.matrix(form, newdata)
coefi <- coef(object, id=id)
xvars <- names(coefi)
mat[, xvars] %*% coefi
}
然后,对每个子集大小,用最优子集在测试集上进行预报, 计算均方误差:
regfit.best <- regsubsets( Salary ~ ., data=d[train,], nvmax=19 )
val.errors <- rep(as.numeric(NA), 19)
for(i in 1:19){
#pred <- predict.regsubsets(regfit.best, newdata=d[test,], id=i)
pred <- predict(regfit.best, newdata=d[test,], id=i)
val.errors[i] <- mean( (d[test, 'Salary'] - pred)^2 )
}
print(val.errors)
## [1] 186716.3 162285.2 151838.6 153123.6 149526.5 144196.0 145793.0 151964.3 156090.9 158975.0 161495.8 161019.2 157633.1 157508.2 162951.4 163352.4 166805.0 166986.7 168593.3
## [1] 6
用测试集得到的最优子集大小为6。 模型子集和回归系数为:
## (Intercept) Walks CAtBat CHits CHmRun DivisionW PutOuts
## 181.7041436 4.2540935 -0.5253895 2.0543314 2.4596055 -131.1657146 0.1751321
需要注意的是, 因为划分训练集和测试集是随机划分的, 所以模型选择的结果可能受到随机划分的影响。 为此, 可以进行多次随机划分, 然后取模型最优选择出现最多的一个。
15.2.4.4 用10折交叉验证方法选择最优子集
下列程序对数据中每一行分配一个折号:
下面,对10折中每一折都分别当作测试集一次, 得到不同子集大小的均方误差:
cv.errors <- matrix( as.numeric(NA), k, 19,
dimnames=list(NULL, paste(1:19)) )
for(j in 1:k){
best.fit <- regsubsets(Salary ~ ., data=d[folds != j,], nvmax=19)
for(i in 1:19){
pred <- predict( best.fit, d[folds==j,], id=i)
cv.errors[j, i] <- mean( (d[folds==j, 'Salary'] - pred)^2 )
}
}
head(cv.errors)
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
## [1,] 98623.24 115600.61 120884.31 113831.63 120728.51 122922.93 155507.25 137753.36 149198.01 153332.89 155702.91 155842.88 158755.87 156037.17 157739.46 155548.96 156688.01 156860.92 156976.98
## [2,] 155320.11 100425.87 168838.35 159729.47 145895.71 123555.25 119983.35 96609.16 99057.32 80375.78 91290.74 92292.69 100498.84 101562.45 104621.38 100922.27 102198.69 105318.26 106064.89
## [3,] 124151.77 68833.50 69392.29 77221.37 83802.82 70125.41 68997.77 64143.70 65813.14 65120.27 68160.94 70263.77 69765.81 68987.54 69471.32 69294.21 69199.91 68866.84 69195.74
## [4,] 232191.41 279001.29 294568.10 288765.81 276972.83 260121.22 276413.09 259923.88 270151.18 263492.31 259154.53 269017.80 265468.90 269666.65 265518.87 267240.44 267771.74 267670.66 267717.80
## [5,] 115397.35 96807.44 108421.66 104933.55 99561.69 86103.05 89345.61 87693.15 91631.88 88763.37 89801.07 91070.44 92429.43 92821.15 95849.81 96513.70 95209.20 94952.21 94951.70
## [6,] 103839.30 75652.50 69962.31 58291.91 65893.45 64215.56 65800.88 61413.45 60200.70 59599.54 59831.90 60081.48 59662.51 60618.91 62540.03 62776.81 62717.77 62354.97 62268.97
cv.errors
是一个\(10\times 19\)矩阵,
每行对应一折作为测试集的情形,
每列是一个子集大小,
元素值是测试均方误差。
对每列的10个元素求平均, 可以得到每个子集大小的平均均方误差:
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
## 149821.1 130922.0 139127.0 131028.8 131050.2 119538.6 124286.1 113580.0 115556.5 112216.7 113251.2 115755.9 117820.8 119481.2 120121.6 120074.3 120084.8 120085.8 120403.5
这样找到的最优子集大小是10。
用这种方法找到最优子集大小后,
可以对全数据集重新建模但是选择最优子集大小为10:
## (Intercept) AtBat Hits Walks CAtBat CRuns CRBI CWalks DivisionW PutOuts Assists
## 162.5354420 -2.1686501 6.9180175 5.7732246 -0.1300798 1.4082490 0.7743122 -0.8308264 -112.3800575 0.2973726 0.2831680
交叉验证的分组是随机划分的, 所以从交叉验证得到的误差估计受到随机划分的影响。 为此, 可以进行多次交叉验证, 每次使用不同的随机分组, 将不同次的误差进行平均。
划分训练集和验证集与交叉验证方法经常联合运用。 取一个固定的较小规模的测试集, 此测试集不用来作子集选择, 对训练集用交叉验证方法选择最优子集, 然后在测试集上验证。
15.3 惩罚最小二乘
15.3.1 岭回归(Ridge regression)介绍
当自变量个数太多时,模型复杂度高, 可能有过度拟合, 模型不稳定。
一种方法是对较大的模型系数施加二次惩罚, 把最小二乘问题变成带有二次惩罚项的惩罚最小二乘问题: \[\begin{aligned} \min\; \sum_{i=1}^n \left( y_i - \beta_0 - \beta_1 x_{i1} - \dots - \beta_p x_{ip} \right)^2 + \lambda \sum_{j=1}^p \beta_j^2 . \end{aligned}\] 这比通常最小二乘得到的回归系数绝对值变小, 但是求解的稳定性增加了,避免了共线问题。
实际上, 与线性模型\(\boldsymbol Y = \boldsymbol X \boldsymbol\beta + \boldsymbol\varepsilon\) 的普通最小二乘解 \(\hat{\boldsymbol\beta} = (\boldsymbol X^T \boldsymbol X)^{-1} \boldsymbol X^T \boldsymbol Y\) 相比, 岭回归问题的解为 \[ \tilde{\boldsymbol\beta} = (\boldsymbol X^T \boldsymbol X + s \boldsymbol I)^{-1} \boldsymbol X^T \boldsymbol Y \] 其中\(\boldsymbol I\)为单位阵,\(s>0\)与\(\lambda\)有关。
\(\lambda\)称为调节参数,\(\lambda\)越大,相当于模型复杂度越低。 适当选择\(\lambda\)可以在方差与偏差之间找到适当的折衷, 从而减小预测误差。
由于量纲问题,在不同自变量不可比时,数据集应该进行标准化。
用R的glmnet包计算岭回归。
用glmnet()
函数,
指定参数alpha=0
时执行的是岭回归。
用参数lambda=
指定一个调节参数网格,
岭回归将在这些调节参数上计算。
用coef()
从回归结果中取得不同调节参数对应的回归系数估计,
结果是一个矩阵,每列对应于一个调节参数。
为了选择调节参数并评估模型预测结果,
通常会:
- 把所有数据划分为训练集与测试集;
- 在训练集上执行五折或十折交叉验证, 从交叉验证的平均均方误差选择最优调节参数;
- 在测试集上计算预测平均误差;
- 最后,在全集是使用最优调节参数建模, 但是预测效果仍使用上面测试集得到的结果。
15.3.2 岭回归Hitters例子
仍采用上面去掉了缺失值的Hitters数据集结果d。 需要使用glmnet包。
如下程序把回归的设计阵与因变量提取出来:
岭回归涉及到调节参数\(\lambda\)的选择, 为了绘图, 先选择\(\lambda\)的一个网格:
用所有数据针对这样的调节参数网格计算岭回归结果,
注意glmnet()
函数允许调节参数\(\lambda\)输入多个值:
## [1] 20 100
glmnet()
函数默认对数据进行标准化。
coef()
的结果是一个矩阵,每列对应一个调节参数值。
15.3.2.1 划分训练集与测试集
如下程序把数据分为一半训练、一半测试:
set.seed(1)
train_id <- sample(nrow(x), size=round(0.5*nrow(x)))
train <- rep(FALSE, nrow(x))
train[train_id] <- TRUE
test <- (!train)
y.test <- y[test]
仅用训练集建立岭回归:
用建立的模型对测试集进行预测,并计算调节参数等于4时的均方误差:
## [1] 142199.2
如果用因变量平均值作预测, 这是最差的预测:
## [1] 224669.9
\(\lambda=4\)的结果要好得多。
事实上,取\(\lambda\)接近正无穷时模型就相当于用因变量平均值预测。
取\(\lambda=0\)就相当于普通最小二乘回归(但是glmnet()
是对输入数据要做标准化的)。
15.3.2.2 用交叉验证选取调节参数
仍使用训练集,
但训练集再进行交叉验证。
cv.glmnet()
函数可以执行交叉验证。
这样获得了最优调节参数\(\lambda=\) 326.0827865。 用最优调节参数对测试集作预测, 得到预测均方误差:
## [1] 139867
结果比\(\lambda=4\)略有改进。
要注意的是, 在测试集上得到的误差评估结果, 会受到训练集与测试集随机划分的影响。 为了得到更可靠的泛化误差估计, 可以多次进行训练集与测试集划分, 将所有的误差评估指标进行平均。
在测试集上获得误差评估指标后, 用在训练集选取的最优调节系数对全数据集建模, 得到相应的岭回归系数估计:
## (Intercept) AtBat Hits HmRun Runs RBI Walks Years CAtBat CHits CHmRun CRuns CRBI CWalks LeagueN DivisionW PutOuts Assists Errors NewLeagueN
## 15.44383120 0.07715547 0.85911582 0.60103106 1.06369007 0.87936105 1.62444617 1.35254778 0.01134999 0.05746654 0.40680157 0.11456224 0.12116504 0.05299202 22.09143197 -79.04032656 0.16619903 0.02941950 -1.36092945 9.12487765
15.3.3 lasso回归
另一种对回归系数的惩罚是\(L_1\)惩罚: \[\begin{align} \min\; \sum_{i=1}^n \left( y_i - \beta_0 - \beta_1 x_{i1} - \dots - \beta_p x_{ip} \right)^2 + \lambda \sum_{j=1}^p |\beta_j| . \tag{15.1} \end{align}\] 奇妙地是,适当选择调节参数\(\lambda\),可以使得部分回归系数变成零, 达到了即减小回归系数的绝对值又挑选重要变量子集的效果。
事实上,(15.1)等价于约束最小值问题 \[\begin{aligned} & \min\; \sum_{i=1}^n \left( y_i - \beta_0 - \beta_1 x_{i1} - \dots - \beta_p x_{ip} \right)^2 \quad \text{s.t.} \\ & \sum_{j=1}^p |\beta_j| \leq s \end{aligned}\] 其中\(s\)与\(\lambda\)一一对应。 这样的约束区域是带有顶点的凸集, 而目标函数是二次函数, 最小值点经常在约束区域顶点达到, 这些顶点是某些坐标等于零的点。 见图15.1。

图15.1: Lasso约束优化问题图示
对于每个调节参数\(\lambda\), 都应该解出(15.1)的相应解, 记为\(\hat{\boldsymbol\beta}(\lambda)\)。 幸运的是, 不需要对每个\(\lambda\)去解最小值问题(15.1), 存在巧妙的算法使得问题的计算量与求解一次最小二乘相仿。
通常选取\(\lambda\)的格子点,计算相应的惩罚回归系数。 用交叉验证方法估计预测的均方误差。 选取使得交叉验证均方误差最小的调节参数(一般R函数中已经作为选项)。
用R的glmnet包计算lasso。
用glmnet()
函数,
指定参数alpha=1
时执行的是lasso。
用参数lambda=
指定一个调节参数网格,
lasso将输出这些调节参数对应的结果。
对回归结果使用plot()
函数可以画出调节参数变化时系数估计的变化情况。
为了选择调节参数并评估模型预测结果, 通常会:
- 把所有数据划分为训练集与测试集;
- 在训练集上执行五折或十折交叉验证, 从交叉验证的平均均方误差选择最优调节参数;
- 在测试集上计算预测平均误差;
- 最后,在全集是使用最优调节参数建模, 但是预测效果仍使用上面测试集得到的结果。
15.3.4 Lasso回归Hitters例子
仍使用gmlnet包的glmnet()
函数计算Lasso回归,
指定一个调节参数网格(沿用前面的网格):
d <- na.omit(Hitters)
set.seed(1)
set.seed(1)
train_id <- sample(nrow(x), size=round(0.5*nrow(x)))
train <- rep(FALSE, nrow(x))
train[train_id] <- TRUE
test <- (!train)
y.test <- y[test]
lasso.mod <- glmnet(x[train,], y[train], alpha=1, lambda=grid)
plot(lasso.mod)
## Warning in regularize.values(x, y, ties, missing(ties), na.rm = na.rm): collapsing to unique 'x' values
对lasso结果使用plot()
函数可以绘制延调节参数网格变化的各回归系数估计,横坐标不是调节参数而是调节参数对应的系数绝对值和,
可以看出随着系数绝对值和增大,实际是调节参数变小,
更多地自变量进入模型。
15.3.4.1 用交叉验证估计调节参数
按照前面划分的训练集与测试集, 仅使用训练集数据做交叉验证估计最优调节参数:
## [1] 8.461927
得到调节参数估计后,对测试集计算预测均方误差:
## [1] 143816.9
这个效果比岭回归效果略差。
为了充分利用数据, 使用前面获得的最优调节参数, 对全数据集建模:
out <- glmnet(x, y, alpha=1, lambda=grid)
lasso.coef <- predict(out, type='coefficients', s=bestlam)[1:20,]; lasso.coef
## (Intercept) AtBat Hits HmRun Runs RBI Walks Years CAtBat CHits CHmRun CRuns CRBI CWalks LeagueN DivisionW PutOuts Assists Errors NewLeagueN
## 1.52097206 -0.08656051 2.29115235 0.00000000 0.00000000 0.00000000 2.30681387 -0.53232640 0.00000000 0.00000000 0.04099882 0.22016773 0.41454813 0.00000000 22.41349696 -117.32653157 0.23956158 0.00000000 -0.98131662 0.00000000
## (Intercept) AtBat Hits Walks Years CHmRun CRuns CRBI LeagueN DivisionW PutOuts Errors
## 1.52097206 -0.08656051 2.29115235 2.30681387 -0.53232640 0.04099882 0.22016773 0.41454813 22.41349696 -117.32653157 0.23956158 -0.98131662
选择的自变量子集有11个自变量。
15.4 附录
15.4.1 Hitters数据
AtBat | Hits | HmRun | Runs | RBI | Walks | Years | CAtBat | CHits | CHmRun | CRuns | CRBI | CWalks | League | Division | PutOuts | Assists | Errors | Salary | NewLeague | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-Andy Allanson | 293 | 66 | 1 | 30 | 29 | 14 | 1 | 293 | 66 | 1 | 30 | 29 | 14 | A | E | 446 | 33 | 20 | NA | A |
-Alan Ashby | 315 | 81 | 7 | 24 | 38 | 39 | 14 | 3449 | 835 | 69 | 321 | 414 | 375 | N | W | 632 | 43 | 10 | 475.000 | N |
-Alvin Davis | 479 | 130 | 18 | 66 | 72 | 76 | 3 | 1624 | 457 | 63 | 224 | 266 | 263 | A | W | 880 | 82 | 14 | 480.000 | A |
-Andre Dawson | 496 | 141 | 20 | 65 | 78 | 37 | 11 | 5628 | 1575 | 225 | 828 | 838 | 354 | N | E | 200 | 11 | 3 | 500.000 | N |
-Andres Galarraga | 321 | 87 | 10 | 39 | 42 | 30 | 2 | 396 | 101 | 12 | 48 | 46 | 33 | N | E | 805 | 40 | 4 | 91.500 | N |
-Alfredo Griffin | 594 | 169 | 4 | 74 | 51 | 35 | 11 | 4408 | 1133 | 19 | 501 | 336 | 194 | A | W | 282 | 421 | 25 | 750.000 | A |
-Al Newman | 185 | 37 | 1 | 23 | 8 | 21 | 2 | 214 | 42 | 1 | 30 | 9 | 24 | N | E | 76 | 127 | 7 | 70.000 | A |
-Argenis Salazar | 298 | 73 | 0 | 24 | 24 | 7 | 3 | 509 | 108 | 0 | 41 | 37 | 12 | A | W | 121 | 283 | 9 | 100.000 | A |
-Andres Thomas | 323 | 81 | 6 | 26 | 32 | 8 | 2 | 341 | 86 | 6 | 32 | 34 | 8 | N | W | 143 | 290 | 19 | 75.000 | N |
-Andre Thornton | 401 | 92 | 17 | 49 | 66 | 65 | 13 | 5206 | 1332 | 253 | 784 | 890 | 866 | A | E | 0 | 0 | 0 | 1100.000 | A |
-Alan Trammell | 574 | 159 | 21 | 107 | 75 | 59 | 10 | 4631 | 1300 | 90 | 702 | 504 | 488 | A | E | 238 | 445 | 22 | 517.143 | A |
-Alex Trevino | 202 | 53 | 4 | 31 | 26 | 27 | 9 | 1876 | 467 | 15 | 192 | 186 | 161 | N | W | 304 | 45 | 11 | 512.500 | N |
-Andy VanSlyke | 418 | 113 | 13 | 48 | 61 | 47 | 4 | 1512 | 392 | 41 | 205 | 204 | 203 | N | E | 211 | 11 | 7 | 550.000 | N |
-Alan Wiggins | 239 | 60 | 0 | 30 | 11 | 22 | 6 | 1941 | 510 | 4 | 309 | 103 | 207 | A | E | 121 | 151 | 6 | 700.000 | A |
-Bill Almon | 196 | 43 | 7 | 29 | 27 | 30 | 13 | 3231 | 825 | 36 | 376 | 290 | 238 | N | E | 80 | 45 | 8 | 240.000 | N |
-Billy Beane | 183 | 39 | 3 | 20 | 15 | 11 | 3 | 201 | 42 | 3 | 20 | 16 | 11 | A | W | 118 | 0 | 0 | NA | A |
-Buddy Bell | 568 | 158 | 20 | 89 | 75 | 73 | 15 | 8068 | 2273 | 177 | 1045 | 993 | 732 | N | W | 105 | 290 | 10 | 775.000 | N |
-Buddy Biancalana | 190 | 46 | 2 | 24 | 8 | 15 | 5 | 479 | 102 | 5 | 65 | 23 | 39 | A | W | 102 | 177 | 16 | 175.000 | A |
-Bruce Bochte | 407 | 104 | 6 | 57 | 43 | 65 | 12 | 5233 | 1478 | 100 | 643 | 658 | 653 | A | W | 912 | 88 | 9 | NA | A |
-Bruce Bochy | 127 | 32 | 8 | 16 | 22 | 14 | 8 | 727 | 180 | 24 | 67 | 82 | 56 | N | W | 202 | 22 | 2 | 135.000 | N |
-Barry Bonds | 413 | 92 | 16 | 72 | 48 | 65 | 1 | 413 | 92 | 16 | 72 | 48 | 65 | N | E | 280 | 9 | 5 | 100.000 | N |
-Bobby Bonilla | 426 | 109 | 3 | 55 | 43 | 62 | 1 | 426 | 109 | 3 | 55 | 43 | 62 | A | W | 361 | 22 | 2 | 115.000 | N |
-Bob Boone | 22 | 10 | 1 | 4 | 2 | 1 | 6 | 84 | 26 | 2 | 9 | 9 | 3 | A | W | 812 | 84 | 11 | NA | A |
-Bob Brenly | 472 | 116 | 16 | 60 | 62 | 74 | 6 | 1924 | 489 | 67 | 242 | 251 | 240 | N | W | 518 | 55 | 3 | 600.000 | N |
-Bill Buckner | 629 | 168 | 18 | 73 | 102 | 40 | 18 | 8424 | 2464 | 164 | 1008 | 1072 | 402 | A | E | 1067 | 157 | 14 | 776.667 | A |
-Brett Butler | 587 | 163 | 4 | 92 | 51 | 70 | 6 | 2695 | 747 | 17 | 442 | 198 | 317 | A | E | 434 | 9 | 3 | 765.000 | A |
-Bob Dernier | 324 | 73 | 4 | 32 | 18 | 22 | 7 | 1931 | 491 | 13 | 291 | 108 | 180 | N | E | 222 | 3 | 3 | 708.333 | N |
-Bo Diaz | 474 | 129 | 10 | 50 | 56 | 40 | 10 | 2331 | 604 | 61 | 246 | 327 | 166 | N | W | 732 | 83 | 13 | 750.000 | N |
-Bill Doran | 550 | 152 | 6 | 92 | 37 | 81 | 5 | 2308 | 633 | 32 | 349 | 182 | 308 | N | W | 262 | 329 | 16 | 625.000 | N |
-Brian Downing | 513 | 137 | 20 | 90 | 95 | 90 | 14 | 5201 | 1382 | 166 | 763 | 734 | 784 | A | W | 267 | 5 | 3 | 900.000 | A |
-Bobby Grich | 313 | 84 | 9 | 42 | 30 | 39 | 17 | 6890 | 1833 | 224 | 1033 | 864 | 1087 | A | W | 127 | 221 | 7 | NA | A |
-Billy Hatcher | 419 | 108 | 6 | 55 | 36 | 22 | 3 | 591 | 149 | 8 | 80 | 46 | 31 | N | W | 226 | 7 | 4 | 110.000 | N |
-Bob Horner | 517 | 141 | 27 | 70 | 87 | 52 | 9 | 3571 | 994 | 215 | 545 | 652 | 337 | N | W | 1378 | 102 | 8 | NA | N |
-Brook Jacoby | 583 | 168 | 17 | 83 | 80 | 56 | 5 | 1646 | 452 | 44 | 219 | 208 | 136 | A | E | 109 | 292 | 25 | 612.500 | A |
-Bob Kearney | 204 | 49 | 6 | 23 | 25 | 12 | 7 | 1309 | 308 | 27 | 126 | 132 | 66 | A | W | 419 | 46 | 5 | 300.000 | A |
-Bill Madlock | 379 | 106 | 10 | 38 | 60 | 30 | 14 | 6207 | 1906 | 146 | 859 | 803 | 571 | N | W | 72 | 170 | 24 | 850.000 | N |
-Bobby Meacham | 161 | 36 | 0 | 19 | 10 | 17 | 4 | 1053 | 244 | 3 | 156 | 86 | 107 | A | E | 70 | 149 | 12 | NA | A |
-Bob Melvin | 268 | 60 | 5 | 24 | 25 | 15 | 2 | 350 | 78 | 5 | 34 | 29 | 18 | N | W | 442 | 59 | 6 | 90.000 | N |
-Ben Oglivie | 346 | 98 | 5 | 31 | 53 | 30 | 16 | 5913 | 1615 | 235 | 784 | 901 | 560 | A | E | 0 | 0 | 0 | NA | A |
-Bip Roberts | 241 | 61 | 1 | 34 | 12 | 14 | 1 | 241 | 61 | 1 | 34 | 12 | 14 | N | W | 166 | 172 | 10 | NA | N |
-BillyJo Robidoux | 181 | 41 | 1 | 15 | 21 | 33 | 2 | 232 | 50 | 4 | 20 | 29 | 45 | A | E | 326 | 29 | 5 | 67.500 | A |
-Bill Russell | 216 | 54 | 0 | 21 | 18 | 15 | 18 | 7318 | 1926 | 46 | 796 | 627 | 483 | N | W | 103 | 84 | 5 | NA | N |
-Billy Sample | 200 | 57 | 6 | 23 | 14 | 14 | 9 | 2516 | 684 | 46 | 371 | 230 | 195 | N | W | 69 | 1 | 1 | NA | N |
-Bill Schroeder | 217 | 46 | 7 | 32 | 19 | 9 | 4 | 694 | 160 | 32 | 86 | 76 | 32 | A | E | 307 | 25 | 1 | 180.000 | A |
-Butch Wynegar | 194 | 40 | 7 | 19 | 29 | 30 | 11 | 4183 | 1069 | 64 | 486 | 493 | 608 | A | E | 325 | 22 | 2 | NA | A |
-Chris Bando | 254 | 68 | 2 | 28 | 26 | 22 | 6 | 999 | 236 | 21 | 108 | 117 | 118 | A | E | 359 | 30 | 4 | 305.000 | A |
-Chris Brown | 416 | 132 | 7 | 57 | 49 | 33 | 3 | 932 | 273 | 24 | 113 | 121 | 80 | N | W | 73 | 177 | 18 | 215.000 | N |
-Carmen Castillo | 205 | 57 | 8 | 34 | 32 | 9 | 5 | 756 | 192 | 32 | 117 | 107 | 51 | A | E | 58 | 4 | 4 | 247.500 | A |
-Cecil Cooper | 542 | 140 | 12 | 46 | 75 | 41 | 16 | 7099 | 2130 | 235 | 987 | 1089 | 431 | A | E | 697 | 61 | 9 | NA | A |
-Chili Davis | 526 | 146 | 13 | 71 | 70 | 84 | 6 | 2648 | 715 | 77 | 352 | 342 | 289 | N | W | 303 | 9 | 9 | 815.000 | N |
-Carlton Fisk | 457 | 101 | 14 | 42 | 63 | 22 | 17 | 6521 | 1767 | 281 | 1003 | 977 | 619 | A | W | 389 | 39 | 4 | 875.000 | A |
-Curt Ford | 214 | 53 | 2 | 30 | 29 | 23 | 2 | 226 | 59 | 2 | 32 | 32 | 27 | N | E | 109 | 7 | 3 | 70.000 | N |
-Cliff Johnson | 19 | 7 | 0 | 1 | 2 | 1 | 4 | 41 | 13 | 1 | 3 | 4 | 4 | A | E | 0 | 0 | 0 | NA | A |
-Carney Lansford | 591 | 168 | 19 | 80 | 72 | 39 | 9 | 4478 | 1307 | 113 | 634 | 563 | 319 | A | W | 67 | 147 | 4 | 1200.000 | A |
-Chet Lemon | 403 | 101 | 12 | 45 | 53 | 39 | 12 | 5150 | 1429 | 166 | 747 | 666 | 526 | A | E | 316 | 6 | 5 | 675.000 | A |
-Candy Maldonado | 405 | 102 | 18 | 49 | 85 | 20 | 6 | 950 | 231 | 29 | 99 | 138 | 64 | N | W | 161 | 10 | 3 | 415.000 | N |
-Carmelo Martinez | 244 | 58 | 9 | 28 | 25 | 35 | 4 | 1335 | 333 | 49 | 164 | 179 | 194 | N | W | 142 | 14 | 2 | 340.000 | N |
-Charlie Moore | 235 | 61 | 3 | 24 | 39 | 21 | 14 | 3926 | 1029 | 35 | 441 | 401 | 333 | A | E | 425 | 43 | 4 | NA | A |
-Craig Reynolds | 313 | 78 | 6 | 32 | 41 | 12 | 12 | 3742 | 968 | 35 | 409 | 321 | 170 | N | W | 106 | 206 | 7 | 416.667 | N |
-Cal Ripken | 627 | 177 | 25 | 98 | 81 | 70 | 6 | 3210 | 927 | 133 | 529 | 472 | 313 | A | E | 240 | 482 | 13 | 1350.000 | A |
-Cory Snyder | 416 | 113 | 24 | 58 | 69 | 16 | 1 | 416 | 113 | 24 | 58 | 69 | 16 | A | E | 203 | 70 | 10 | 90.000 | A |
-Chris Speier | 155 | 44 | 6 | 21 | 23 | 15 | 16 | 6631 | 1634 | 98 | 698 | 661 | 777 | N | E | 53 | 88 | 3 | 275.000 | N |
-Curt Wilkerson | 236 | 56 | 0 | 27 | 15 | 11 | 4 | 1115 | 270 | 1 | 116 | 64 | 57 | A | W | 125 | 199 | 13 | 230.000 | A |
-Dave Anderson | 216 | 53 | 1 | 31 | 15 | 22 | 4 | 926 | 210 | 9 | 118 | 69 | 114 | N | W | 73 | 152 | 11 | 225.000 | N |
-Doug Baker | 24 | 3 | 0 | 1 | 0 | 2 | 3 | 159 | 28 | 0 | 20 | 12 | 9 | A | W | 80 | 4 | 0 | NA | A |
-Don Baylor | 585 | 139 | 31 | 93 | 94 | 62 | 17 | 7546 | 1982 | 315 | 1141 | 1179 | 727 | A | E | 0 | 0 | 0 | 950.000 | A |
-Dann Bilardello | 191 | 37 | 4 | 12 | 17 | 14 | 4 | 773 | 163 | 16 | 61 | 74 | 52 | N | E | 391 | 38 | 8 | NA | N |
-Daryl Boston | 199 | 53 | 5 | 29 | 22 | 21 | 3 | 514 | 120 | 8 | 57 | 40 | 39 | A | W | 152 | 3 | 5 | 75.000 | A |
-Darnell Coles | 521 | 142 | 20 | 67 | 86 | 45 | 4 | 815 | 205 | 22 | 99 | 103 | 78 | A | E | 107 | 242 | 23 | 105.000 | A |
-Dave Collins | 419 | 113 | 1 | 44 | 27 | 44 | 12 | 4484 | 1231 | 32 | 612 | 344 | 422 | A | E | 211 | 2 | 1 | NA | A |
-Dave Concepcion | 311 | 81 | 3 | 42 | 30 | 26 | 17 | 8247 | 2198 | 100 | 950 | 909 | 690 | N | W | 153 | 223 | 10 | 320.000 | N |
-Darren Daulton | 138 | 31 | 8 | 18 | 21 | 38 | 3 | 244 | 53 | 12 | 33 | 32 | 55 | N | E | 244 | 21 | 4 | NA | N |
-Doug DeCinces | 512 | 131 | 26 | 69 | 96 | 52 | 14 | 5347 | 1397 | 221 | 712 | 815 | 548 | A | W | 119 | 216 | 12 | 850.000 | A |
-Darrell Evans | 507 | 122 | 29 | 78 | 85 | 91 | 18 | 7761 | 1947 | 347 | 1175 | 1152 | 1380 | A | E | 808 | 108 | 2 | 535.000 | A |
-Dwight Evans | 529 | 137 | 26 | 86 | 97 | 97 | 15 | 6661 | 1785 | 291 | 1082 | 949 | 989 | A | E | 280 | 10 | 5 | 933.333 | A |
-Damaso Garcia | 424 | 119 | 6 | 57 | 46 | 13 | 9 | 3651 | 1046 | 32 | 461 | 301 | 112 | A | E | 224 | 286 | 8 | 850.000 | N |
-Dan Gladden | 351 | 97 | 4 | 55 | 29 | 39 | 4 | 1258 | 353 | 16 | 196 | 110 | 117 | N | W | 226 | 7 | 3 | 210.000 | A |
-Danny Heep | 195 | 55 | 5 | 24 | 33 | 30 | 8 | 1313 | 338 | 25 | 144 | 149 | 153 | N | E | 83 | 2 | 1 | NA | N |
-Dave Henderson | 388 | 103 | 15 | 59 | 47 | 39 | 6 | 2174 | 555 | 80 | 285 | 274 | 186 | A | W | 182 | 9 | 4 | 325.000 | A |
-Donnie Hill | 339 | 96 | 4 | 37 | 29 | 23 | 4 | 1064 | 290 | 11 | 123 | 108 | 55 | A | W | 104 | 213 | 9 | 275.000 | A |
-Dave Kingman | 561 | 118 | 35 | 70 | 94 | 33 | 16 | 6677 | 1575 | 442 | 901 | 1210 | 608 | A | W | 463 | 32 | 8 | NA | A |
-Davey Lopes | 255 | 70 | 7 | 49 | 35 | 43 | 15 | 6311 | 1661 | 154 | 1019 | 608 | 820 | N | E | 51 | 54 | 8 | 450.000 | N |
-Don Mattingly | 677 | 238 | 31 | 117 | 113 | 53 | 5 | 2223 | 737 | 93 | 349 | 401 | 171 | A | E | 1377 | 100 | 6 | 1975.000 | A |
-Darryl Motley | 227 | 46 | 7 | 23 | 20 | 12 | 5 | 1325 | 324 | 44 | 156 | 158 | 67 | A | W | 92 | 2 | 2 | NA | A |
-Dale Murphy | 614 | 163 | 29 | 89 | 83 | 75 | 11 | 5017 | 1388 | 266 | 813 | 822 | 617 | N | W | 303 | 6 | 6 | 1900.000 | N |
-Dwayne Murphy | 329 | 83 | 9 | 50 | 39 | 56 | 9 | 3828 | 948 | 145 | 575 | 528 | 635 | A | W | 276 | 6 | 2 | 600.000 | A |
-Dave Parker | 637 | 174 | 31 | 89 | 116 | 56 | 14 | 6727 | 2024 | 247 | 978 | 1093 | 495 | N | W | 278 | 9 | 9 | 1041.667 | N |
-Dan Pasqua | 280 | 82 | 16 | 44 | 45 | 47 | 2 | 428 | 113 | 25 | 61 | 70 | 63 | A | E | 148 | 4 | 2 | 110.000 | A |
-Darrell Porter | 155 | 41 | 12 | 21 | 29 | 22 | 16 | 5409 | 1338 | 181 | 746 | 805 | 875 | A | W | 165 | 9 | 1 | 260.000 | A |
-Dick Schofield | 458 | 114 | 13 | 67 | 57 | 48 | 4 | 1350 | 298 | 28 | 160 | 123 | 122 | A | W | 246 | 389 | 18 | 475.000 | A |
-Don Slaught | 314 | 83 | 13 | 39 | 46 | 16 | 5 | 1457 | 405 | 28 | 156 | 159 | 76 | A | W | 533 | 40 | 4 | 431.500 | A |
-Darryl Strawberry | 475 | 123 | 27 | 76 | 93 | 72 | 4 | 1810 | 471 | 108 | 292 | 343 | 267 | N | E | 226 | 10 | 6 | 1220.000 | N |
-Dale Sveum | 317 | 78 | 7 | 35 | 35 | 32 | 1 | 317 | 78 | 7 | 35 | 35 | 32 | A | E | 45 | 122 | 26 | 70.000 | A |
-Danny Tartabull | 511 | 138 | 25 | 76 | 96 | 61 | 3 | 592 | 164 | 28 | 87 | 110 | 71 | A | W | 157 | 7 | 8 | 145.000 | A |
-Dickie Thon | 278 | 69 | 3 | 24 | 21 | 29 | 8 | 2079 | 565 | 32 | 258 | 192 | 162 | N | W | 142 | 210 | 10 | NA | N |
-Denny Walling | 382 | 119 | 13 | 54 | 58 | 36 | 12 | 2133 | 594 | 41 | 287 | 294 | 227 | N | W | 59 | 156 | 9 | 595.000 | N |
-Dave Winfield | 565 | 148 | 24 | 90 | 104 | 77 | 14 | 7287 | 2083 | 305 | 1135 | 1234 | 791 | A | E | 292 | 9 | 5 | 1861.460 | A |
-Enos Cabell | 277 | 71 | 2 | 27 | 29 | 14 | 15 | 5952 | 1647 | 60 | 753 | 596 | 259 | N | W | 360 | 32 | 5 | NA | N |
-Eric Davis | 415 | 115 | 27 | 97 | 71 | 68 | 3 | 711 | 184 | 45 | 156 | 119 | 99 | N | W | 274 | 2 | 7 | 300.000 | N |
-Eddie Milner | 424 | 110 | 15 | 70 | 47 | 36 | 7 | 2130 | 544 | 38 | 335 | 174 | 258 | N | W | 292 | 6 | 3 | 490.000 | N |
-Eddie Murray | 495 | 151 | 17 | 61 | 84 | 78 | 10 | 5624 | 1679 | 275 | 884 | 1015 | 709 | A | E | 1045 | 88 | 13 | 2460.000 | A |
-Ernest Riles | 524 | 132 | 9 | 69 | 47 | 54 | 2 | 972 | 260 | 14 | 123 | 92 | 90 | A | E | 212 | 327 | 20 | NA | A |
-Ed Romero | 233 | 49 | 2 | 41 | 23 | 18 | 8 | 1350 | 336 | 7 | 166 | 122 | 106 | A | E | 102 | 132 | 10 | 375.000 | A |
-Ernie Whitt | 395 | 106 | 16 | 48 | 56 | 35 | 10 | 2303 | 571 | 86 | 266 | 323 | 248 | A | E | 709 | 41 | 7 | NA | A |
-Fred Lynn | 397 | 114 | 23 | 67 | 67 | 53 | 13 | 5589 | 1632 | 241 | 906 | 926 | 716 | A | E | 244 | 2 | 4 | NA | A |
-Floyd Rayford | 210 | 37 | 8 | 15 | 19 | 15 | 6 | 994 | 244 | 36 | 107 | 114 | 53 | A | E | 40 | 115 | 15 | NA | A |
-Franklin Stubbs | 420 | 95 | 23 | 55 | 58 | 37 | 3 | 646 | 139 | 31 | 77 | 77 | 61 | N | W | 206 | 10 | 7 | NA | N |
-Frank White | 566 | 154 | 22 | 76 | 84 | 43 | 14 | 6100 | 1583 | 131 | 743 | 693 | 300 | A | W | 316 | 439 | 10 | 750.000 | A |
-George Bell | 641 | 198 | 31 | 101 | 108 | 41 | 5 | 2129 | 610 | 92 | 297 | 319 | 117 | A | E | 269 | 17 | 10 | 1175.000 | A |
-Glenn Braggs | 215 | 51 | 4 | 19 | 18 | 11 | 1 | 215 | 51 | 4 | 19 | 18 | 11 | A | E | 116 | 5 | 12 | 70.000 | A |
-George Brett | 441 | 128 | 16 | 70 | 73 | 80 | 14 | 6675 | 2095 | 209 | 1072 | 1050 | 695 | A | W | 97 | 218 | 16 | 1500.000 | A |
-Greg Brock | 325 | 76 | 16 | 33 | 52 | 37 | 5 | 1506 | 351 | 71 | 195 | 219 | 214 | N | W | 726 | 87 | 3 | 385.000 | A |
-Gary Carter | 490 | 125 | 24 | 81 | 105 | 62 | 13 | 6063 | 1646 | 271 | 847 | 999 | 680 | N | E | 869 | 62 | 8 | 1925.571 | N |
-Glenn Davis | 574 | 152 | 31 | 91 | 101 | 64 | 3 | 985 | 260 | 53 | 148 | 173 | 95 | N | W | 1253 | 111 | 11 | 215.000 | N |
-George Foster | 284 | 64 | 14 | 30 | 42 | 24 | 18 | 7023 | 1925 | 348 | 986 | 1239 | 666 | N | E | 96 | 4 | 4 | NA | N |
-Gary Gaetti | 596 | 171 | 34 | 91 | 108 | 52 | 6 | 2862 | 728 | 107 | 361 | 401 | 224 | A | W | 118 | 334 | 21 | 900.000 | A |
-Greg Gagne | 472 | 118 | 12 | 63 | 54 | 30 | 4 | 793 | 187 | 14 | 102 | 80 | 50 | A | W | 228 | 377 | 26 | 155.000 | A |
-George Hendrick | 283 | 77 | 14 | 45 | 47 | 26 | 16 | 6840 | 1910 | 259 | 915 | 1067 | 546 | A | W | 144 | 6 | 5 | 700.000 | A |
-Glenn Hubbard | 408 | 94 | 4 | 42 | 36 | 66 | 9 | 3573 | 866 | 59 | 429 | 365 | 410 | N | W | 282 | 487 | 19 | 535.000 | N |
-Garth Iorg | 327 | 85 | 3 | 30 | 44 | 20 | 8 | 2140 | 568 | 16 | 216 | 208 | 93 | A | E | 91 | 185 | 12 | 362.500 | A |
-Gary Matthews | 370 | 96 | 21 | 49 | 46 | 60 | 15 | 6986 | 1972 | 231 | 1070 | 955 | 921 | N | E | 137 | 5 | 9 | 733.333 | N |
-Graig Nettles | 354 | 77 | 16 | 36 | 55 | 41 | 20 | 8716 | 2172 | 384 | 1172 | 1267 | 1057 | N | W | 83 | 174 | 16 | 200.000 | N |
-Gary Pettis | 539 | 139 | 5 | 93 | 58 | 69 | 5 | 1469 | 369 | 12 | 247 | 126 | 198 | A | W | 462 | 9 | 7 | 400.000 | A |
-Gary Redus | 340 | 84 | 11 | 62 | 33 | 47 | 5 | 1516 | 376 | 42 | 284 | 141 | 219 | N | E | 185 | 8 | 4 | 400.000 | A |
-Garry Templeton | 510 | 126 | 2 | 42 | 44 | 35 | 11 | 5562 | 1578 | 44 | 703 | 519 | 256 | N | W | 207 | 358 | 20 | 737.500 | N |
-Gorman Thomas | 315 | 59 | 16 | 45 | 36 | 58 | 13 | 4677 | 1051 | 268 | 681 | 782 | 697 | A | W | 0 | 0 | 0 | NA | A |
-Greg Walker | 282 | 78 | 13 | 37 | 51 | 29 | 5 | 1649 | 453 | 73 | 211 | 280 | 138 | A | W | 670 | 57 | 5 | 500.000 | A |
-Gary Ward | 380 | 120 | 5 | 54 | 51 | 31 | 8 | 3118 | 900 | 92 | 444 | 419 | 240 | A | W | 237 | 8 | 1 | 600.000 | A |
-Glenn Wilson | 584 | 158 | 15 | 70 | 84 | 42 | 5 | 2358 | 636 | 58 | 265 | 316 | 134 | N | E | 331 | 20 | 4 | 662.500 | N |
-Harold Baines | 570 | 169 | 21 | 72 | 88 | 38 | 7 | 3754 | 1077 | 140 | 492 | 589 | 263 | A | W | 295 | 15 | 5 | 950.000 | A |
-Hubie Brooks | 306 | 104 | 14 | 50 | 58 | 25 | 7 | 2954 | 822 | 55 | 313 | 377 | 187 | N | E | 116 | 222 | 15 | 750.000 | N |
-Howard Johnson | 220 | 54 | 10 | 30 | 39 | 31 | 5 | 1185 | 299 | 40 | 145 | 154 | 128 | N | E | 50 | 136 | 20 | 297.500 | N |
-Hal McRae | 278 | 70 | 7 | 22 | 37 | 18 | 18 | 7186 | 2081 | 190 | 935 | 1088 | 643 | A | W | 0 | 0 | 0 | 325.000 | A |
-Harold Reynolds | 445 | 99 | 1 | 46 | 24 | 29 | 4 | 618 | 129 | 1 | 72 | 31 | 48 | A | W | 278 | 415 | 16 | 87.500 | A |
-Harry Spilman | 143 | 39 | 5 | 18 | 30 | 15 | 9 | 639 | 151 | 16 | 80 | 97 | 61 | N | W | 138 | 15 | 1 | 175.000 | N |
-Herm Winningham | 185 | 40 | 4 | 23 | 11 | 18 | 3 | 524 | 125 | 7 | 58 | 37 | 47 | N | E | 97 | 2 | 2 | 90.000 | N |
-Jesse Barfield | 589 | 170 | 40 | 107 | 108 | 69 | 6 | 2325 | 634 | 128 | 371 | 376 | 238 | A | E | 368 | 20 | 3 | 1237.500 | A |
-Juan Beniquez | 343 | 103 | 6 | 48 | 36 | 40 | 15 | 4338 | 1193 | 70 | 581 | 421 | 325 | A | E | 211 | 56 | 13 | 430.000 | A |
-Juan Bonilla | 284 | 69 | 1 | 33 | 18 | 25 | 5 | 1407 | 361 | 6 | 139 | 98 | 111 | A | E | 122 | 140 | 5 | NA | N |
-John Cangelosi | 438 | 103 | 2 | 65 | 32 | 71 | 2 | 440 | 103 | 2 | 67 | 32 | 71 | A | W | 276 | 7 | 9 | 100.000 | N |
-Jose Canseco | 600 | 144 | 33 | 85 | 117 | 65 | 2 | 696 | 173 | 38 | 101 | 130 | 69 | A | W | 319 | 4 | 14 | 165.000 | A |
-Joe Carter | 663 | 200 | 29 | 108 | 121 | 32 | 4 | 1447 | 404 | 57 | 210 | 222 | 68 | A | E | 241 | 8 | 6 | 250.000 | A |
-Jack Clark | 232 | 55 | 9 | 34 | 23 | 45 | 12 | 4405 | 1213 | 194 | 702 | 705 | 625 | N | E | 623 | 35 | 3 | 1300.000 | N |
-Jose Cruz | 479 | 133 | 10 | 48 | 72 | 55 | 17 | 7472 | 2147 | 153 | 980 | 1032 | 854 | N | W | 237 | 5 | 4 | 773.333 | N |
-Julio Cruz | 209 | 45 | 0 | 38 | 19 | 42 | 10 | 3859 | 916 | 23 | 557 | 279 | 478 | A | W | 132 | 205 | 5 | NA | A |
-Jody Davis | 528 | 132 | 21 | 61 | 74 | 41 | 6 | 2641 | 671 | 97 | 273 | 383 | 226 | N | E | 885 | 105 | 8 | 1008.333 | N |
-Jim Dwyer | 160 | 39 | 8 | 18 | 31 | 22 | 14 | 2128 | 543 | 56 | 304 | 268 | 298 | A | E | 33 | 3 | 0 | 275.000 | A |
-Julio Franco | 599 | 183 | 10 | 80 | 74 | 32 | 5 | 2482 | 715 | 27 | 330 | 326 | 158 | A | E | 231 | 374 | 18 | 775.000 | A |
-Jim Gantner | 497 | 136 | 7 | 58 | 38 | 26 | 11 | 3871 | 1066 | 40 | 450 | 367 | 241 | A | E | 304 | 347 | 10 | 850.000 | A |
-Johnny Grubb | 210 | 70 | 13 | 32 | 51 | 28 | 15 | 4040 | 1130 | 97 | 544 | 462 | 551 | A | E | 0 | 0 | 0 | 365.000 | A |
-Jerry Hairston | 225 | 61 | 5 | 32 | 26 | 26 | 11 | 1568 | 408 | 25 | 202 | 185 | 257 | A | W | 132 | 9 | 0 | NA | A |
-Jack Howell | 151 | 41 | 4 | 26 | 21 | 19 | 2 | 288 | 68 | 9 | 45 | 39 | 35 | A | W | 28 | 56 | 2 | 95.000 | A |
-John Kruk | 278 | 86 | 4 | 33 | 38 | 45 | 1 | 278 | 86 | 4 | 33 | 38 | 45 | N | W | 102 | 4 | 2 | 110.000 | N |
-Jeffrey Leonard | 341 | 95 | 6 | 48 | 42 | 20 | 10 | 2964 | 808 | 81 | 379 | 428 | 221 | N | W | 158 | 4 | 5 | 100.000 | N |
-Jim Morrison | 537 | 147 | 23 | 58 | 88 | 47 | 10 | 2744 | 730 | 97 | 302 | 351 | 174 | N | E | 92 | 257 | 20 | 277.500 | N |
-John Moses | 399 | 102 | 3 | 56 | 34 | 34 | 5 | 670 | 167 | 4 | 89 | 48 | 54 | A | W | 211 | 9 | 3 | 80.000 | A |
-Jerry Mumphrey | 309 | 94 | 5 | 37 | 32 | 26 | 13 | 4618 | 1330 | 57 | 616 | 522 | 436 | N | E | 161 | 3 | 3 | 600.000 | N |
-Joe Orsulak | 401 | 100 | 2 | 60 | 19 | 28 | 4 | 876 | 238 | 2 | 126 | 44 | 55 | N | E | 193 | 11 | 4 | NA | N |
-Jorge Orta | 336 | 93 | 9 | 35 | 46 | 23 | 15 | 5779 | 1610 | 128 | 730 | 741 | 497 | A | W | 0 | 0 | 0 | NA | A |
-Jim Presley | 616 | 163 | 27 | 83 | 107 | 32 | 3 | 1437 | 377 | 65 | 181 | 227 | 82 | A | W | 110 | 308 | 15 | 200.000 | A |
-Jamie Quirk | 219 | 47 | 8 | 24 | 26 | 17 | 12 | 1188 | 286 | 23 | 100 | 125 | 63 | A | W | 260 | 58 | 4 | NA | A |
-Johnny Ray | 579 | 174 | 7 | 67 | 78 | 58 | 6 | 3053 | 880 | 32 | 366 | 337 | 218 | N | E | 280 | 479 | 5 | 657.000 | N |
-Jeff Reed | 165 | 39 | 2 | 13 | 9 | 16 | 3 | 196 | 44 | 2 | 18 | 10 | 18 | A | W | 332 | 19 | 2 | 75.000 | N |
-Jim Rice | 618 | 200 | 20 | 98 | 110 | 62 | 13 | 7127 | 2163 | 351 | 1104 | 1289 | 564 | A | E | 330 | 16 | 8 | 2412.500 | A |
-Jerry Royster | 257 | 66 | 5 | 31 | 26 | 32 | 14 | 3910 | 979 | 33 | 518 | 324 | 382 | N | W | 87 | 166 | 14 | 250.000 | A |
-John Russell | 315 | 76 | 13 | 35 | 60 | 25 | 3 | 630 | 151 | 24 | 68 | 94 | 55 | N | E | 498 | 39 | 13 | 155.000 | N |
-Juan Samuel | 591 | 157 | 16 | 90 | 78 | 26 | 4 | 2020 | 541 | 52 | 310 | 226 | 91 | N | E | 290 | 440 | 25 | 640.000 | N |
-John Shelby | 404 | 92 | 11 | 54 | 49 | 18 | 6 | 1354 | 325 | 30 | 188 | 135 | 63 | A | E | 222 | 5 | 5 | 300.000 | A |
-Joel Skinner | 315 | 73 | 5 | 23 | 37 | 16 | 4 | 450 | 108 | 6 | 38 | 46 | 28 | A | W | 227 | 15 | 3 | 110.000 | A |
-Jeff Stone | 249 | 69 | 6 | 32 | 19 | 20 | 4 | 702 | 209 | 10 | 97 | 48 | 44 | N | E | 103 | 8 | 2 | NA | N |
-Jim Sundberg | 429 | 91 | 12 | 41 | 42 | 57 | 13 | 5590 | 1397 | 83 | 578 | 579 | 644 | A | W | 686 | 46 | 4 | 825.000 | N |
-Jim Traber | 212 | 54 | 13 | 28 | 44 | 18 | 2 | 233 | 59 | 13 | 31 | 46 | 20 | A | E | 243 | 23 | 5 | NA | A |
-Jose Uribe | 453 | 101 | 3 | 46 | 43 | 61 | 3 | 948 | 218 | 6 | 96 | 72 | 91 | N | W | 249 | 444 | 16 | 195.000 | N |
-Jerry Willard | 161 | 43 | 4 | 17 | 26 | 22 | 3 | 707 | 179 | 21 | 77 | 99 | 76 | A | W | 300 | 12 | 2 | NA | A |
-Joel Youngblood | 184 | 47 | 5 | 20 | 28 | 18 | 11 | 3327 | 890 | 74 | 419 | 382 | 304 | N | W | 49 | 2 | 0 | 450.000 | N |
-Kevin Bass | 591 | 184 | 20 | 83 | 79 | 38 | 5 | 1689 | 462 | 40 | 219 | 195 | 82 | N | W | 303 | 12 | 5 | 630.000 | N |
-Kal Daniels | 181 | 58 | 6 | 34 | 23 | 22 | 1 | 181 | 58 | 6 | 34 | 23 | 22 | N | W | 88 | 0 | 3 | 86.500 | N |
-Kirk Gibson | 441 | 118 | 28 | 84 | 86 | 68 | 8 | 2723 | 750 | 126 | 433 | 420 | 309 | A | E | 190 | 2 | 2 | 1300.000 | A |
-Ken Griffey | 490 | 150 | 21 | 69 | 58 | 35 | 14 | 6126 | 1839 | 121 | 983 | 707 | 600 | A | E | 96 | 5 | 3 | 1000.000 | N |
-Keith Hernandez | 551 | 171 | 13 | 94 | 83 | 94 | 13 | 6090 | 1840 | 128 | 969 | 900 | 917 | N | E | 1199 | 149 | 5 | 1800.000 | N |
-Kent Hrbek | 550 | 147 | 29 | 85 | 91 | 71 | 6 | 2816 | 815 | 117 | 405 | 474 | 319 | A | W | 1218 | 104 | 10 | 1310.000 | A |
-Ken Landreaux | 283 | 74 | 4 | 34 | 29 | 22 | 10 | 3919 | 1062 | 85 | 505 | 456 | 283 | N | W | 145 | 5 | 7 | 737.500 | N |
-Kevin McReynolds | 560 | 161 | 26 | 89 | 96 | 66 | 4 | 1789 | 470 | 65 | 233 | 260 | 155 | N | W | 332 | 9 | 8 | 625.000 | N |
-Kevin Mitchell | 328 | 91 | 12 | 51 | 43 | 33 | 2 | 342 | 94 | 12 | 51 | 44 | 33 | N | E | 145 | 59 | 8 | 125.000 | N |
-Keith Moreland | 586 | 159 | 12 | 72 | 79 | 53 | 9 | 3082 | 880 | 83 | 363 | 477 | 295 | N | E | 181 | 13 | 4 | 1043.333 | N |
-Ken Oberkfell | 503 | 136 | 5 | 62 | 48 | 83 | 10 | 3423 | 970 | 20 | 408 | 303 | 414 | N | W | 65 | 258 | 8 | 725.000 | N |
-Ken Phelps | 344 | 85 | 24 | 69 | 64 | 88 | 7 | 911 | 214 | 64 | 150 | 156 | 187 | A | W | 0 | 0 | 0 | 300.000 | A |
-Kirby Puckett | 680 | 223 | 31 | 119 | 96 | 34 | 3 | 1928 | 587 | 35 | 262 | 201 | 91 | A | W | 429 | 8 | 6 | 365.000 | A |
-Kurt Stillwell | 279 | 64 | 0 | 31 | 26 | 30 | 1 | 279 | 64 | 0 | 31 | 26 | 30 | N | W | 107 | 205 | 16 | 75.000 | N |
-Leon Durham | 484 | 127 | 20 | 66 | 65 | 67 | 7 | 3006 | 844 | 116 | 436 | 458 | 377 | N | E | 1231 | 80 | 7 | 1183.333 | N |
-Len Dykstra | 431 | 127 | 8 | 77 | 45 | 58 | 2 | 667 | 187 | 9 | 117 | 64 | 88 | N | E | 283 | 8 | 3 | 202.500 | N |
-Larry Herndon | 283 | 70 | 8 | 33 | 37 | 27 | 12 | 4479 | 1222 | 94 | 557 | 483 | 307 | A | E | 156 | 2 | 2 | 225.000 | A |
-Lee Lacy | 491 | 141 | 11 | 77 | 47 | 37 | 15 | 4291 | 1240 | 84 | 615 | 430 | 340 | A | E | 239 | 8 | 2 | 525.000 | A |
-Len Matuszek | 199 | 52 | 9 | 26 | 28 | 21 | 6 | 805 | 191 | 30 | 113 | 119 | 87 | N | W | 235 | 22 | 5 | 265.000 | N |
-Lloyd Moseby | 589 | 149 | 21 | 89 | 86 | 64 | 7 | 3558 | 928 | 102 | 513 | 471 | 351 | A | E | 371 | 6 | 6 | 787.500 | A |
-Lance Parrish | 327 | 84 | 22 | 53 | 62 | 38 | 10 | 4273 | 1123 | 212 | 577 | 700 | 334 | A | E | 483 | 48 | 6 | 800.000 | N |
-Larry Parrish | 464 | 128 | 28 | 67 | 94 | 52 | 13 | 5829 | 1552 | 210 | 740 | 840 | 452 | A | W | 0 | 0 | 0 | 587.500 | A |
-Luis Rivera | 166 | 34 | 0 | 20 | 13 | 17 | 1 | 166 | 34 | 0 | 20 | 13 | 17 | N | E | 64 | 119 | 9 | NA | N |
-Larry Sheets | 338 | 92 | 18 | 42 | 60 | 21 | 3 | 682 | 185 | 36 | 88 | 112 | 50 | A | E | 0 | 0 | 0 | 145.000 | A |
-Lonnie Smith | 508 | 146 | 8 | 80 | 44 | 46 | 9 | 3148 | 915 | 41 | 571 | 289 | 326 | A | W | 245 | 5 | 9 | NA | A |
-Lou Whitaker | 584 | 157 | 20 | 95 | 73 | 63 | 10 | 4704 | 1320 | 93 | 724 | 522 | 576 | A | E | 276 | 421 | 11 | 420.000 | A |
-Mike Aldrete | 216 | 54 | 2 | 27 | 25 | 33 | 1 | 216 | 54 | 2 | 27 | 25 | 33 | N | W | 317 | 36 | 1 | 75.000 | N |
-Marty Barrett | 625 | 179 | 4 | 94 | 60 | 65 | 5 | 1696 | 476 | 12 | 216 | 163 | 166 | A | E | 303 | 450 | 14 | 575.000 | A |
-Mike Brown | 243 | 53 | 4 | 18 | 26 | 27 | 4 | 853 | 228 | 23 | 101 | 110 | 76 | N | E | 107 | 3 | 3 | NA | N |
-Mike Davis | 489 | 131 | 19 | 77 | 55 | 34 | 7 | 2051 | 549 | 62 | 300 | 263 | 153 | A | W | 310 | 9 | 9 | 780.000 | A |
-Mike Diaz | 209 | 56 | 12 | 22 | 36 | 19 | 2 | 216 | 58 | 12 | 24 | 37 | 19 | N | E | 201 | 6 | 3 | 90.000 | N |
-Mariano Duncan | 407 | 93 | 8 | 47 | 30 | 30 | 2 | 969 | 230 | 14 | 121 | 69 | 68 | N | W | 172 | 317 | 25 | 150.000 | N |
-Mike Easler | 490 | 148 | 14 | 64 | 78 | 49 | 13 | 3400 | 1000 | 113 | 445 | 491 | 301 | A | E | 0 | 0 | 0 | 700.000 | N |
-Mike Fitzgerald | 209 | 59 | 6 | 20 | 37 | 27 | 4 | 884 | 209 | 14 | 66 | 106 | 92 | N | E | 415 | 35 | 3 | NA | N |
-Mel Hall | 442 | 131 | 18 | 68 | 77 | 33 | 6 | 1416 | 398 | 47 | 210 | 203 | 136 | A | E | 233 | 7 | 7 | 550.000 | A |
-Mickey Hatcher | 317 | 88 | 3 | 40 | 32 | 19 | 8 | 2543 | 715 | 28 | 269 | 270 | 118 | A | W | 220 | 16 | 4 | NA | A |
-Mike Heath | 288 | 65 | 8 | 30 | 36 | 27 | 9 | 2815 | 698 | 55 | 315 | 325 | 189 | N | E | 259 | 30 | 10 | 650.000 | A |
-Mike Kingery | 209 | 54 | 3 | 25 | 14 | 12 | 1 | 209 | 54 | 3 | 25 | 14 | 12 | A | W | 102 | 6 | 3 | 68.000 | A |
-Mike LaValliere | 303 | 71 | 3 | 18 | 30 | 36 | 3 | 344 | 76 | 3 | 20 | 36 | 45 | N | E | 468 | 47 | 6 | 100.000 | N |
-Mike Marshall | 330 | 77 | 19 | 47 | 53 | 27 | 6 | 1928 | 516 | 90 | 247 | 288 | 161 | N | W | 149 | 8 | 6 | 670.000 | N |
-Mike Pagliarulo | 504 | 120 | 28 | 71 | 71 | 54 | 3 | 1085 | 259 | 54 | 150 | 167 | 114 | A | E | 103 | 283 | 19 | 175.000 | A |
-Mark Salas | 258 | 60 | 8 | 28 | 33 | 18 | 3 | 638 | 170 | 17 | 80 | 75 | 36 | A | W | 358 | 32 | 8 | 137.000 | A |
-Mike Schmidt | 20 | 1 | 0 | 0 | 0 | 0 | 2 | 41 | 9 | 2 | 6 | 7 | 4 | N | E | 78 | 220 | 6 | 2127.333 | N |
-Mike Scioscia | 374 | 94 | 5 | 36 | 26 | 62 | 7 | 1968 | 519 | 26 | 181 | 199 | 288 | N | W | 756 | 64 | 15 | 875.000 | N |
-Mickey Tettleton | 211 | 43 | 10 | 26 | 35 | 39 | 3 | 498 | 116 | 14 | 59 | 55 | 78 | A | W | 463 | 32 | 8 | 120.000 | A |
-Milt Thompson | 299 | 75 | 6 | 38 | 23 | 26 | 3 | 580 | 160 | 8 | 71 | 33 | 44 | N | E | 212 | 1 | 2 | 140.000 | N |
-Mitch Webster | 576 | 167 | 8 | 89 | 49 | 57 | 4 | 822 | 232 | 19 | 132 | 83 | 79 | N | E | 325 | 12 | 8 | 210.000 | N |
-Mookie Wilson | 381 | 110 | 9 | 61 | 45 | 32 | 7 | 3015 | 834 | 40 | 451 | 249 | 168 | N | E | 228 | 7 | 5 | 800.000 | N |
-Marvell Wynne | 288 | 76 | 7 | 34 | 37 | 15 | 4 | 1644 | 408 | 16 | 198 | 120 | 113 | N | W | 203 | 3 | 3 | 240.000 | N |
-Mike Young | 369 | 93 | 9 | 43 | 42 | 49 | 5 | 1258 | 323 | 54 | 181 | 177 | 157 | A | E | 149 | 1 | 6 | 350.000 | A |
-Nick Esasky | 330 | 76 | 12 | 35 | 41 | 47 | 4 | 1367 | 326 | 55 | 167 | 198 | 167 | N | W | 512 | 30 | 5 | NA | N |
-Ozzie Guillen | 547 | 137 | 2 | 58 | 47 | 12 | 2 | 1038 | 271 | 3 | 129 | 80 | 24 | A | W | 261 | 459 | 22 | 175.000 | A |
-Oddibe McDowell | 572 | 152 | 18 | 105 | 49 | 65 | 2 | 978 | 249 | 36 | 168 | 91 | 101 | A | W | 325 | 13 | 3 | 200.000 | A |
-Omar Moreno | 359 | 84 | 4 | 46 | 27 | 21 | 12 | 4992 | 1257 | 37 | 699 | 386 | 387 | N | W | 151 | 8 | 5 | NA | N |
-Ozzie Smith | 514 | 144 | 0 | 67 | 54 | 79 | 9 | 4739 | 1169 | 13 | 583 | 374 | 528 | N | E | 229 | 453 | 15 | 1940.000 | N |
-Ozzie Virgil | 359 | 80 | 15 | 45 | 48 | 63 | 7 | 1493 | 359 | 61 | 176 | 202 | 175 | N | W | 682 | 93 | 13 | 700.000 | N |
-Phil Bradley | 526 | 163 | 12 | 88 | 50 | 77 | 4 | 1556 | 470 | 38 | 245 | 167 | 174 | A | W | 250 | 11 | 1 | 750.000 | A |
-Phil Garner | 313 | 83 | 9 | 43 | 41 | 30 | 14 | 5885 | 1543 | 104 | 751 | 714 | 535 | N | W | 58 | 141 | 23 | 450.000 | N |
-Pete Incaviglia | 540 | 135 | 30 | 82 | 88 | 55 | 1 | 540 | 135 | 30 | 82 | 88 | 55 | A | W | 157 | 6 | 14 | 172.000 | A |
-Paul Molitor | 437 | 123 | 9 | 62 | 55 | 40 | 9 | 4139 | 1203 | 79 | 676 | 390 | 364 | A | E | 82 | 170 | 15 | 1260.000 | A |
-Pete O’Brien | 551 | 160 | 23 | 86 | 90 | 87 | 5 | 2235 | 602 | 75 | 278 | 328 | 273 | A | W | 1224 | 115 | 11 | NA | A |
-Pete Rose | 237 | 52 | 0 | 15 | 25 | 30 | 24 | 14053 | 4256 | 160 | 2165 | 1314 | 1566 | N | W | 523 | 43 | 6 | 750.000 | N |
-Pat Sheridan | 236 | 56 | 6 | 41 | 19 | 21 | 5 | 1257 | 329 | 24 | 166 | 125 | 105 | A | E | 172 | 1 | 4 | 190.000 | A |
-Pat Tabler | 473 | 154 | 6 | 61 | 48 | 29 | 6 | 1966 | 566 | 29 | 250 | 252 | 178 | A | E | 846 | 84 | 9 | 580.000 | A |
-Rafael Belliard | 309 | 72 | 0 | 33 | 31 | 26 | 5 | 354 | 82 | 0 | 41 | 32 | 26 | N | E | 117 | 269 | 12 | 130.000 | N |
-Rick Burleson | 271 | 77 | 5 | 35 | 29 | 33 | 12 | 4933 | 1358 | 48 | 630 | 435 | 403 | A | W | 62 | 90 | 3 | 450.000 | A |
-Randy Bush | 357 | 96 | 7 | 50 | 45 | 39 | 5 | 1394 | 344 | 43 | 178 | 192 | 136 | A | W | 167 | 2 | 4 | 300.000 | A |
-Rick Cerone | 216 | 56 | 4 | 22 | 18 | 15 | 12 | 2796 | 665 | 43 | 266 | 304 | 198 | A | E | 391 | 44 | 4 | 250.000 | A |
-Ron Cey | 256 | 70 | 13 | 42 | 36 | 44 | 16 | 7058 | 1845 | 312 | 965 | 1128 | 990 | N | E | 41 | 118 | 8 | 1050.000 | A |
-Rob Deer | 466 | 108 | 33 | 75 | 86 | 72 | 3 | 652 | 142 | 44 | 102 | 109 | 102 | A | E | 286 | 8 | 8 | 215.000 | A |
-Rick Dempsey | 327 | 68 | 13 | 42 | 29 | 45 | 18 | 3949 | 939 | 78 | 438 | 380 | 466 | A | E | 659 | 53 | 7 | 400.000 | A |
-Rich Gedman | 462 | 119 | 16 | 49 | 65 | 37 | 7 | 2131 | 583 | 69 | 244 | 288 | 150 | A | E | 866 | 65 | 6 | NA | A |
-Ron Hassey | 341 | 110 | 9 | 45 | 49 | 46 | 9 | 2331 | 658 | 50 | 249 | 322 | 274 | A | E | 251 | 9 | 4 | 560.000 | A |
-Rickey Henderson | 608 | 160 | 28 | 130 | 74 | 89 | 8 | 4071 | 1182 | 103 | 862 | 417 | 708 | A | E | 426 | 4 | 6 | 1670.000 | A |
-Reggie Jackson | 419 | 101 | 18 | 65 | 58 | 92 | 20 | 9528 | 2510 | 548 | 1509 | 1659 | 1342 | A | W | 0 | 0 | 0 | 487.500 | A |
-Ricky Jones | 33 | 6 | 0 | 2 | 4 | 7 | 1 | 33 | 6 | 0 | 2 | 4 | 7 | A | W | 205 | 5 | 4 | NA | A |
-Ron Kittle | 376 | 82 | 21 | 42 | 60 | 35 | 5 | 1770 | 408 | 115 | 238 | 299 | 157 | A | W | 0 | 0 | 0 | 425.000 | A |
-Ray Knight | 486 | 145 | 11 | 51 | 76 | 40 | 11 | 3967 | 1102 | 67 | 410 | 497 | 284 | N | E | 88 | 204 | 16 | 500.000 | A |
-Randy Kutcher | 186 | 44 | 7 | 28 | 16 | 11 | 1 | 186 | 44 | 7 | 28 | 16 | 11 | N | W | 99 | 3 | 1 | NA | N |
-Rudy Law | 307 | 80 | 1 | 42 | 36 | 29 | 7 | 2421 | 656 | 18 | 379 | 198 | 184 | A | W | 145 | 2 | 2 | NA | A |
-Rick Leach | 246 | 76 | 5 | 35 | 39 | 13 | 6 | 912 | 234 | 12 | 102 | 96 | 80 | A | E | 44 | 0 | 1 | 250.000 | A |
-Rick Manning | 205 | 52 | 8 | 31 | 27 | 17 | 12 | 5134 | 1323 | 56 | 643 | 445 | 459 | A | E | 155 | 3 | 2 | 400.000 | A |
-Rance Mulliniks | 348 | 90 | 11 | 50 | 45 | 43 | 10 | 2288 | 614 | 43 | 295 | 273 | 269 | A | E | 60 | 176 | 6 | 450.000 | A |
-Ron Oester | 523 | 135 | 8 | 52 | 44 | 52 | 9 | 3368 | 895 | 39 | 377 | 284 | 296 | N | W | 367 | 475 | 19 | 750.000 | N |
-Rey Quinones | 312 | 68 | 2 | 32 | 22 | 24 | 1 | 312 | 68 | 2 | 32 | 22 | 24 | A | E | 86 | 150 | 15 | 70.000 | A |
-Rafael Ramirez | 496 | 119 | 8 | 57 | 33 | 21 | 7 | 3358 | 882 | 36 | 365 | 280 | 165 | N | W | 155 | 371 | 29 | 875.000 | N |
-Ronn Reynolds | 126 | 27 | 3 | 8 | 10 | 5 | 4 | 239 | 49 | 3 | 16 | 13 | 14 | N | E | 190 | 2 | 9 | 190.000 | N |
-Ron Roenicke | 275 | 68 | 5 | 42 | 42 | 61 | 6 | 961 | 238 | 16 | 128 | 104 | 172 | N | E | 181 | 3 | 2 | 191.000 | N |
-Ryne Sandberg | 627 | 178 | 14 | 68 | 76 | 46 | 6 | 3146 | 902 | 74 | 494 | 345 | 242 | N | E | 309 | 492 | 5 | 740.000 | N |
-Rafael Santana | 394 | 86 | 1 | 38 | 28 | 36 | 4 | 1089 | 267 | 3 | 94 | 71 | 76 | N | E | 203 | 369 | 16 | 250.000 | N |
-Rick Schu | 208 | 57 | 8 | 32 | 25 | 18 | 3 | 653 | 170 | 17 | 98 | 54 | 62 | N | E | 42 | 94 | 13 | 140.000 | N |
-Ruben Sierra | 382 | 101 | 16 | 50 | 55 | 22 | 1 | 382 | 101 | 16 | 50 | 55 | 22 | A | W | 200 | 7 | 6 | 97.500 | A |
-Roy Smalley | 459 | 113 | 20 | 59 | 57 | 68 | 12 | 5348 | 1369 | 155 | 713 | 660 | 735 | A | W | 0 | 0 | 0 | 740.000 | A |
-Robby Thompson | 549 | 149 | 7 | 73 | 47 | 42 | 1 | 549 | 149 | 7 | 73 | 47 | 42 | N | W | 255 | 450 | 17 | 140.000 | N |
-Rob Wilfong | 288 | 63 | 3 | 25 | 33 | 16 | 10 | 2682 | 667 | 38 | 315 | 259 | 204 | A | W | 135 | 257 | 7 | 341.667 | A |
-Reggie Williams | 303 | 84 | 4 | 35 | 32 | 23 | 2 | 312 | 87 | 4 | 39 | 32 | 23 | N | W | 179 | 5 | 3 | NA | N |
-Robin Yount | 522 | 163 | 9 | 82 | 46 | 62 | 13 | 7037 | 2019 | 153 | 1043 | 827 | 535 | A | E | 352 | 9 | 1 | 1000.000 | A |
-Steve Balboni | 512 | 117 | 29 | 54 | 88 | 43 | 6 | 1750 | 412 | 100 | 204 | 276 | 155 | A | W | 1236 | 98 | 18 | 100.000 | A |
-Scott Bradley | 220 | 66 | 5 | 20 | 28 | 13 | 3 | 290 | 80 | 5 | 27 | 31 | 15 | A | W | 281 | 21 | 3 | 90.000 | A |
-Sid Bream | 522 | 140 | 16 | 73 | 77 | 60 | 4 | 730 | 185 | 22 | 93 | 106 | 86 | N | E | 1320 | 166 | 17 | 200.000 | N |
-Steve Buechele | 461 | 112 | 18 | 54 | 54 | 35 | 2 | 680 | 160 | 24 | 76 | 75 | 49 | A | W | 111 | 226 | 11 | 135.000 | A |
-Shawon Dunston | 581 | 145 | 17 | 66 | 68 | 21 | 2 | 831 | 210 | 21 | 106 | 86 | 40 | N | E | 320 | 465 | 32 | 155.000 | N |
-Scott Fletcher | 530 | 159 | 3 | 82 | 50 | 47 | 6 | 1619 | 426 | 11 | 218 | 149 | 163 | A | W | 196 | 354 | 15 | 475.000 | A |
-Steve Garvey | 557 | 142 | 21 | 58 | 81 | 23 | 18 | 8759 | 2583 | 271 | 1138 | 1299 | 478 | N | W | 1160 | 53 | 7 | 1450.000 | N |
-Steve Jeltz | 439 | 96 | 0 | 44 | 36 | 65 | 4 | 711 | 148 | 1 | 68 | 56 | 99 | N | E | 229 | 406 | 22 | 150.000 | N |
-Steve Lombardozzi | 453 | 103 | 8 | 53 | 33 | 52 | 2 | 507 | 123 | 8 | 63 | 39 | 58 | A | W | 289 | 407 | 6 | 105.000 | A |
-Spike Owen | 528 | 122 | 1 | 67 | 45 | 51 | 4 | 1716 | 403 | 12 | 211 | 146 | 155 | A | W | 209 | 372 | 17 | 350.000 | A |
-Steve Sax | 633 | 210 | 6 | 91 | 56 | 59 | 6 | 3070 | 872 | 19 | 420 | 230 | 274 | N | W | 367 | 432 | 16 | 90.000 | N |
-Tony Armas | 16 | 2 | 0 | 1 | 0 | 0 | 2 | 28 | 4 | 0 | 1 | 0 | 0 | A | E | 247 | 4 | 8 | NA | A |
-Tony Bernazard | 562 | 169 | 17 | 88 | 73 | 53 | 8 | 3181 | 841 | 61 | 450 | 342 | 373 | A | E | 351 | 442 | 17 | 530.000 | A |
-Tom Brookens | 281 | 76 | 3 | 42 | 25 | 20 | 8 | 2658 | 657 | 48 | 324 | 300 | 179 | A | E | 106 | 144 | 7 | 341.667 | A |
-Tom Brunansky | 593 | 152 | 23 | 69 | 75 | 53 | 6 | 2765 | 686 | 133 | 369 | 384 | 321 | A | W | 315 | 10 | 6 | 940.000 | A |
-Tony Fernandez | 687 | 213 | 10 | 91 | 65 | 27 | 4 | 1518 | 448 | 15 | 196 | 137 | 89 | A | E | 294 | 445 | 13 | 350.000 | A |
-Tim Flannery | 368 | 103 | 3 | 48 | 28 | 54 | 8 | 1897 | 493 | 9 | 207 | 162 | 198 | N | W | 209 | 246 | 3 | 326.667 | N |
-Tom Foley | 263 | 70 | 1 | 26 | 23 | 30 | 4 | 888 | 220 | 9 | 83 | 82 | 86 | N | E | 81 | 147 | 4 | 250.000 | N |
-Tony Gwynn | 642 | 211 | 14 | 107 | 59 | 52 | 5 | 2364 | 770 | 27 | 352 | 230 | 193 | N | W | 337 | 19 | 4 | 740.000 | N |
-Terry Harper | 265 | 68 | 8 | 26 | 30 | 29 | 7 | 1337 | 339 | 32 | 135 | 163 | 128 | N | W | 92 | 5 | 3 | 425.000 | A |
-Toby Harrah | 289 | 63 | 7 | 36 | 41 | 44 | 17 | 7402 | 1954 | 195 | 1115 | 919 | 1153 | A | W | 166 | 211 | 7 | NA | A |
-Tommy Herr | 559 | 141 | 2 | 48 | 61 | 73 | 8 | 3162 | 874 | 16 | 421 | 349 | 359 | N | E | 352 | 414 | 9 | 925.000 | N |
-Tim Hulett | 520 | 120 | 17 | 53 | 44 | 21 | 4 | 927 | 227 | 22 | 106 | 80 | 52 | A | W | 70 | 144 | 11 | 185.000 | A |
-Terry Kennedy | 19 | 4 | 1 | 2 | 3 | 1 | 1 | 19 | 4 | 1 | 2 | 3 | 1 | N | W | 692 | 70 | 8 | 920.000 | A |
-Tito Landrum | 205 | 43 | 2 | 24 | 17 | 20 | 7 | 854 | 219 | 12 | 105 | 99 | 71 | N | E | 131 | 6 | 1 | 286.667 | N |
-Tim Laudner | 193 | 47 | 10 | 21 | 29 | 24 | 6 | 1136 | 256 | 42 | 129 | 139 | 106 | A | W | 299 | 13 | 5 | 245.000 | A |
-Tom O’Malley | 181 | 46 | 1 | 19 | 18 | 17 | 5 | 937 | 238 | 9 | 88 | 95 | 104 | A | E | 37 | 98 | 9 | NA | A |
-Tom Paciorek | 213 | 61 | 4 | 17 | 22 | 3 | 17 | 4061 | 1145 | 83 | 488 | 491 | 244 | A | W | 178 | 45 | 4 | 235.000 | A |
-Tony Pena | 510 | 147 | 10 | 56 | 52 | 53 | 7 | 2872 | 821 | 63 | 307 | 340 | 174 | N | E | 810 | 99 | 18 | 1150.000 | N |
-Terry Pendleton | 578 | 138 | 1 | 56 | 59 | 34 | 3 | 1399 | 357 | 7 | 149 | 161 | 87 | N | E | 133 | 371 | 20 | 160.000 | N |
-Tony Perez | 200 | 51 | 2 | 14 | 29 | 25 | 23 | 9778 | 2732 | 379 | 1272 | 1652 | 925 | N | W | 398 | 29 | 7 | NA | N |
-Tony Phillips | 441 | 113 | 5 | 76 | 52 | 76 | 5 | 1546 | 397 | 17 | 226 | 149 | 191 | A | W | 160 | 290 | 11 | 425.000 | A |
-Terry Puhl | 172 | 42 | 3 | 17 | 14 | 15 | 10 | 4086 | 1150 | 57 | 579 | 363 | 406 | N | W | 65 | 0 | 0 | 900.000 | N |
-Tim Raines | 580 | 194 | 9 | 91 | 62 | 78 | 8 | 3372 | 1028 | 48 | 604 | 314 | 469 | N | E | 270 | 13 | 6 | NA | N |
-Ted Simmons | 127 | 32 | 4 | 14 | 25 | 12 | 19 | 8396 | 2402 | 242 | 1048 | 1348 | 819 | N | W | 167 | 18 | 6 | 500.000 | N |
-Tim Teufel | 279 | 69 | 4 | 35 | 31 | 32 | 4 | 1359 | 355 | 31 | 180 | 148 | 158 | N | E | 133 | 173 | 9 | 277.500 | N |
-Tim Wallach | 480 | 112 | 18 | 50 | 71 | 44 | 7 | 3031 | 771 | 110 | 338 | 406 | 239 | N | E | 94 | 270 | 16 | 750.000 | N |
-Vince Coleman | 600 | 139 | 0 | 94 | 29 | 60 | 2 | 1236 | 309 | 1 | 201 | 69 | 110 | N | E | 300 | 12 | 9 | 160.000 | N |
-Von Hayes | 610 | 186 | 19 | 107 | 98 | 74 | 6 | 2728 | 753 | 69 | 399 | 366 | 286 | N | E | 1182 | 96 | 13 | 1300.000 | N |
-Vance Law | 360 | 81 | 5 | 37 | 44 | 37 | 7 | 2268 | 566 | 41 | 279 | 257 | 246 | N | E | 170 | 284 | 3 | 525.000 | N |
-Wally Backman | 387 | 124 | 1 | 67 | 27 | 36 | 7 | 1775 | 506 | 6 | 272 | 125 | 194 | N | E | 186 | 290 | 17 | 550.000 | N |
-Wade Boggs | 580 | 207 | 8 | 107 | 71 | 105 | 5 | 2778 | 978 | 32 | 474 | 322 | 417 | A | E | 121 | 267 | 19 | 1600.000 | A |
-Will Clark | 408 | 117 | 11 | 66 | 41 | 34 | 1 | 408 | 117 | 11 | 66 | 41 | 34 | N | W | 942 | 72 | 11 | 120.000 | N |
-Wally Joyner | 593 | 172 | 22 | 82 | 100 | 57 | 1 | 593 | 172 | 22 | 82 | 100 | 57 | A | W | 1222 | 139 | 15 | 165.000 | A |
-Wayne Krenchicki | 221 | 53 | 2 | 21 | 23 | 22 | 8 | 1063 | 283 | 15 | 107 | 124 | 106 | N | E | 325 | 58 | 6 | NA | N |
-Willie McGee | 497 | 127 | 7 | 65 | 48 | 37 | 5 | 2703 | 806 | 32 | 379 | 311 | 138 | N | E | 325 | 9 | 3 | 700.000 | N |
-Willie Randolph | 492 | 136 | 5 | 76 | 50 | 94 | 12 | 5511 | 1511 | 39 | 897 | 451 | 875 | A | E | 313 | 381 | 20 | 875.000 | A |
-Wayne Tolleson | 475 | 126 | 3 | 61 | 43 | 52 | 6 | 1700 | 433 | 7 | 217 | 93 | 146 | A | W | 37 | 113 | 7 | 385.000 | A |
-Willie Upshaw | 573 | 144 | 9 | 85 | 60 | 78 | 8 | 3198 | 857 | 97 | 470 | 420 | 332 | A | E | 1314 | 131 | 12 | 960.000 | A |
-Willie Wilson | 631 | 170 | 9 | 77 | 44 | 31 | 11 | 4908 | 1457 | 30 | 775 | 357 | 249 | A | W | 408 | 4 | 3 | 1000.000 | A |