NBA選手のシーズン当たりの得点
データを元にシーズン毎の平均得点の推移をグラフ化してみます。
外れ値を省くために、1シーズン40試合以上出場した選手で構成しています。
#! /usr/bin/env python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
fn = "data/player_per_game.csv"
df = pd.read_csv(fn, index_col=0)
df2 = df[df["g"] >= 40]
des = df2.groupby("season")["PPG"].describe()
print(des)
|
count |
mean |
std |
min |
25% |
50% |
75% |
max |
| season |
|
|
|
|
|
|
|
|
| 1950 |
183.0 |
8.178142 |
4.114657 |
1.7 |
5.000 |
7.40 |
10.800 |
27.4 |
| 1951 |
108.0 |
8.976852 |
4.619314 |
2.1 |
5.975 |
8.10 |
11.325 |
28.4 |
| 1952 |
94.0 |
9.263830 |
4.777610 |
1.3 |
6.100 |
8.75 |
12.000 |
25.4 |
| 1953 |
102.0 |
9.023529 |
4.408142 |
2.2 |
5.525 |
8.85 |
11.275 |
22.3 |
| 1954 |
91.0 |
8.651648 |
4.246943 |
1.6 |
5.900 |
8.20 |
10.450 |
24.4 |
| 1955 |
81.0 |
10.046914 |
5.192087 |
2.4 |
5.900 |
9.60 |
13.100 |
22.7 |
| 1956 |
80.0 |
10.177500 |
5.222056 |
2.4 |
6.525 |
8.85 |
13.225 |
25.7 |
| 1957 |
83.0 |
10.397590 |
5.245439 |
2.2 |
6.600 |
9.70 |
12.400 |
25.6 |
| 1958 |
78.0 |
11.506410 |
5.798216 |
3.4 |
7.400 |
9.40 |
16.400 |
27.8 |
| 1959 |
85.0 |
11.260000 |
5.994466 |
3.5 |
6.500 |
9.80 |
14.400 |
29.2 |
| 1960 |
87.0 |
11.886207 |
6.852264 |
3.0 |
7.350 |
9.90 |
14.350 |
37.6 |
| 1961 |
83.0 |
12.225301 |
7.547199 |
2.2 |
6.400 |
10.20 |
15.350 |
38.4 |
| 1962 |
100.0 |
12.348000 |
8.555221 |
1.5 |
6.050 |
10.35 |
15.950 |
50.4 |
| 1963 |
94.0 |
12.045745 |
7.262833 |
2.2 |
7.200 |
10.50 |
14.300 |
44.8 |
| 1964 |
102.0 |
11.489216 |
6.883585 |
1.7 |
5.775 |
9.90 |
15.775 |
36.9 |
| 1965 |
94.0 |
11.620213 |
6.724751 |
2.5 |
6.300 |
11.00 |
14.575 |
34.7 |
| 1966 |
103.0 |
11.838835 |
6.569899 |
2.6 |
7.300 |
10.70 |
15.350 |
33.5 |
| 1967 |
108.0 |
12.126852 |
6.489396 |
3.0 |
7.225 |
10.55 |
17.400 |
35.6 |
| 1968 |
136.0 |
11.949265 |
6.489273 |
2.0 |
6.550 |
11.65 |
16.625 |
29.2 |
| 1969 |
146.0 |
12.370548 |
6.392174 |
2.3 |
7.325 |
11.50 |
17.350 |
28.4 |
| 1970 |
154.0 |
12.246753 |
6.560719 |
2.1 |
7.200 |
11.50 |
15.550 |
31.2 |
| 1971 |
181.0 |
11.462431 |
6.616757 |
1.5 |
5.900 |
9.70 |
16.000 |
31.7 |
| 1972 |
189.0 |
11.605820 |
6.817438 |
1.5 |
5.900 |
11.10 |
15.700 |
34.8 |
| 1973 |
194.0 |
10.764433 |
6.656815 |
1.6 |
5.700 |
9.05 |
14.800 |
34.0 |
| 1974 |
184.0 |
10.810326 |
6.559276 |
1.8 |
5.575 |
9.30 |
14.975 |
30.6 |
| 1975 |
210.0 |
10.341429 |
6.244741 |
1.3 |
5.700 |
9.00 |
13.375 |
34.5 |
| 1976 |
199.0 |
10.492462 |
5.890430 |
1.7 |
5.900 |
9.20 |
13.850 |
31.1 |
| 1977 |
260.0 |
10.482308 |
5.847033 |
1.4 |
6.000 |
9.05 |
13.225 |
31.1 |
| 1978 |
259.0 |
10.945174 |
5.930006 |
2.0 |
6.250 |
9.60 |
14.750 |
27.2 |
| 1979 |
247.0 |
11.290283 |
6.263495 |
1.5 |
6.500 |
10.10 |
15.650 |
29.6 |
| 1980 |
248.0 |
11.283065 |
5.887415 |
2.5 |
6.600 |
10.25 |
14.900 |
33.1 |
| 1981 |
262.0 |
10.632824 |
5.939516 |
0.7 |
5.800 |
9.55 |
14.400 |
30.7 |
| 1982 |
270.0 |
10.534815 |
6.001231 |
1.3 |
5.700 |
9.80 |
14.350 |
32.3 |
| 1983 |
277.0 |
10.419134 |
6.093150 |
1.5 |
5.300 |
8.90 |
14.100 |
28.4 |
| 1984 |
262.0 |
10.524809 |
6.278965 |
1.3 |
5.425 |
9.00 |
14.500 |
30.6 |
| 1985 |
263.0 |
10.649810 |
6.560726 |
1.3 |
5.400 |
9.30 |
14.800 |
32.9 |
| 1986 |
260.0 |
10.577692 |
6.095973 |
0.6 |
5.375 |
9.25 |
14.300 |
30.3 |
| 1987 |
267.0 |
10.570412 |
6.424687 |
1.7 |
5.600 |
9.20 |
14.500 |
37.1 |
| 1988 |
275.0 |
10.619636 |
6.160800 |
1.1 |
6.000 |
9.50 |
14.200 |
35.0 |
| 1989 |
292.0 |
10.566438 |
6.399106 |
0.7 |
5.375 |
9.20 |
15.000 |
32.5 |
| 1990 |
312.0 |
10.410897 |
6.379762 |
1.1 |
5.175 |
8.95 |
14.700 |
33.6 |
| 1991 |
304.0 |
10.608224 |
6.295456 |
1.3 |
5.300 |
9.25 |
14.925 |
31.5 |
| 1992 |
310.0 |
10.226129 |
6.052927 |
1.1 |
5.100 |
9.20 |
14.175 |
30.1 |
| 1993 |
308.0 |
10.318831 |
6.016749 |
0.7 |
5.700 |
8.80 |
14.400 |
32.6 |
| 1994 |
304.0 |
10.280592 |
5.696689 |
1.7 |
5.675 |
9.25 |
14.125 |
29.8 |
| 1995 |
314.0 |
10.038854 |
5.879826 |
1.2 |
5.000 |
9.20 |
13.550 |
29.3 |
| 1996 |
343.0 |
9.868513 |
5.705394 |
0.3 |
5.100 |
9.10 |
13.300 |
30.4 |
| 1997 |
337.0 |
9.747478 |
5.926339 |
1.2 |
4.800 |
8.00 |
13.800 |
29.6 |
| 1998 |
342.0 |
9.711988 |
5.496349 |
1.1 |
5.300 |
9.00 |
13.275 |
28.7 |
| 1999 |
217.0 |
10.335945 |
5.207891 |
1.2 |
6.400 |
9.30 |
13.300 |
26.8 |
| 2000 |
327.0 |
9.568807 |
5.702088 |
0.8 |
5.400 |
8.10 |
12.500 |
29.7 |
| 2001 |
335.0 |
9.408955 |
5.914256 |
0.6 |
4.950 |
7.90 |
12.000 |
31.1 |
| 2002 |
332.0 |
9.771988 |
5.841670 |
1.1 |
5.100 |
8.40 |
12.950 |
31.4 |
| 2003 |
324.0 |
9.716667 |
6.016440 |
0.8 |
5.175 |
8.10 |
13.125 |
32.1 |
| 2004 |
348.0 |
9.454885 |
5.631074 |
0.9 |
4.900 |
7.95 |
13.225 |
28.0 |
| 2005 |
361.0 |
9.865097 |
5.911378 |
1.0 |
5.300 |
8.40 |
13.000 |
30.7 |
| 2006 |
345.0 |
9.857681 |
6.261762 |
1.1 |
5.000 |
8.60 |
13.000 |
35.4 |
| 2007 |
348.0 |
10.052299 |
6.163668 |
1.1 |
5.200 |
8.85 |
13.325 |
31.6 |
| 2008 |
342.0 |
10.047076 |
5.904616 |
0.9 |
5.725 |
8.65 |
13.100 |
30.0 |
| 2009 |
350.0 |
10.225143 |
5.957750 |
0.8 |
5.200 |
9.05 |
14.175 |
30.2 |
| 2010 |
348.0 |
10.136782 |
5.666940 |
0.7 |
6.000 |
8.90 |
13.800 |
30.1 |
| 2011 |
380.0 |
9.819211 |
5.582670 |
1.1 |
5.300 |
8.70 |
13.225 |
27.7 |
| 2012 |
305.0 |
9.887541 |
5.262952 |
1.0 |
5.500 |
9.30 |
12.700 |
28.0 |
| 2013 |
365.0 |
9.390959 |
5.262332 |
0.5 |
5.200 |
8.60 |
12.800 |
28.7 |
| 2014 |
366.0 |
9.807923 |
5.548187 |
1.6 |
5.525 |
9.05 |
13.200 |
32.0 |
| 2015 |
385.0 |
9.748052 |
5.014614 |
1.8 |
5.900 |
8.70 |
12.700 |
28.1 |
| 2016 |
360.0 |
9.875833 |
5.395877 |
1.3 |
5.900 |
8.70 |
12.700 |
30.1 |
| 2017 |
369.0 |
10.226016 |
5.935251 |
1.7 |
6.100 |
8.70 |
13.200 |
31.6 |
| 2018 |
355.0 |
10.488451 |
5.692110 |
1.4 |
6.050 |
9.20 |
13.500 |
30.4 |
| 2019 |
391.0 |
10.691560 |
5.802060 |
1.0 |
6.500 |
9.30 |
13.700 |
36.1 |
| 2020 |
335.0 |
11.280896 |
6.125054 |
1.5 |
6.600 |
9.80 |
15.050 |
34.3 |
| 2021 |
335.0 |
11.455224 |
6.338176 |
1.9 |
6.750 |
9.70 |
14.600 |
32.0 |
| 2022 |
384.0 |
10.966927 |
5.995893 |
2.2 |
6.400 |
9.25 |
14.450 |
30.6 |
| 2023 |
385.0 |
11.378701 |
6.651446 |
2.1 |
6.600 |
9.50 |
14.700 |
33.1 |
| 2024 |
376.0 |
11.025532 |
6.538390 |
1.7 |
5.975 |
9.35 |
14.700 |
33.9 |
plt.figure(figsize=(20, 6))
plt.xlim(1950, 2024)
plt.title("points per season")
sns.lineplot(data=des[["mean", "min", "max"]])
plt.show()
結果
最高得点(max)はシーズン得点王なのでよく知られている通りです。
1962年のウィルト・チェンバレン選手や1987年のマイケル・ジョーダン選手はグラフの山を作っています。
平均を見ると概ね10点超える辺りがレギュラー選手の得点と言えます。
1960〜70年代一時12点台と高く、2000年代に一時落ちてますが3Pが増えた現在は11点台となっています。