今回は、2025/01/06時点のNBA全30チームのスタッツをベースに、基本スタッツのレーダーチャートおよびPACE、Ratings、Four Factors(eFG%、TO Ratio、REB%、FT Rate)を使用した散布図の作成を行っていきます。
データは全てNBA公式ウェブサイトから収集し、Tbox、OboxおよびTadd(過去記事参照)を作成の上、統計ソフトRにより各チャートを作成しています。なお、各チャートを作成するための統計ソフトRのコマンドは、後述を参照ください。(※本記事における分析結果は、フリー統計ソフトRのパッケージ” BasketballAnalyzeR ”を用いての分析結果であるため、NBA公式で公表されている数値とは差異が発生する場合もあります。その点につき、あらかじめご留意ください。)
各チャートを作成する際にはプレーオフ進出圏内(1位~6位)、プレーイン進出圏内(7位~10位)、それら以外(11位~15位)でチームを色分けしており、それらの区分は下記に示す2025/01/06時点の順位表をもとに判断しています。
それでは、基本スタッツのレーダーチャートから先に示していきます。
※データ分析を実践する際に参考にしている書籍『Basketball Data Science: With Applications in R』の紹介記事も書いていますので、よろしければご確認ください。
- 基本スタッツを用いたNBAチームのレーダーチャート <NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- PACEの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- ORtg、DRtgの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- eFG%の散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- TO Ratioの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- REB%の散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- FT Rateの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
- ※参考<統計ソフトRに入力するコマンド>
基本スタッツを用いたNBAチームのレーダーチャート <NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点の基本スタッツを用いたNBAチームのレーダーチャートは下記の通りです(アルファベット順)。
※レーダーチャートの見方はこちら。基本スタッツの内容はこちら。なお、レーダーチャート内にある青色の点線は平均値(標準化の処理を行っているため平均0)を表す。レーダーチャート作成の際には全てのスタッツを1MINあたりの数値に変換している。
上記レーダーチャートから読み取れる特色を下記に簡単に列挙します。(先週12月30日時点のレーダーチャートはこちら)
- バランス型:アトランタ・ホークス(イースト7位)、メンフィス・グリズリーズ(ウェスト3位)
- P2Mが高い:デンバー・ナゲッツ(ウェスト4位)、サクラメント・キングス(ウェスト11位)、ニューヨーク・ニックス(イースト3位)
- P3Mが高い:ボストン・セルティックス(イースト2位)、シカゴ・ブルズ(イースト10位)、クリーブランド・キャバリアーズ(イースト1位)
- FTMが高い:フィラデルフィア・76ers(イースト11位)、ロサンゼルス・レイカーズ(ウェスト5位)、デンバー・ナゲッツ(ウェスト4位)
- REBが高い:ヒューストン・ロケッツ(ウェスト2位)、ゴールデンステイト・ウォリアーズ(ウェスト9位)、サンアントニオ・スパーズ(ウェスト8位)
- ASTが高い:デンバー・ナゲッツ(ウェスト4位)、シカゴ・ブルズ(イースト10位)、クリーブランド・キャバリアーズ(イースト1位)
- STLが高い:オクラホマシティ・サンダー(ウェスト1位)、フィラデルフィア・76ers(イースト11位)、ロサンゼルス・クリッパーズ(ウェスト7位)、
- BLKが高い:サンアントニオ・スパーズ(ウェスト8位)、オーランド・マジック(イースト4位)、オクラホマシティ・サンダー(ウェスト1位)
PACEの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のPACEの散布図は、下記のとおりです。(※PACEの内容については、過去記事を参照ください。)
上記の散布図内では、プレーオフ進出圏内(1位~6位)のチームは青色、プレーイン進出圏内(7位~10位)のチームは緑色、それ以外のチーム(11位~15位)は赤色でそれぞれ示されています。(※後述の散布図に関しても同様です。)
また、散布図内の各エリアに関しては、下記の特徴を持つチームが属することになります。
- 左下エリア周辺:試合の展開やテンポがゆっくりしているチーム
- 右上エリア周辺:試合の展開やテンポが早いチーム
上記の散布図を先週12月30日時点の散布図と比較すると、トロント・ラプターズ(イースト13位)とヒューストン・ロケッツ(ウェスト2位)のPACEに若干の低下が見られるものの、全体的にはPACEの数値に大きな変動は見られません。
上記の散布図より、試合テンポが最も早いチームはメンフィス・グリズリーズ(ウェスト3位)、次いでアトランタ・ホークス(イースト7位)とシカゴ・ブルズ(イースト10位)が続くことが分かります。一方、試合テンポが遅いチームはブルックリン・ネッツ(イースト12位)、マイアミ・ヒート(イースト6位)、オーランド・マジック(イースト4位)であることが読み取れます。
ORtg、DRtgの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のORtgとDRtgの散布図は、下記のとおりです。(※ORtgとDRtgの内容については、過去記事を参照ください。)
上記の散布図内の各エリアに関しては、下記の特徴を持つチームが属することになります。
- 左下エリア:ディフェンス効率性は高いが、オフェンス効率性が低い
- 右下エリア:オフェンス効率性、ディフェンス効率性がともに高い
- 右上エリア: オフェンス効率性は高いが、ディフェンス効率性が低い
- 左上エリア:オフェンス効率性、ディフェンス効率性がともに低い
傾向としては先週12月30日時点の散布図とほぼ変わらず、プレーオフとプレーイン進出圏内(1位~10位)のチームが右側のエリアに位置していることが分かります。その一方で、両カンファレンス下位(11位~15位)のチームは比較的左側のエリアに集中していますが、サクラメント・キングス(ウェスト11位)、フェニックス・サンズ(ウェスト12位)、フィラデルフィア・76ers(イースト11位)に関しては、プレーオフ・プレーイン進出圏内のチームと同様に比較的右側寄りのエリアに位置していることが分かります。
なお、オフェンス効率性が最も高いチームはクリーブランド・キャバリアーズ(イースト1位)、ディフェンス効率性が最も高いチームはオクラホマシティ・サンダー(ウェスト1位)であり、その一方でオフェンス効率性が最も低いチームはワシントン・ウィザーズ(イースト15位)、ディフェンス効率性が最も低いチームはユタ・ジャズ(ウェスト14位)であることも読み取れます。
eFG%の散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のeFG%の散布図は、下記のとおりです。(※eFG%の内容については、過去記事を参照ください。)
上記の散布図内の各エリアに関しては、下記の特徴を持つチームが配置されることになります。
- 左下エリア:自チームのフィールドショット精度、対戦チームのフィールドショット精度がともに低い
- 右下エリア:自チームのフィールドショット精度が高く、対戦チームのフィールドショット精度は低い
- 右上エリア:自チームのフィールドショット精度、対戦チームのフィールドショット精度がともに高い
- 左上エリア:自チームのフィールドショット精度が低く、対戦チームのフィールドショット精度は高い
傾向としては先週12月30日時点の散布図とほぼ変わらず、両カンファレンス下位(11位~15位)のチームが比較的左上のエリアに集中していることが分かります。
また、フィールドショットの精度が最も高いチームはクリーブランド・キャバリアーズ(イースト1位)、対戦チームのフィールドショットの精度を最も低く抑えているチームはオクラホマシティ・サンダー(ウェスト1位)であることが分かります。なお、ヒューストン・ロケッツ(ウェスト2位)に関しては、フィールドショットの精度が低い一方で、対戦チームのフィールドショット精度も低く抑えているチームであることも読み取れます。
TO Ratioの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のTO Ratioの散布図は、下記のとおりです。(※TO Ratioの内容については、過去記事を参照ください。)
散布図内の各エリアに関しては、下記の特徴を持つチームが配置されることになります。
- 左下エリア:自チームのターンオーバー率、対戦チームのターンオーバー率がともに低い
- 右下エリア:自チームのターンオーバー率は高いが、対戦チームのターンオーバー率は低い
- 右上エリア:自チームのターンオーバー率、対戦チームのターンオーバー率がともに高い
- 左上エリア:自チームのターンオーバー率は低く、対戦チームのターンオーバー率が高い
傾向としては先週12月30日時点の散布図とほぼ変わらず、自チームのターンオーバーの頻度が少なく、対戦チームのターンオーバーの頻度が多いチームとしてオクラホマシティ・サンダー(ウェスト1位)が該当する一方で、自チームのターンオーバーの頻度が多く、対戦チームのターンオーバーの頻度が少ないチームとしてユタ・ジャズ(ウェスト14位)が該当することが分かります。
REB%の散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のREB%の散布図は、下記のとおりです。(※REB%の内容については、過去記事を参照ください。)
上記の散布図内の各エリアに関しては、下記の特徴を持つチームが属することになります。
- 左下エリア:オフェンスリバウンド率、ディフェンスリバウンド率がともに低い
- 右下エリア:オフェンスリバウンド率は高いが、ディフェンスリバウンド率は低い
- 右上エリア:オフェンスリバウンド率、ディフェンスリバウンド率がともに高い
- 左上エリア:オフェンスリバウンド率は低いが、ディフェンスリバウンド率は高い
傾向としては先週12月30日時点の散布図とほぼ変わらず、オーランド・マジック(イースト4位)がリーグトップのディフェンスリバウンド率をマークしている一方で、ニューオーリンズ・ペリカンズ(ウェスト15位)とポートランド・トレイルブレイザーズ(ウェスト13位)が、最も低い水準のディフェンスリバウンド率を示していることが読み取れます。
FT Rateの散布図<NBA2024-25レギュラー・シーズン ※2025/01/06時点>
2025/01/06時点のFT Rateの散布図は、下記のとおりです。(※FT Rateの内容については、過去記事を参照ください。)
上記の散布図内の各エリアに関しては、下記の特徴を持つチームが属することになります。
- 左下エリア:自チームのフリースロー成功数の頻度、対戦チームのフリースロー成功数の頻度がともに低い
- 右下エリア:自チームのフリースロー成功数の頻度が高く、対戦チームのフリースロー成功数の頻度は低い
- 右上エリア:自チームのフリースロー成功数の頻度、対戦チームのフリースロー成功数の頻度がともに高い
- 左上エリア:自チームのフリースロー成功数の頻度が低く、対戦チームのフリースロー成功数の頻度は高い
上記の散布図を先週12月30日時点の散布図と比較すると、オーランド・マジック(イースト4位)とユタ・ジャズ(ウェスト14位)のFT Rate(Offense)に若干の低下が見られるものの、全体的には先週12/30時点の散布図から大きな変動は見られません。
フィールドゴール試投数に占めるフリースロー成功数の割合が高いチームとして、ロサンゼルス・レイカーズ(ウェスト5位)とフィラデルフィア・76ers(イースト11位)が挙げられ、反対に同割合が低いチームとしてはゴールデンステイト・ウォリアーズ(ウェスト9位)、シカゴ・ブルズ(イースト10位)を挙げることが出来ます。
※参考<統計ソフトRに入力するコマンド>
統計ソフトRのインストール手順をまとめた記事も作成していますので、よろしければご参考ください。
library(BasketballAnalyzeR)
library(gridExtra)
Tbox2425 <- read.csv(file="Tbox_20250106.csv")
Obox2425 <- read.csv(file="Obox_20250106.csv")
Tadd2425 <- read.csv(file="Tadd_20250106.csv")
fourfactors2425 <- fourfactors(Tbox2425, Obox2425)
Playoff <- Tadd2425$Playoff
fourfactors2425 <- data.frame(fourfactors2425, Playoff)
fourfactors2425
# PACE of NBA teams
ggplot(data=fourfactors2425, aes(x=PACE.Off, y=PACE.Def, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$PACE.Off))+
geom_hline(yintercept =mean(fourfactors2425$PACE.Def))+
labs(title = "PACE (as of 20250106)")+
labs(x = "Pace (Possessions per minute) of the Team") +
labs(y = "Pace (Possessions per minute) of the Opponents")
# Rtg of NBA teams
ggplot(data=fourfactors2425, aes(x=ORtg, y=DRtg, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$ORtg))+
geom_hline(yintercept =mean(fourfactors2425$DRtg))+
labs(title = "ORtg and DRtg (as of 20250106)")+
labs(x = "Offensive Rating of the Team (ORtg)") +
labs(y = "Offensive Rating of the Opponents (DRtg)")
# eFG% of NBA teams
ggplot(data=fourfactors2425, aes(x=F1.Off, y=F1.Def, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$F1.Off))+
geom_hline(yintercept =mean(fourfactors2425$F1.Def))+
labs(title = "Factor 1:eFG% (as of 20250106)")+
labs(x = "eFG% (Offense)") +
labs(y = "eFG% (Defense)")
# TO Ratio of NBA teams
ggplot(data=fourfactors2425, aes(x=F2.Off, y=F2.Def, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$F2.Off))+
geom_hline(yintercept =mean(fourfactors2425$F2.Def))+
labs(title = "Factor 2:TO Ratio (as of 20250106)")+
labs(x = "TO Ratio (Offense)") +
labs(y = "TO Ratio (Defense)")
# REB% of NBA teams
ggplot(data=fourfactors2425, aes(x=F3.Off, y=F3.Def, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$F3.Off))+
geom_hline(yintercept =mean(fourfactors2425$F3.Def))+
labs(title = "Factor 3:REB% (as of 20250106)")+
labs(x = "REB% (Offense)") +
labs(y = "REB% (Defense)")
# FT Rate of NBA teams
ggplot(data=fourfactors2425, aes(x=F4.Off, y=F4.Def, color = Playoff, label=Team)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = Team))+
geom_vline(xintercept =mean(fourfactors2425$F4.Off))+
geom_hline(yintercept =mean(fourfactors2425$F4.Def))+
labs(title = "Factor 4:FT Rate (as of 20250106)")+
labs(x = "FT Rate (Offense)") +
labs(y = "FT Rate (Defense)")
# Radar chart of NBA teams
attach(Tbox2425)
T <- data.frame(P2M,P3M, FTM, REB=OREB+DREB, AST, STL, BLK)/MIN
detach(Tbox2425)
radialprofile(data=T, title=Tbox2425$Team, std=TRUE)
listplots <- radialprofile(data=T, title=Tbox2425$Team, std=TRUE)
grid.arrange(grobs=listplots[1:15], ncol=5)
grid.arrange(grobs=listplots[16:30], ncol=5)
それでは、今回のトラッシュトークは以上です。
※データ分析を実践する際に参考にしている書籍『Basketball Data Science: With Applications in R』の紹介記事はこちらからご確認ください。