Files
project_argument/.ipynb_checkpoints/argument-checkpoint.ipynb
jwberent e4f558ba5a I added the bar charts for the best offensive and defensive players.
I am proud of being able to figure out how to correctly add the bar charts for the best offensive and defensive players.  I was stuck on this as I had to change the data series into a data frame.  I figured this out and am very excited that I was able to complete this.  I am very close to finishing this project.
2025-10-31 14:54:41 -04:00

1598 lines
164 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"id": "worldwide-blood",
"metadata": {},
"source": [
"# Introduction"
]
},
{
"cell_type": "markdown",
"id": "understanding-numbers",
"metadata": {},
"source": [
"I will research 3 different questions I had while looking at the NBA data. I will first find who the better player is between LeBron James and Kevin Durant and then find who the best players are on offense and defense. All of the data I will be using will come from the 2014-2022 NBA seasons. This project will be able to give valuable insight to an NBA front office telling them who they should try to acquire in the offseason."
]
},
{
"cell_type": "markdown",
"id": "greater-circular",
"metadata": {},
"source": [
"## Overarching Question: Who are some of the best players in the NBA from 2014-2022?"
]
},
{
"cell_type": "markdown",
"id": "appreciated-testimony",
"metadata": {},
"source": [
"I want to look at this because I have played basketball most of my life and enjoy watching the NBA. I enjoy looking at NBA players' stats in my free time, so this was very interesting to me. I want to see who some of the best players are on offense and defense in the NBA."
]
},
{
"cell_type": "markdown",
"id": "permanent-pollution",
"metadata": {},
"source": [
"# Data"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "technical-evans",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "overhead-sigma",
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"file_name = \"modern_RAPTOR_by_player.csv\"\n",
"dataset_path = \"data/\" + file_name\n",
"df = pd.read_csv(dataset_path)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "heated-blade",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>player_name</th>\n",
" <th>player_id</th>\n",
" <th>season</th>\n",
" <th>poss</th>\n",
" <th>mp</th>\n",
" <th>raptor_box_offense</th>\n",
" <th>raptor_box_defense</th>\n",
" <th>raptor_box_total</th>\n",
" <th>raptor_onoff_offense</th>\n",
" <th>raptor_onoff_defense</th>\n",
" <th>...</th>\n",
" <th>raptor_offense</th>\n",
" <th>raptor_defense</th>\n",
" <th>raptor_total</th>\n",
" <th>war_total</th>\n",
" <th>war_reg_season</th>\n",
" <th>war_playoffs</th>\n",
" <th>predator_offense</th>\n",
" <th>predator_defense</th>\n",
" <th>predator_total</th>\n",
" <th>pace_impact</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alex Abrines</td>\n",
" <td>abrinal01</td>\n",
" <td>2017</td>\n",
" <td>2387</td>\n",
" <td>1135</td>\n",
" <td>0.745505</td>\n",
" <td>-0.372938</td>\n",
" <td>0.372567</td>\n",
" <td>-0.418553</td>\n",
" <td>-3.857011</td>\n",
" <td>...</td>\n",
" <td>0.543421</td>\n",
" <td>-1.144832</td>\n",
" <td>-0.601411</td>\n",
" <td>1.249008</td>\n",
" <td>1.447708</td>\n",
" <td>-0.198700</td>\n",
" <td>0.077102</td>\n",
" <td>-1.038677</td>\n",
" <td>-0.961575</td>\n",
" <td>0.326413</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Alex Abrines</td>\n",
" <td>abrinal01</td>\n",
" <td>2018</td>\n",
" <td>2546</td>\n",
" <td>1244</td>\n",
" <td>0.317549</td>\n",
" <td>-1.725325</td>\n",
" <td>-1.407776</td>\n",
" <td>-1.291727</td>\n",
" <td>-0.049694</td>\n",
" <td>...</td>\n",
" <td>-0.020826</td>\n",
" <td>-1.502642</td>\n",
" <td>-1.523468</td>\n",
" <td>0.777304</td>\n",
" <td>0.465912</td>\n",
" <td>0.311392</td>\n",
" <td>-0.174621</td>\n",
" <td>-1.112625</td>\n",
" <td>-1.287247</td>\n",
" <td>-0.456141</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Alex Abrines</td>\n",
" <td>abrinal01</td>\n",
" <td>2019</td>\n",
" <td>1279</td>\n",
" <td>588</td>\n",
" <td>-3.215683</td>\n",
" <td>1.078399</td>\n",
" <td>-2.137285</td>\n",
" <td>-6.158856</td>\n",
" <td>4.901168</td>\n",
" <td>...</td>\n",
" <td>-4.040157</td>\n",
" <td>1.885618</td>\n",
" <td>-2.154538</td>\n",
" <td>0.178167</td>\n",
" <td>0.178167</td>\n",
" <td>0.000000</td>\n",
" <td>-4.577678</td>\n",
" <td>1.543282</td>\n",
" <td>-3.034396</td>\n",
" <td>-0.268013</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Precious Achiuwa</td>\n",
" <td>achiupr01</td>\n",
" <td>2021</td>\n",
" <td>1581</td>\n",
" <td>749</td>\n",
" <td>-4.122966</td>\n",
" <td>1.359278</td>\n",
" <td>-2.763688</td>\n",
" <td>-4.050779</td>\n",
" <td>-0.919712</td>\n",
" <td>...</td>\n",
" <td>-4.347596</td>\n",
" <td>0.954821</td>\n",
" <td>-3.392775</td>\n",
" <td>-0.246055</td>\n",
" <td>-0.246776</td>\n",
" <td>0.000721</td>\n",
" <td>-3.817713</td>\n",
" <td>0.474828</td>\n",
" <td>-3.342885</td>\n",
" <td>0.329157</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Precious Achiuwa</td>\n",
" <td>achiupr01</td>\n",
" <td>2022</td>\n",
" <td>3802</td>\n",
" <td>1892</td>\n",
" <td>-2.521510</td>\n",
" <td>1.763502</td>\n",
" <td>-0.758008</td>\n",
" <td>-1.687893</td>\n",
" <td>3.103441</td>\n",
" <td>...</td>\n",
" <td>-2.517372</td>\n",
" <td>2.144151</td>\n",
" <td>-0.373221</td>\n",
" <td>2.262658</td>\n",
" <td>2.309611</td>\n",
" <td>-0.046953</td>\n",
" <td>-2.483956</td>\n",
" <td>2.024360</td>\n",
" <td>-0.459596</td>\n",
" <td>-0.728609</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 21 columns</p>\n",
"</div>"
],
"text/plain": [
" player_name player_id season poss mp raptor_box_offense \\\n",
"0 Alex Abrines abrinal01 2017 2387 1135 0.745505 \n",
"1 Alex Abrines abrinal01 2018 2546 1244 0.317549 \n",
"2 Alex Abrines abrinal01 2019 1279 588 -3.215683 \n",
"3 Precious Achiuwa achiupr01 2021 1581 749 -4.122966 \n",
"4 Precious Achiuwa achiupr01 2022 3802 1892 -2.521510 \n",
"\n",
" raptor_box_defense raptor_box_total raptor_onoff_offense \\\n",
"0 -0.372938 0.372567 -0.418553 \n",
"1 -1.725325 -1.407776 -1.291727 \n",
"2 1.078399 -2.137285 -6.158856 \n",
"3 1.359278 -2.763688 -4.050779 \n",
"4 1.763502 -0.758008 -1.687893 \n",
"\n",
" raptor_onoff_defense ... raptor_offense raptor_defense raptor_total \\\n",
"0 -3.857011 ... 0.543421 -1.144832 -0.601411 \n",
"1 -0.049694 ... -0.020826 -1.502642 -1.523468 \n",
"2 4.901168 ... -4.040157 1.885618 -2.154538 \n",
"3 -0.919712 ... -4.347596 0.954821 -3.392775 \n",
"4 3.103441 ... -2.517372 2.144151 -0.373221 \n",
"\n",
" war_total war_reg_season war_playoffs predator_offense \\\n",
"0 1.249008 1.447708 -0.198700 0.077102 \n",
"1 0.777304 0.465912 0.311392 -0.174621 \n",
"2 0.178167 0.178167 0.000000 -4.577678 \n",
"3 -0.246055 -0.246776 0.000721 -3.817713 \n",
"4 2.262658 2.309611 -0.046953 -2.483956 \n",
"\n",
" predator_defense predator_total pace_impact \n",
"0 -1.038677 -0.961575 0.326413 \n",
"1 -1.112625 -1.287247 -0.456141 \n",
"2 1.543282 -3.034396 -0.268013 \n",
"3 0.474828 -3.342885 0.329157 \n",
"4 2.024360 -0.459596 -0.728609 \n",
"\n",
"[5 rows x 21 columns]"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "markdown",
"id": "continental-franklin",
"metadata": {},
"source": [
"**Data Overview**\n",
"\n",
"This dataset comes from FiveThirtyEight and contains different data from NBA players from 2014-2022. It includes the players' names, players' ids, and the season year. It also includes number of possessions played and minutes played which both indicate how much time the player was on the court that season. Also, the data includes raptor stats for offense, defense, and total which shows how effective a player was on that side of the court. The data also shows predator stats for offense, defense, and total which is a prediction of how effective the player was. Also, WAR (wins above replacement) stats were shown in the data which show how many more wins that player got their team over the season compared to if a replacement level player was playing instead. Lastly, pace impact stats were shown which state the overall impact a player had on their team. The pace impact stat for each player was shown as if each player played 48 minutes which is the length of the whole game."
]
},
{
"cell_type": "markdown",
"id": "infinite-instrument",
"metadata": {},
"source": [
"# Methods and Results"
]
},
{
"cell_type": "markdown",
"id": "recognized-positive",
"metadata": {},
"source": [
"## First Research Question: Who is better offensively, defensively, and all around, LeBron James or Kevin Durant?\n"
]
},
{
"cell_type": "markdown",
"id": "graduate-palmer",
"metadata": {},
"source": [
"### Methods"
]
},
{
"cell_type": "markdown",
"id": "endless-variation",
"metadata": {},
"source": [
"**For the LeBron James Data:** \n",
"I will first need to get the data to only show LeBron James' seasons from 2014-2022. I will do this by setting player_name equivalent to LeBron James and call this data Lebron_df. I will then use the raptor_offense data and take the mean of all of his seasons. This will give me a good representation of how effective he has been on offense. I will then use the raptor_defense data and take the mean of all of his seasons. I will then use the raptor_total data and take the mean of all of his seasons. Doing all of this will give numerical numbers that represent how good LeBron James is offensively, defensively, and all around. This can be done for other players and these numbers can be compared to see who is more impactful.\n",
"\n",
"**For the Kevin Durant Data:** \n",
"I will first need to get the data to only show Kevin Durant's seasons from 2014-2022. I will do this by setting player_name equivalent to Kevin Durant and call this data Durant_df. I will then use the raptor_offense data and take the mean of all of his seasons. This will give me a good representation of how effective he has been on offense. I will then use the raptor_defense data and take the mean of all of his seasons. I will then use the raptor_total data and take the mean of all of his seasons.\n"
]
},
{
"cell_type": "markdown",
"id": "portuguese-japan",
"metadata": {},
"source": [
"### Results "
]
},
{
"cell_type": "markdown",
"id": "372a5883-7746-4932-9353-489eed28878e",
"metadata": {},
"source": [
"#### LeBron James Data"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "9e6b2020-4df8-4e45-8b00-fbc398964376",
"metadata": {},
"outputs": [],
"source": [
"Lebron_df = df[df.player_name==\"LeBron James\"]"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "b57dfb5b-f725-43d7-bfaa-76e7d86ec69f",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(5.958565647986926)"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Lebron_df.raptor_offense.mean()"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "496218f8-6823-4570-b97f-bdf2461e3e06",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(0.3291714363332999)"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Lebron_df.raptor_defense.mean()"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "247b1e93-df57-4b13-a22f-656e6740e715",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(6.2877370843202245)"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Lebron_df.raptor_total.mean()"
]
},
{
"cell_type": "markdown",
"id": "f1ea090f-a39c-40ba-85a7-bb55f5216130",
"metadata": {},
"source": [
"#### Kevin Durant Data"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "c0a35626-5356-4b7b-8e2b-eb83cc42b8f8",
"metadata": {},
"outputs": [],
"source": [
"Durant_df = df[df.player_name==\"Kevin Durant\"]"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "08415fc5-0f02-4e13-906a-c9dee9f8118e",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(5.66912563466798)"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Durant_df.raptor_offense.mean()"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "f37fb84f-4861-4e14-b6dc-502c180dcb4b",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(0.20101735750424538)"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Durant_df.raptor_defense.mean()"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "a60e7ec7-27fb-47df-ba2a-94a84c7926e5",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"np.float64(5.870142992047225)"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Durant_df.raptor_total.mean()"
]
},
{
"cell_type": "markdown",
"id": "05e10133-bfb8-4c85-82e0-4d118082eb53",
"metadata": {},
"source": [
"#### Data Explained\n",
"LeBron James is better on average, offensively, defensively, and all around than Kevin Durant is. LeBron's raptor offense, defense, and total rating is higher than Durant's. This does not account for individual seasons but uses the data from all seasons from 2014-2022. I will graph LeBron James' and Kevin Durant's individual seasons below. "
]
},
{
"cell_type": "markdown",
"id": "2564b4db-58dd-4886-b1e3-261f7ae1b357",
"metadata": {},
"source": [
"#### LeBron James and Kevin Durant Graphed"
]
},
{
"cell_type": "code",
"execution_count": 34,
"id": "79e1f833-833a-4a75-b41d-eeab580bf713",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 1.0, 'LeBron James vs Kevin Durant')"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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6uqKn376CTVq1Mh1XZ1OB51Op3+v1WqLq0wiIiKSgOR3/VStWhXx8fH4+++/8d5776FXr144ffp0rutOnz4darVa//L19S3maomIiKg4yW6MSsuWLREYGIjFixcbLcvtjIqvry/HqBAREZUgJXKMSo6srCyDMPI0pVIJpVJZzBURERGRVCQNKuPGjUPbtm1RsWJFJCcnY/Xq1dizZw+2b98uZVlEREQkE5IGlcTERPTs2RO3b9+GWq1GcHAwtm/fjlatWklZFhEREcmEpEHl22+/lfLwREREJHOS3/VDRERE9DwMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkWwwqREREJFsMKkRERCRbDCpEREQkW5IGlenTp6NBgwZwc3ODl5cXOnXqhLNnz0pZEhEREcmIpEFl7969iI6OxsGDB7Fjxw5kZGSgdevWePTokZRlERERkUwohBBC6iJy3Lt3D15eXti7dy+aNm2a7/parRZqtRoajQYqlaoYKiQiIqKiKsz3t6zGqGg0GgBA6dKlJa6EiIiI5MBO6gJyZGVlYdiwYQgNDcVLL72U6zo6nQ46nU7/XqvVFld5REREJAHZnFGJjo7GyZMnsWbNmueuM336dKjVav3L19e3GCskIiKi4iaLMSqDBw/Gpk2bsG/fPgQEBDx3vdzOqPj6+nKMChERUQlSmDEqkl76EULg/fffx08//YQ9e/bkGVIAQKlUQqlUFlN1REREJDVJg0p0dDRWr16NTZs2wc3NDXfu3AEAqNVqODk5SVkaERERyYCkl34UCkWu7cuXL0fv3r3z3Z63JxMREZU8JerSDxEREdHzyOauHyIiIqJnMagQERGRbDGoEBERkWwxqBAREZFsMagQERGRbDGoEBERkWwxqBAREZFsMagQERGRbDGoEBERkWwxqBAREZFsMagQERGRbDGoEBERkWwxqBAREZFsMagQERGRbDGoEBERkWwxqBAREZFsMagQERGR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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.scatterplot(data=Lebron_df,x=\"season\",y=\"raptor_total\")\n",
"sns.scatterplot(data=Durant_df,x=\"season\",y=\"raptor_total\")\n",
"plt.ylim([0,9])\n",
"plt.legend(labels=[\"LeBron James\",\"Kevin Durant\"])\n",
"plt.title(\"LeBron James vs Kevin Durant\")"
]
},
{
"cell_type": "markdown",
"id": "db4cba31-c730-4111-8d78-0190d5ac86ec",
"metadata": {},
"source": [
"#### Results from Graph\n",
"This shows that Kevin Durant was better in 2014 and 2015 and LeBron James was better from 2016-2022. This is the case because the data point for Kevin Durant was higher than LeBron James' for the seasons of 2014 and 2015 and LeBron James' data point was higher for the seasons of 2016-2022."
]
},
{
"cell_type": "markdown",
"id": "collectible-puppy",
"metadata": {},
"source": [
"## Second Research Question: Who is the best offensive player in the NBA?\n"
]
},
{
"cell_type": "markdown",
"id": "demographic-future",
"metadata": {},
"source": [
"## Methods"
]
},
{
"cell_type": "markdown",
"id": "64e47d9c-d4af-4c02-87af-d0087597d629",
"metadata": {},
"source": [
"I will use the player_name, raptor_offense, and predator_offense for each player. \n",
" \n",
"**Initial Problem:** \n",
"I first completed this without excluding players who played less than 3000 minutes in a season and was finding that the data was showing me the best offensive NBA players were players who only played one game. This was happening because a few players played great offensively in one game and never played again. Obviously, those are not the best NBA players as they only played 1 or a few games in the NBA.\n",
"\n",
"**How I fixed this:** \n",
"I fixed this by removing all NBA players who played less than 3000 minutes throughout the 82 game season. This only allowed the players who were good enough to play many minutes for their teams throughout the season. This means that these were some of the best NBA players. There are 48 minutes in an NBA game so I chose 3000 minutes since 3000/48 = 62.5 and that is about three quarters of the NBA season.\n",
"\n",
"**What I did:** \n",
"I first removed all players who played less than 3000 minutes. I then grouped the data by the players' names as I called these the eligible players. I then took all of the offensive stats in this dataset which were the raptor offense and predator offense data and took the averages of them which I called the offense stats. I then added all of the offense stats together and sorted them by highest to lowest number. The higher the number correlates with the better the offensive player which gives us a list ranking the best to worst offensive players that have all played over 3000 minutes. I then turned the data back into a data frame, renamed the number column to be offense_stat and showed the new data frame containing a players name and the offensive value associated."
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "e40a1730-6c77-425c-81b2-55f2bcd7d5d2",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>offense_stat</th>\n",
" </tr>\n",
" <tr>\n",
" <th>player_name</th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Stephen Curry</th>\n",
" <td>17.720458</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chris Paul</th>\n",
" <td>17.330227</td>\n",
" </tr>\n",
" <tr>\n",
" <th>James Harden</th>\n",
" <td>15.526875</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Isaiah Thomas</th>\n",
" <td>14.996093</td>\n",
" </tr>\n",
" <tr>\n",
" <th>LeBron James</th>\n",
" <td>12.947326</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kevin Durant</th>\n",
" <td>12.235575</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Russell Westbrook</th>\n",
" <td>11.888737</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kyrie Irving</th>\n",
" <td>11.735169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nikola Jokic</th>\n",
" <td>10.950040</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Damian Lillard</th>\n",
" <td>10.012836</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kyle Lowry</th>\n",
" <td>9.180744</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Karl-Anthony Towns</th>\n",
" <td>8.111974</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bradley Beal</th>\n",
" <td>7.866275</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jimmy Butler</th>\n",
" <td>7.821279</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Paul George</th>\n",
" <td>6.961966</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Devin Booker</th>\n",
" <td>6.766783</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kemba Walker</th>\n",
" <td>6.752003</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kevin Love</th>\n",
" <td>6.741710</td>\n",
" </tr>\n",
" <tr>\n",
" <th>JR Smith</th>\n",
" <td>6.593562</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Blake Griffin</th>\n",
" <td>6.389779</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Giannis Antetokounmpo</th>\n",
" <td>6.112044</td>\n",
" </tr>\n",
" <tr>\n",
" <th>John Wall</th>\n",
" <td>5.753245</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Khris Middleton</th>\n",
" <td>5.306315</td>\n",
" </tr>\n",
" <tr>\n",
" <th>CJ McCollum</th>\n",
" <td>5.276419</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jalen Brunson</th>\n",
" <td>5.237223</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Klay Thompson</th>\n",
" <td>4.973756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jrue Holiday</th>\n",
" <td>4.947378</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Draymond Green</th>\n",
" <td>4.784848</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wesley Matthews</th>\n",
" <td>4.769245</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chandler Parsons</th>\n",
" <td>4.669383</td>\n",
" </tr>\n",
" <tr>\n",
" <th>DeAndre Jordan</th>\n",
" <td>4.652438</td>\n",
" </tr>\n",
" <tr>\n",
" <th>DeMar DeRozan</th>\n",
" <td>4.455351</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nicolas Batum</th>\n",
" <td>4.372284</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jayson Tatum</th>\n",
" <td>4.184372</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Otto Porter Jr.</th>\n",
" <td>4.088359</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Anthony Davis</th>\n",
" <td>4.076098</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jaylen Brown</th>\n",
" <td>4.026351</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Joe Johnson</th>\n",
" <td>3.184046</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Mikal Bridges</th>\n",
" <td>3.180401</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Donovan Mitchell</th>\n",
" <td>2.917105</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marcus Smart</th>\n",
" <td>2.869965</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Pascal Siakam</th>\n",
" <td>2.734799</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Monta Ellis</th>\n",
" <td>2.503306</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tyrese Maxey</th>\n",
" <td>2.304135</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Ben Simmons</th>\n",
" <td>2.176836</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Joakim Noah</th>\n",
" <td>2.092434</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dorian Finney-Smith</th>\n",
" <td>2.053527</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Paul Millsap</th>\n",
" <td>1.773395</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Trevor Ariza</th>\n",
" <td>1.711537</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chris Bosh</th>\n",
" <td>1.506055</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tobias Harris</th>\n",
" <td>1.468812</td>\n",
" </tr>\n",
" <tr>\n",
" <th>David West</th>\n",
" <td>0.994692</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Andrew Wiggins</th>\n",
" <td>0.938364</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bam Adebayo</th>\n",
" <td>0.618696</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Serge Ibaka</th>\n",
" <td>0.557475</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marc Gasol</th>\n",
" <td>0.541082</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Lance Stephenson</th>\n",
" <td>-0.108353</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marcin Gortat</th>\n",
" <td>-0.148795</td>\n",
" </tr>\n",
" <tr>\n",
" <th>George Hill</th>\n",
" <td>-0.353735</td>\n",
" </tr>\n",
" <tr>\n",
" <th>PJ Tucker</th>\n",
" <td>-1.726914</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" offense_stat\n",
"player_name \n",
"Stephen Curry 17.720458\n",
"Chris Paul 17.330227\n",
"James Harden 15.526875\n",
"Isaiah Thomas 14.996093\n",
"LeBron James 12.947326\n",
"Kevin Durant 12.235575\n",
"Russell Westbrook 11.888737\n",
"Kyrie Irving 11.735169\n",
"Nikola Jokic 10.950040\n",
"Damian Lillard 10.012836\n",
"Kyle Lowry 9.180744\n",
"Karl-Anthony Towns 8.111974\n",
"Bradley Beal 7.866275\n",
"Jimmy Butler 7.821279\n",
"Paul George 6.961966\n",
"Devin Booker 6.766783\n",
"Kemba Walker 6.752003\n",
"Kevin Love 6.741710\n",
"JR Smith 6.593562\n",
"Blake Griffin 6.389779\n",
"Giannis Antetokounmpo 6.112044\n",
"John Wall 5.753245\n",
"Khris Middleton 5.306315\n",
"CJ McCollum 5.276419\n",
"Jalen Brunson 5.237223\n",
"Klay Thompson 4.973756\n",
"Jrue Holiday 4.947378\n",
"Draymond Green 4.784848\n",
"Wesley Matthews 4.769245\n",
"Chandler Parsons 4.669383\n",
"DeAndre Jordan 4.652438\n",
"DeMar DeRozan 4.455351\n",
"Nicolas Batum 4.372284\n",
"Jayson Tatum 4.184372\n",
"Otto Porter Jr. 4.088359\n",
"Anthony Davis 4.076098\n",
"Jaylen Brown 4.026351\n",
"Joe Johnson 3.184046\n",
"Mikal Bridges 3.180401\n",
"Donovan Mitchell 2.917105\n",
"Marcus Smart 2.869965\n",
"Pascal Siakam 2.734799\n",
"Monta Ellis 2.503306\n",
"Tyrese Maxey 2.304135\n",
"Ben Simmons 2.176836\n",
"Joakim Noah 2.092434\n",
"Dorian Finney-Smith 2.053527\n",
"Paul Millsap 1.773395\n",
"Trevor Ariza 1.711537\n",
"Chris Bosh 1.506055\n",
"Tobias Harris 1.468812\n",
"David West 0.994692\n",
"Andrew Wiggins 0.938364\n",
"Bam Adebayo 0.618696\n",
"Serge Ibaka 0.557475\n",
"Marc Gasol 0.541082\n",
"Lance Stephenson -0.108353\n",
"Marcin Gortat -0.148795\n",
"George Hill -0.353735\n",
"PJ Tucker -1.726914"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"players_over_3000 = df[df.mp>3000]\n",
"eligible_players = players_over_3000.groupby(\"player_name\")\n",
"offense_stats= eligible_players[[\"raptor_offense\",\"predator_offense\"]].mean()\n",
"off_stat = offense_stats.sum(axis=1).sort_values(ascending=False)\n",
"df_offense = pd.DataFrame(off_stat)\n",
"df_offense.columns = [\"offense_stat\"]\n",
"df_offense"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "8ea17bc0-35b9-4378-a35d-90f9cfd71064",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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IiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBYQAiIiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBMdF3AURERIbCc8gqfZeQZl2Y2kGn62MPEBERERkcBiAiIiIyOAxAREREZHD0GoCOHj2KBg0awNHRESqVCtu3b1fmxcTEYNiwYShSpAisra3h6OiIDh064NmzZ59d59ixY6FSqbT+ChQokMyPhIiIiNISvQagqKgouLu7Y968efHmvXnzBhcvXsSoUaNw8eJFbN26Fbdv30bDhg2/uN5ChQrh+fPnyt/x48eTo3wiIiJKo/R6FlidOnVQp06dBOfZ2dlh//79WtPmzp2LUqVK4dGjR8iZM2ei6zUxMYGDg4NOayUiIqIfR5o6BigsLAwqlQrp06f/bLu7d+/C0dERuXPnRtu2bfHo0aPPto+OjkZ4eLjWHxEREf240kwAevfuHYYNG4Y2bdrA1tY20XalS5eGr68v9uzZgwULFuDBgweoUKECIiIiEl1m0qRJsLOzU/6cnJyS4yEQERFRKpEmAlBMTAxatmwJEcGCBQs+27ZOnTpo0aIFihYtilq1amHXrl0IDQ3Fxo0bE13G29sbYWFhyt/jx491/RCIiIgoFUn1I0Frws/Dhw9x8ODBz/b+JCR9+vTIly8f7t27l2gbc3NzmJubf2+pRERElEak6h4gTfi5e/cuDhw4gEyZMn3zOiIjI+Hv749s2bIlQ4VERESUFuk1AEVGRuLy5cu4fPkyAODBgwe4fPkyHj16hJiYGDRv3hznz5/HmjVroFarERgYiMDAQLx//15ZR7Vq1TB37lzl9uDBg3HkyBEEBATg5MmTaNKkCYyNjdGmTZuUfnhERESUSul1F9j58+dRpUoV5fbAgQMBAB07dsTYsWPx999/AwA8PDy0ljt06BAqV64MAPD390dwcLAy78mTJ2jTpg1CQkKQOXNmlC9fHqdPn0bmzJmT98EQERFRmqHXAFS5cmWISKLzPzdPIyAgQOv2+vXrv7csIiIi+sGl6mOAiIiIiJIDAxAREREZHAYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBocBiIiIiAwOAxAREREZ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LoxKRERElFolKQC1bt0aw4YNQ2BgIFQqFWJjY3HixAkMHjwYHTp00HWNRERERDqVpAA0ceJEFChQAE5OToiMjISbmxsqVqyIsmXLYuTIkbqukYiIiEinkjQQopmZGZYsWYLRo0fj2rVriIyMRLFixeDq6qrr+oiIiIh07rtGgnZycoKTkxPUajWuXbuG169fI0OGDLqqjYiIiChZJGkXWP/+/bFs2TIAgFqtRqVKlVC8eHE4OTnh8OHDuqyPiIiISOeSFIA2b94Md3d3AMA///yD+/fv49atWxgwYABGjBih0wKJiIiIdC1JASg4OBgODg4APl7uomXLlsiXLx86d+6Ma9eu6bRAIiIiIl1LUgDKmjUrbt68CbVajT179qBGjRoAgDdv3sDY2FinBRIRERHpWpIOgvby8kLLli2RLVs2qFQqVK9eHQBw5swZFChQQKcFEhEREelakgLQ2LFjUbhwYTx+/BgtWrSAubk5AMDY2BjDhw/XaYFEREREupbk0+CbN28eb1rHjh2/qxgiIiKilJDkAOTn5wc/Pz8EBQUhNjZWa97y5cu/uzAiIiKi5JKkADRu3DiMHz8eJUqUUI4DIiIiIkorkhSAFi5cCF9fX7Rv317X9RAREREluySdBv/+/XuULVtW17UQERERpYgkBaCuXbti7dq1uq6FiIiIKEUkaRfYu3fvsHjxYhw4cABFixaFqamp1vwZM2bopDgiIiKi5JCkAHT16lV4eHgAAK5fv641jwdEExERUWqXpAB06NAhXddBRERElGKSdAyQxr1797B37168ffsWACAiOimKiIiIKDklKQCFhISgWrVqyJcvH+rWrYvnz58DALp06YJBgwbptEAiIiIiXUtSABowYABMTU3x6NEjWFlZKdNbtWqFPXv26Kw4IiIiouSQpGOA9u3bh7179yJHjhxa011dXfHw4UOdFEZERESUXJLUAxQVFaXV86Px6tUr5crwRERERKlVkgJQhQoVsGrVKuW2SqVCbGwspkyZgipVquisOCIiIqLkkKRdYFOmTEG1atVw/vx5vH//HkOHDsWNGzfw6tUrnDhxQtc1EhEREelUknqAChcujDt37qB8+fJo1KgRoqKi0LRpU1y6dAl58uTRdY1EREREOvXVPUBNmzaFr68vbG1tsWrVKrRq1QojRoxIztqIiIiIksVX9wD9+++/iIqKAgB4eXkhLCws2YoiIiIiSk5f3QNUoEABeHt7o0qVKhARbNy4Eba2tgm27dChg84KJCIiItK1rw5ACxYswKBBg7Bz506oVCqMHDkywQufqlQqBiAiIiJK1b46AJUrVw6nT58GABgZGeHOnTvIkiVLshVGRERElFy++higpk2bIjw8HACwYsUK2NjYJFtRcbm4uEClUsX76927d4LtfX1947W1sLBIkVqJiIgobfjqHiDNQdC2trbo3Lkz6tSpA0tLy+SsDQBw7tw5qNVq5fb169dRo0YNtGjRItFlbG1tcfv2beV2QrvqiIiIyHCl+oOgM2fOrHV78uTJyJMnDypVqpToMiqVCg4ODjqrgYiIiH4sXx2AFi5ciIEDB+r1IOj379/jr7/+wsCBAz/bqxMZGQlnZ2fExsaiePHimDhxIgoVKpQsNREREVHa89UBqGzZsloHQd++fRtZs2ZNtsISsn37doSGhqJTp06JtsmfPz+WL1+OokWLIiwsDNOmTUPZsmVx48aNeFev14iOjkZ0dLRyW3OsExEREf2YknQtsAcPHsDMzAzTp0/Hf//9BwAoVKgQunTpkuhuMV1YtmwZ6tSpA0dHx0TblClTBmXKlFFuly1bFgULFsSiRYvw+++/J7jMpEmTMG7cOJ3XS0RERKlTkq4F9vLlS+TNmxc+Pj549eoVXr16hRkzZiB37ty4cOGCrmsEADx8+BAHDhxA165dv2k5U1NTFCtWDPfu3Uu0jbe3N8LCwpS/x48ff2+5RERElIolqQdowIABaNiwIZYsWQITk4+r+PDhA7p27YoBAwbg6NGjOi0S+HjqfZYsWVCvXr1vWk6tVuPatWuoW7duom3Mzc1hbm7+vSUSERFRGpGkAHT+/Hmt8AMAJiYmGDp0KEqUKKGz4jRiY2OxYsUKdOzYUes+gY9nnGXPnh2TJk0CAIwfPx4//fQT8ubNi9DQUEydOhUPHz785p4jIiIi+nElKQDZ2tri0aNHKFCggNb0x48fJ8sAiQcOHMCjR4/QuXPnePMePXoEI6P/7cl7/fo1unXrhsDAQGTIkAGenp44efIk3NzcdF4XERERpU1JCkCtWrVCly5dlDOsAODEiRMYMmQI2rRpo9MCAaBmzZoQkQTnHT58WOu2j48PfHx8dF4DERER/TiSFICmTZumjPfz4cMHAB8PNu7ZsycmT56s0wKJiIiIdC1JAcjMzAyzZs3CpEmT4O/vDwDIkycPrKysdFocERERUXJIUgDSsLKyQpEiRXRVCxEREVGKSNI4QERERERpGQMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBYQAiIiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBYQAiIiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBYQAiIiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcBiAiIiIyOAwABEREZHBYQAiIiIig8MARERERAaHAYiIiIgMDgMQERERGRwGICIiIjI4DEBERERkcFJ9ABo7dixUKpXWX4ECBT67zKZNm1CgQAFYWFigSJEi2LVrVwpVS0RERGlBqg9AAFCoUCE8f/5c+Tt+/HiibU+ePIk2bdqgS5cuuHTpEho3bozGjRvj+vXrKVgxERERpWZpIgCZmJjAwcFB+bO3t0+07axZs1C7dm0MGTIEBQsWxO+//47ixYtj7ty5KVgxERERpWZpIgDdvXsXjo6OyJ07N9q2bYtHjx4l2vbUqVOoXr261rRatWrh1KlTiS4THR2N8PBwrT8iIiL6caX6AFS6dGn4+vpiz549WLBgAR48eIAKFSogIiIiwfaBgYHImjWr1rSsWbMiMDAw0fuYNGkS7OzslD8nJyedPgYiIiJKXVJ9AKpTpw5atGiBokWLolatWti1axdCQ0OxceNGnd2Ht7c3wsLClL/Hjx/rbN1ERESU+pjou4BvlT59euTLlw/37t1LcL6DgwNevHihNe3FixdwcHBIdJ3m5uYwNzfXaZ1ERESUeqX6HqBPRUZGwt/fH9myZUtwfpkyZeDn56c1bf/+/ShTpkxKlEdERERpQKoPQIMHD8aRI0cQEBCAkydPokmTJjA2NkabNm0AAB06dIC3t7fSvl+/ftizZw+mT5+OW7duYezYsTh//jz69Omjr4dAREREqUyq3wX25MkTtGnTBiEhIcicOTPKly+P06dPI3PmzACAR48ewcjofzmubNmyWLt2LUaOHInffvsNrq6u2L59OwoXLqyvh0BERESpTKoPQOvXr//s/MOHD8eb1qJFC7Ro0SKZKiIiIqK0LtXvAiMiIiLSNQYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBocBiIiIiAwOAxAREREZHAYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBocBiIiIiAwOAxAREREZHAYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBocBiIiIiAwOAxAREREZHAYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBocBiIiIiAwOAxAREREZHAYgIiIiMjgMQERERGRwGICIiIjI4DAAERERkcFhACIiIiKDwwBEREREBifVB6BJkyahZMmSsLGxQZYsWdC4cWPcvn37s8v4+vpCpVJp/VlYWKRQxURERJTapfoAdOTIEfTu3RunT5/G/v37ERMTg5o1ayIqKuqzy9na2uL58+fK38OHD1OoYiIiIkrtTPRdwJfs2bNH67avry+yZMmCCxcuoGLFiokup1Kp4ODgkNzlERERURqU6nuAPhUWFgYAyJgx42fbRUZGwtnZGU5OTmjUqBFu3LiRaNvo6GiEh4dr/REREdGPK00FoNjYWPTv3x/lypVD4cKFE22XP39+LF++HDt27MBff/2F2NhYlC1bFk+ePEmw/aRJk2BnZ6f8OTk5JddDICIiolQgTQWg3r174/r161i/fv1n25UpUwYdOnSAh4cHKlWqhK1btyJz5sxYtGhRgu29vb0RFham/D1+/Dg5yiciIqJUItUfA6TRp08f/Pvvvzh69Chy5MjxTcuampqiWLFiuHfvXoLzzc3NYW5urosyiYiIKA1I9T1AIoI+ffpg27ZtOHjwIHLlyvXN61Cr1bh27RqyZcuWDBUSERFRWpPqe4B69+6NtWvXYseOHbCxsUFgYCAAwM7ODpaWlgCADh06IHv27Jg0aRIAYPz48fjpp5+QN29ehIaGYurUqXj48CG6du2qt8dBREREqUeqD0ALFiwAAFSuXFlr+ooVK9CpUycAwKNHj2Bk9L/OrNevX6Nbt24IDAxEhgwZ4OnpiZMnT8LNzS2lyiYiIqJULNUHIBH5YpvDhw9r3fbx8YGPj08yVURERERpXao/BoiIiIhI1xiAiIiIyOAwABEREZHB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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.title(\"Top 5 Offensive Players and their Offensive Stat\")\n",
"off_plot = sns.barplot(data=df_offense.head(), x=\"player_name\",y=\"offense_stat\",errorbar=None)\n",
"plt.xticks(df_offense.head().index,rotation=45)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"id": "c60d07cf-bc4a-4151-bf70-7724cca89628",
"metadata": {},
"source": [
"### Results\n",
"I found that the best offensive player is Stephen Curry. This makes sense as he is known as one of the best offensive players in the NBA and has been for years. The next best offensive players are Chris Paul, James Harden, Isaiah Thomas, and LeBron James. These are all guards, and LeBron James who has pretty much played every position in his career that are best on offense so this also makes sense. I think that using the data points of raptor offense and predator offense were useful as it outputted a list of some of the best offensive players from 2014-2022."
]
},
{
"cell_type": "markdown",
"id": "9abb60c3-4aa0-45cf-bf6f-dbc2302ed7ea",
"metadata": {},
"source": [
"#### Results from Graph\n",
"This graph shows the difference between Stephen Curry, Chris Paul, and everyone else. This shows the top 5 offensive players in the NBA from 2014-2022. The offense_stat is the value of raptor_offense and predator_offense stats added together. It is interesting to note that the majority of the best offensive players play point guard or shooting guard."
]
},
{
"cell_type": "markdown",
"id": "702dbab9-27e7-4214-9639-ab2391a15bb6",
"metadata": {},
"source": [
"## Third Research Question: Who is the best defensive player in the NBA?"
]
},
{
"cell_type": "markdown",
"id": "ade012cc-5381-4dee-8fde-d66de63fcbc2",
"metadata": {},
"source": [
"## Methods"
]
},
{
"cell_type": "markdown",
"id": "b7036e91-71f5-415b-8752-460b28529d25",
"metadata": {},
"source": [
"**What I did:** \n",
"This is very similar to the best offensive stats. I only allowed players with 3000 minutes played which is the same pool of players that I included in seeing who the best offensive player was by making the players_over_3000 dataframe. This time I looked at the data for raptor defense and predator defense. I took the average of these two data points and added the number together. This gives a good representation of how effective a player is on defense. These are good data values to see who the best defensive players are."
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "5aca0be4-035f-4de2-a955-b9584221eccd",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>defense_stat</th>\n",
" </tr>\n",
" <tr>\n",
" <th>player_name</th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Draymond Green</th>\n",
" <td>10.787943</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Joakim Noah</th>\n",
" <td>9.358453</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Anthony Davis</th>\n",
" <td>7.895150</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marc Gasol</th>\n",
" <td>6.534351</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Paul George</th>\n",
" <td>6.408697</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Paul Millsap</th>\n",
" <td>5.699113</td>\n",
" </tr>\n",
" <tr>\n",
" <th>George Hill</th>\n",
" <td>5.241234</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Giannis Antetokounmpo</th>\n",
" <td>4.803693</td>\n",
" </tr>\n",
" <tr>\n",
" <th>PJ Tucker</th>\n",
" <td>4.780241</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Serge Ibaka</th>\n",
" <td>4.703840</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marcin Gortat</th>\n",
" <td>4.511971</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jrue Holiday</th>\n",
" <td>4.421153</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chris Paul</th>\n",
" <td>4.249789</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nikola Jokic</th>\n",
" <td>4.021482</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Marcus Smart</th>\n",
" <td>3.850867</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bam Adebayo</th>\n",
" <td>3.707044</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jimmy Butler</th>\n",
" <td>3.183364</td>\n",
" </tr>\n",
" <tr>\n",
" <th>DeAndre Jordan</th>\n",
" <td>3.154674</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kyle Lowry</th>\n",
" <td>3.141026</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Otto Porter Jr.</th>\n",
" <td>2.968337</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Pascal Siakam</th>\n",
" <td>2.750881</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Mikal Bridges</th>\n",
" <td>2.670235</td>\n",
" </tr>\n",
" <tr>\n",
" <th>David West</th>\n",
" <td>2.666690</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Stephen Curry</th>\n",
" <td>2.582205</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Donovan Mitchell</th>\n",
" <td>2.433277</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kevin Love</th>\n",
" <td>2.424493</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jaylen Brown</th>\n",
" <td>2.380194</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jayson Tatum</th>\n",
" <td>2.100925</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dorian Finney-Smith</th>\n",
" <td>2.022662</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chris Bosh</th>\n",
" <td>1.673919</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Blake Griffin</th>\n",
" <td>1.627615</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Trevor Ariza</th>\n",
" <td>1.546710</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kemba Walker</th>\n",
" <td>1.342204</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Andrew Wiggins</th>\n",
" <td>1.244490</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nicolas Batum</th>\n",
" <td>0.968720</td>\n",
" </tr>\n",
" <tr>\n",
" <th>James Harden</th>\n",
" <td>0.769140</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Klay Thompson</th>\n",
" <td>0.543766</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Russell Westbrook</th>\n",
" <td>0.523426</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Ben Simmons</th>\n",
" <td>0.456007</td>\n",
" </tr>\n",
" <tr>\n",
" <th>LeBron James</th>\n",
" <td>0.354197</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wesley Matthews</th>\n",
" <td>0.299899</td>\n",
" </tr>\n",
" <tr>\n",
" <th>CJ McCollum</th>\n",
" <td>-0.060706</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bradley Beal</th>\n",
" <td>-0.200945</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Khris Middleton</th>\n",
" <td>-0.477710</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jalen Brunson</th>\n",
" <td>-0.508995</td>\n",
" </tr>\n",
" <tr>\n",
" <th>John Wall</th>\n",
" <td>-0.695989</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Chandler Parsons</th>\n",
" <td>-0.873292</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kevin Durant</th>\n",
" <td>-0.913675</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Devin Booker</th>\n",
" <td>-0.916546</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Lance Stephenson</th>\n",
" <td>-1.036529</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Monta Ellis</th>\n",
" <td>-1.169090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tobias Harris</th>\n",
" <td>-1.576114</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Karl-Anthony Towns</th>\n",
" <td>-1.776151</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Damian Lillard</th>\n",
" <td>-2.258608</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tyrese Maxey</th>\n",
" <td>-2.419741</td>\n",
" </tr>\n",
" <tr>\n",
" <th>JR Smith</th>\n",
" <td>-2.516657</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kyrie Irving</th>\n",
" <td>-3.997132</td>\n",
" </tr>\n",
" <tr>\n",
" <th>DeMar DeRozan</th>\n",
" <td>-4.334230</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Joe Johnson</th>\n",
" <td>-4.882167</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Isaiah Thomas</th>\n",
" <td>-6.412895</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" defense_stat\n",
"player_name \n",
"Draymond Green 10.787943\n",
"Joakim Noah 9.358453\n",
"Anthony Davis 7.895150\n",
"Marc Gasol 6.534351\n",
"Paul George 6.408697\n",
"Paul Millsap 5.699113\n",
"George Hill 5.241234\n",
"Giannis Antetokounmpo 4.803693\n",
"PJ Tucker 4.780241\n",
"Serge Ibaka 4.703840\n",
"Marcin Gortat 4.511971\n",
"Jrue Holiday 4.421153\n",
"Chris Paul 4.249789\n",
"Nikola Jokic 4.021482\n",
"Marcus Smart 3.850867\n",
"Bam Adebayo 3.707044\n",
"Jimmy Butler 3.183364\n",
"DeAndre Jordan 3.154674\n",
"Kyle Lowry 3.141026\n",
"Otto Porter Jr. 2.968337\n",
"Pascal Siakam 2.750881\n",
"Mikal Bridges 2.670235\n",
"David West 2.666690\n",
"Stephen Curry 2.582205\n",
"Donovan Mitchell 2.433277\n",
"Kevin Love 2.424493\n",
"Jaylen Brown 2.380194\n",
"Jayson Tatum 2.100925\n",
"Dorian Finney-Smith 2.022662\n",
"Chris Bosh 1.673919\n",
"Blake Griffin 1.627615\n",
"Trevor Ariza 1.546710\n",
"Kemba Walker 1.342204\n",
"Andrew Wiggins 1.244490\n",
"Nicolas Batum 0.968720\n",
"James Harden 0.769140\n",
"Klay Thompson 0.543766\n",
"Russell Westbrook 0.523426\n",
"Ben Simmons 0.456007\n",
"LeBron James 0.354197\n",
"Wesley Matthews 0.299899\n",
"CJ McCollum -0.060706\n",
"Bradley Beal -0.200945\n",
"Khris Middleton -0.477710\n",
"Jalen Brunson -0.508995\n",
"John Wall -0.695989\n",
"Chandler Parsons -0.873292\n",
"Kevin Durant -0.913675\n",
"Devin Booker -0.916546\n",
"Lance Stephenson -1.036529\n",
"Monta Ellis -1.169090\n",
"Tobias Harris -1.576114\n",
"Karl-Anthony Towns -1.776151\n",
"Damian Lillard -2.258608\n",
"Tyrese Maxey -2.419741\n",
"JR Smith -2.516657\n",
"Kyrie Irving -3.997132\n",
"DeMar DeRozan -4.334230\n",
"Joe Johnson -4.882167\n",
"Isaiah Thomas -6.412895"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"players_over_3000 = df[df.mp>3000]\n",
"eligible_players = players_over_3000.groupby(\"player_name\")\n",
"defense_stats= eligible_players[[\"raptor_defense\",\"predator_defense\"]].mean()\n",
"def_stat = defense_stats.sum(axis=1).sort_values(ascending=False)\n",
"df_defense = pd.DataFrame(def_stat)\n",
"df_defense.columns = [\"defense_stat\"]\n",
"df_defense"
]
},
{
"cell_type": "code",
"execution_count": 38,
"id": "afe7a597-ce41-45f5-89f1-b82064088890",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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9+6VTp06xTosVESkT58+AkA2bdoU6/xPnz7J9OnTpWDBgmJqairp0qUTV1dXmTBhggQEBCjLaffJL23btk1q1aol9vb2YmJiItmyZZOePXvKixcvvvn8fv/9d2X/zpcvn6xevVoZ0htdXI8d2+t37NgxcXV1FRMTE8mRI4d4enrGep+xCQ4OlrZt24qNjY0AULZpfPc7rUuXLknTpk0lffr0YmpqKk5OTtKyZUud92BcQ7Pjs19oderUSee9am5uLs7OztKsWTPZtm2bREZGxrre0aNHpXbt2mJtbS1mZmaSM2dO6dy5s86pIL52iob4PD/tNv9yyPWXz/vw4cPSuHFjyZQpk5iYmEimTJmkTZs2cvv2bWWduLaziMiKFSsEgFhaWsrHjx9jfb7xqTc2V65ckWHDhknx4sXF1tZWjIyMJGPGjNKiRQu5ePGizrJx7Tvf85719fVV9l2kgmHaGpEk7PFGeqHRaNC3b9+v/koiio/Bgwfj999/h5+fn9KUTUSkb+wzQ0TxEhoaig0bNqBZs2YMMkSUrLDPDBF91atXr3Do0CFs27YNb968wcCBA/VdEhGRDoYZIvqqGzduoF27drC3t8eCBQviPMcGEZG+sM8MERERqRr7zBAREZGqMcwQERGRqqX4PjNRUVF4/vw5LC0tU+UpnomIiNRIRBAUFIRMmTLFONnol1J8mHn+/HmMC9wRERGROjx58uSrF/QFUkGY0V6E8cmTJ8ql3ImIiCh5CwwMRNasWXUuphyXFB9mtIeWrKysGGaIiIhUJj5dRNgBmIiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUzUjfBSQnrsPW6bsE1bows6O+SyAiolSKLTNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqeg0zx48fR8OGDZEpUyZoNBrs2rVLZ76IYOzYsciYMSPSpEmDGjVq4M6dO/oploiIiJIlvYaZkJAQFClSBIsXL451/owZM7BgwQJ4enrizJkzsLCwQO3atREaGprElRIREVFyZaTPB69bty7q1q0b6zwRwbx58/Dbb7+hcePGAIB169bBwcEBu3btQuvWrZOyVCIiIkqmkm2fmQcPHsDPzw81atRQpllbW6N06dI4depUnOuFhYUhMDBQ54+IiIhSrmQbZvz8/AAADg4OOtMdHByUebHx8PCAtbW18pc1a9afWicRERHpV7INMwnl7u6OgIAA5e/Jkyf6LomIiIh+omQbZhwdHQEAL1++1Jn+8uVLZV5sTE1NYWVlpfNHREREKVeyDTPZs2eHo6MjDh8+rEwLDAzEmTNnULZsWT1WRkRERMmJXkczBQcH4+7du8rtBw8e4N9//4WtrS2yZcuGQYMGYfLkycidOzeyZ8+OMWPGIFOmTHBzc9Nf0URERJSs6DXMnD9/HlWrVlVuDxkyBADQqVMnrFmzBsOHD0dISAh++eUXvH//HhUqVMD+/fthZmamr5KJiIgomdGIiOi7iJ8pMDAQ1tbWCAgI+Gb/Gddh65KoqpTnwsyO+i6BiIhSkO/5/k62fWaIiIiI4oNhhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFSNYYaIiIhUjWGGiIiIVI1hhoiIiFTNSN8FEMXGddg6fZegahdmdtR3CURESYYtM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGoMM0RERKRqDDNERESkagwzREREpGrJOsxERkZizJgxyJ49O9KkSYOcOXNi0qRJEBF9l0ZERETJhJG+C/ia6dOnY+nSpVi7di0KFiyI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9vT0xK+//oq2bdsiPDz88x0ZGaFbt26YOXNmohZIRERE9DUJCjPm5uZYsmQJZs6ciXv37gEAcubMCQsLi0QtjoiIiOhbEhRmtCwsLFC4cOHEqoWIiIjouyWozwwRERFRcsEwQ0RERKrGMENERESqpqowM23aNGg0GgwaNEjfpRAREVEyoZowc+7cOSxbtowdjomIiEiHKsJMcHAw2rVrhxUrVuhcQoGIiIhIFWGmb9++qF+/PmrUqPHNZcPCwhAYGKjzR0RERCnXD51nJils3rwZFy9exLlz5+K1vIeHByZMmPCTqyIiIqLkIlm3zDx58gQDBw7Exo0bYWZmFq913N3dERAQoPw9efLkJ1dJRERE+pSsW2YuXLiAV69eoXjx4sq0yMhIHD9+HIsWLUJYWBgMDQ111jE1NYWpqWlSl0pERER6kqzDTPXq1XH16lWdaV26dEG+fPkwYsSIGEGGiIiIUp9kHWYsLS1RqFAhnWkWFhZInz59jOlERESUOiXrPjNERERE35KsW2Zi4+Pjo+8SiIiIKBlhywwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREakawwwRERGpGsMMERERqRrDDBEREalasg8zHh4eKFmyJCwtLWFvbw83NzfcunVL32URERFRMpHsw8yxY8fQt29fnD59GgcPHkR4eDhq1aqFkJAQfZdGREREyYCRvgv4lv379+vcXrNmDezt7XHhwgVUqlRJT1URERFRcpHsw8yXAgICAAC2trax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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.title(\"Top 5 Defensive Players and their Defensive Stat\")\n",
"def_plot = sns.barplot(data=df_defense.head(), x=\"player_name\",y=\"defense_stat\",errorbar=None)\n",
"plt.xticks(df_defense.head().index,rotation=45)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"id": "8793880e-f0cb-4304-bdad-d54f25a5b426",
"metadata": {},
"source": [
"### Results\n",
"I found that the best defensive player from 2014-2022 was Draymond Green. This makes sense as he has won the Defensive Player Of The Year award and is known primarily for his defense. He is known as one of the best defensive players in the league. I am not surprised to see Draymond Green be the number one ranked defensive player. The three next best defensive players are Anthony Davis, Joakim Noah, and Paul George. These players are also known for their defense, so it makes sense that they are rated so highly. It is interesting to note that 4 of the top 5 players are Power Forwards or Centers which also shows that this could lead to research on whether Power Forwards and Centers generally play the best defense."
]
},
{
"cell_type": "markdown",
"id": "90e25901-eb61-42cc-9d11-742ba515bfd9",
"metadata": {},
"source": [
"#### Results from Graph\n",
"This graph shows the difference between Draymond Green and everyone else. This shows the top 5 defensive players in the NBA from 2014-2022. The defense_stat is the value of raptor_defense and predator_defense stats added together."
]
},
{
"cell_type": "markdown",
"id": "infectious-symbol",
"metadata": {},
"source": [
"# Discussion"
]
},
{
"cell_type": "markdown",
"id": "furnished-camping",
"metadata": {
"code_folding": []
},
"source": [
"## Considerations"
]
},
{
"cell_type": "markdown",
"id": "27b18f33-f5fc-4eda-a0d2-1be37c5b6d76",
"metadata": {},
"source": [
"My results give an accurate depiction of showing who is better between Kevin Durant and LeBron James and who the best offensive and defensive players in the NBA are. Determining who is better between Kevin Durant and LeBron James is accurate as I used offensive, defensive, and overall impact data for both players and compared them. I decided to add all of the values together as I thought that would accurately determine who has been better. A person could use other data not given in the data set as there could be other metrics that better capture who the better player is. In regard to who the best offensive and defensive players are in the NBA, the results are accurate as I used 2 different data points for offense and 2 data points for defense. This makes the data give the overall best offensive and defensive player. Also, the players given at the top of the best offensive and defensive players lists are known for their skill on that side of the court which further suggests that the data is accurate.\n",
"\n",
"Some limitations of the data set are that there are other statistics that were not factored in the data. Also, this compares players only by specific data points and does not factor in how they effect their teammates which is very important in determining how good a player is. This includes the leadership a player brings to their team and how that elevates their teammates. Another limitation is that I used 3000 or more minutes played as a qualification to be considered. There could be good players that played 2999 minutes and were not counted. The other limitation is that the data goes from 2014-2022. This is not recent enough as we are in 2025 and does not include data from the previous 2-3 seasons. Also, it is necessary to note that it does not include data from before 2014. This is a problem when discussing LeBron James and Kevin Durant as they both played prior to 2014.\n",
"\n",
"There are no known biases in the data as it does not factor in personal opinions of players."
]
},
{
"cell_type": "markdown",
"id": "beneficial-invasion",
"metadata": {},
"source": [
"## Summary"
]
},
{
"cell_type": "markdown",
"id": "b2c65367-4696-4cb5-81c3-faaa9cfc7b0d",
"metadata": {},
"source": [
"I learned that my media consumption has led me to decide to use this data set. I see a lot of NBA media so I was interested in using NBA data for this project.\n",
"\n",
"When reflecting on this project, this data could definitely be used by NBA teams to decide which players they should try to acquire. In the off-season teams are allowed to sign free agents and trade for players. This data could allow teams to realize who the better player is and acquire that player.\n",
"\n",
"I learned that LeBron James is better than Kevin Durant both offensively and defensively. This can make sense although it is pretty surprising that LeBron James was better on offense. Stephen Curry, Chris Paul, and James Harden were found to be the best players offensively which completely makes sense as they have been some of the best offensive players from 2014-2022. Draymond Green, Joakim Noah, and Anthony Davis were found to be the best players defensively which completely makes sense as Draymond Green and Joakim Noah were some of the best defenders from 2014-2022. Overall, I would say that the results make sense to me showing that the data was accurate.\n",
"\n",
"The most surprising thing was that LeBron James was better offensively than Kevin Durant. I assumed he would be better defensively but I was not expecting him to be better on offense. Kevin Durant is known as one of the best overall scorers and shooters so I definitely did not expect LeBron James to be better on offense. I was also surprised that Stephen Curry was rated so highly defensively. He is not thought of as one of the best defenders so this was interesting to see.\n",
"\n",
"This project will impact me when I am watching basketball in the future. I will watch Kevin Durant and LeBron James and see for myself who is better at offense. I will also watch to see how the best offensive and defensive players have changed since 2022."
]
},
{
"cell_type": "markdown",
"id": "41ca88fe-6262-474c-af0c-1f191ff4790a",
"metadata": {},
"source": [
"## Final Poster"
]
},
{
"cell_type": "markdown",
"id": "c7b9c078-dd64-40ae-b1e5-496afa39fd45",
"metadata": {},
"source": [
"The final poster is attached as the James Berent Flyer.pdf"
]
},
{
"cell_type": "markdown",
"id": "44248208-44a9-47f5-85e9-c61d4b06c9a0",
"metadata": {},
"source": [
"# Add Data Structures"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "398f3b13-0813-4052-a43f-68903048ed39",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"jupytext": {
"cell_metadata_json": true,
"text_representation": {
"extension": ".Rmd",
"format_name": "rmarkdown",
"format_version": "1.2",
"jupytext_version": "1.9.1"
}
},
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.3"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": false,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": false
},
"varInspector": {
"cols": {
"lenName": 16,
"lenType": 16,
"lenVar": 40
},
"kernels_config": {
"python": {
"delete_cmd_postfix": "",
"delete_cmd_prefix": "del ",
"library": "var_list.py",
"varRefreshCmd": "print(var_dic_list())"
},
"r": {
"delete_cmd_postfix": ") ",
"delete_cmd_prefix": "rm(",
"library": "var_list.r",
"varRefreshCmd": "cat(var_dic_list()) "
}
},
"types_to_exclude": [
"module",
"function",
"builtin_function_or_method",
"instance",
"_Feature"
],
"window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 5
}