diff --git a/lab-dw-aggregating.ipynb b/lab-dw-aggregating.ipynb
index fadd718..3b01b6b 100644
--- a/lab-dw-aggregating.ipynb
+++ b/lab-dw-aggregating.ipynb
@@ -127,15 +127,1274 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 1,
"id": "449513f4-0459-46a0-a18d-9398d974c9ad",
"metadata": {
"id": "449513f4-0459-46a0-a18d-9398d974c9ad"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Unnamed: 0 | \n",
+ " Customer | \n",
+ " State | \n",
+ " Customer Lifetime Value | \n",
+ " Response | \n",
+ " Coverage | \n",
+ " Education | \n",
+ " Effective To Date | \n",
+ " EmploymentStatus | \n",
+ " Gender | \n",
+ " ... | \n",
+ " Number of Open Complaints | \n",
+ " Number of Policies | \n",
+ " Policy Type | \n",
+ " Policy | \n",
+ " Renew Offer Type | \n",
+ " Sales Channel | \n",
+ " Total Claim Amount | \n",
+ " Vehicle Class | \n",
+ " Vehicle Size | \n",
+ " Vehicle Type | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 0 | \n",
+ " DK49336 | \n",
+ " Arizona | \n",
+ " 4809.216960 | \n",
+ " No | \n",
+ " Basic | \n",
+ " College | \n",
+ " 2/18/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 9 | \n",
+ " Corporate Auto | \n",
+ " Corporate L3 | \n",
+ " Offer3 | \n",
+ " Agent | \n",
+ " 292.800000 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 1 | \n",
+ " KX64629 | \n",
+ " California | \n",
+ " 2228.525238 | \n",
+ " No | \n",
+ " Basic | \n",
+ " College | \n",
+ " 1/18/11 | \n",
+ " Unemployed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ " Personal Auto | \n",
+ " Personal L3 | \n",
+ " Offer4 | \n",
+ " Call Center | \n",
+ " 744.924331 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 2 | \n",
+ " LZ68649 | \n",
+ " Washington | \n",
+ " 14947.917300 | \n",
+ " No | \n",
+ " Basic | \n",
+ " Bachelor | \n",
+ " 2/10/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 2 | \n",
+ " Personal Auto | \n",
+ " Personal L3 | \n",
+ " Offer3 | \n",
+ " Call Center | \n",
+ " 480.000000 | \n",
+ " SUV | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 3 | \n",
+ " XL78013 | \n",
+ " Oregon | \n",
+ " 22332.439460 | \n",
+ " Yes | \n",
+ " Extended | \n",
+ " College | \n",
+ " 1/11/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 2 | \n",
+ " Corporate Auto | \n",
+ " Corporate L3 | \n",
+ " Offer2 | \n",
+ " Branch | \n",
+ " 484.013411 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 4 | \n",
+ " QA50777 | \n",
+ " Oregon | \n",
+ " 9025.067525 | \n",
+ " No | \n",
+ " Premium | \n",
+ " Bachelor | \n",
+ " 1/17/11 | \n",
+ " Medical Leave | \n",
+ " F | \n",
+ " ... | \n",
+ " NaN | \n",
+ " 7 | \n",
+ " Personal Auto | \n",
+ " Personal L2 | \n",
+ " Offer1 | \n",
+ " Branch | \n",
+ " 707.925645 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 10905 | \n",
+ " 10905 | \n",
+ " FE99816 | \n",
+ " Nevada | \n",
+ " 15563.369440 | \n",
+ " No | \n",
+ " Premium | \n",
+ " Bachelor | \n",
+ " 1/19/11 | \n",
+ " Unemployed | \n",
+ " F | \n",
+ " ... | \n",
+ " NaN | \n",
+ " 7 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer3 | \n",
+ " Web | \n",
+ " 1214.400000 | \n",
+ " Luxury Car | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 10906 | \n",
+ " 10906 | \n",
+ " KX53892 | \n",
+ " Oregon | \n",
+ " 5259.444853 | \n",
+ " No | \n",
+ " Basic | \n",
+ " College | \n",
+ " 1/6/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 6 | \n",
+ " Personal Auto | \n",
+ " Personal L3 | \n",
+ " Offer2 | \n",
+ " Branch | \n",
+ " 273.018929 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 10907 | \n",
+ " 10907 | \n",
+ " TL39050 | \n",
+ " Arizona | \n",
+ " 23893.304100 | \n",
+ " No | \n",
+ " Extended | \n",
+ " Bachelor | \n",
+ " 2/6/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 2 | \n",
+ " Corporate Auto | \n",
+ " Corporate L3 | \n",
+ " Offer1 | \n",
+ " Web | \n",
+ " 381.306996 | \n",
+ " Luxury SUV | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 10908 | \n",
+ " 10908 | \n",
+ " WA60547 | \n",
+ " California | \n",
+ " 11971.977650 | \n",
+ " No | \n",
+ " Premium | \n",
+ " College | \n",
+ " 2/13/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 4.0 | \n",
+ " 6 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer1 | \n",
+ " Branch | \n",
+ " 618.288849 | \n",
+ " SUV | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 10909 | \n",
+ " 10909 | \n",
+ " IV32877 | \n",
+ " NaN | \n",
+ " 6857.519928 | \n",
+ " NaN | \n",
+ " Basic | \n",
+ " Bachelor | \n",
+ " 1/8/11 | \n",
+ " Unemployed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 3 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer4 | \n",
+ " Web | \n",
+ " 1021.719397 | \n",
+ " SUV | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
10910 rows × 26 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Unnamed: 0 Customer State Customer Lifetime Value Response \\\n",
+ "0 0 DK49336 Arizona 4809.216960 No \n",
+ "1 1 KX64629 California 2228.525238 No \n",
+ "2 2 LZ68649 Washington 14947.917300 No \n",
+ "3 3 XL78013 Oregon 22332.439460 Yes \n",
+ "4 4 QA50777 Oregon 9025.067525 No \n",
+ "... ... ... ... ... ... \n",
+ "10905 10905 FE99816 Nevada 15563.369440 No \n",
+ "10906 10906 KX53892 Oregon 5259.444853 No \n",
+ "10907 10907 TL39050 Arizona 23893.304100 No \n",
+ "10908 10908 WA60547 California 11971.977650 No \n",
+ "10909 10909 IV32877 NaN 6857.519928 NaN \n",
+ "\n",
+ " Coverage Education Effective To Date EmploymentStatus Gender ... \\\n",
+ "0 Basic College 2/18/11 Employed M ... \n",
+ "1 Basic College 1/18/11 Unemployed F ... \n",
+ "2 Basic Bachelor 2/10/11 Employed M ... \n",
+ "3 Extended College 1/11/11 Employed M ... \n",
+ "4 Premium Bachelor 1/17/11 Medical Leave F ... \n",
+ "... ... ... ... ... ... ... \n",
+ "10905 Premium Bachelor 1/19/11 Unemployed F ... \n",
+ "10906 Basic College 1/6/11 Employed F ... \n",
+ "10907 Extended Bachelor 2/6/11 Employed F ... \n",
+ "10908 Premium College 2/13/11 Employed F ... \n",
+ "10909 Basic Bachelor 1/8/11 Unemployed M ... \n",
+ "\n",
+ " Number of Open Complaints Number of Policies Policy Type \\\n",
+ "0 0.0 9 Corporate Auto \n",
+ "1 0.0 1 Personal Auto \n",
+ "2 0.0 2 Personal Auto \n",
+ "3 0.0 2 Corporate Auto \n",
+ "4 NaN 7 Personal Auto \n",
+ "... ... ... ... \n",
+ "10905 NaN 7 Personal Auto \n",
+ "10906 0.0 6 Personal Auto \n",
+ "10907 0.0 2 Corporate Auto \n",
+ "10908 4.0 6 Personal Auto \n",
+ "10909 0.0 3 Personal Auto \n",
+ "\n",
+ " Policy Renew Offer Type Sales Channel Total Claim Amount \\\n",
+ "0 Corporate L3 Offer3 Agent 292.800000 \n",
+ "1 Personal L3 Offer4 Call Center 744.924331 \n",
+ "2 Personal L3 Offer3 Call Center 480.000000 \n",
+ "3 Corporate L3 Offer2 Branch 484.013411 \n",
+ "4 Personal L2 Offer1 Branch 707.925645 \n",
+ "... ... ... ... ... \n",
+ "10905 Personal L1 Offer3 Web 1214.400000 \n",
+ "10906 Personal L3 Offer2 Branch 273.018929 \n",
+ "10907 Corporate L3 Offer1 Web 381.306996 \n",
+ "10908 Personal L1 Offer1 Branch 618.288849 \n",
+ "10909 Personal L1 Offer4 Web 1021.719397 \n",
+ "\n",
+ " Vehicle Class Vehicle Size Vehicle Type \n",
+ "0 Four-Door Car Medsize NaN \n",
+ "1 Four-Door Car Medsize NaN \n",
+ "2 SUV Medsize A \n",
+ "3 Four-Door Car Medsize A \n",
+ "4 Four-Door Car Medsize NaN \n",
+ "... ... ... ... \n",
+ "10905 Luxury Car Medsize A \n",
+ "10906 Four-Door Car Medsize A \n",
+ "10907 Luxury SUV Medsize NaN \n",
+ "10908 SUV Medsize A \n",
+ "10909 SUV Medsize NaN \n",
+ "\n",
+ "[10910 rows x 26 columns]"
+ ]
+ },
+ "execution_count": 1,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import pandas as pd\n",
+ "\n",
+ "url = \"https://raw.githubusercontent.com/data-bootcamp-v4/data/main/marketing_customer_analysis.csv\"\n",
+ "df = pd.read_csv(url)\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "323b29ef",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Index(['Unnamed: 0', 'Customer', 'State', 'Customer Lifetime Value',\n",
+ " 'Response', 'Coverage', 'Education', 'Effective To Date',\n",
+ " 'EmploymentStatus', 'Gender', 'Income', 'Location Code',\n",
+ " 'Marital Status', 'Monthly Premium Auto', 'Months Since Last Claim',\n",
+ " 'Months Since Policy Inception', 'Number of Open Complaints',\n",
+ " 'Number of Policies', 'Policy Type', 'Policy', 'Renew Offer Type',\n",
+ " 'Sales Channel', 'Total Claim Amount', 'Vehicle Class', 'Vehicle Size',\n",
+ " 'Vehicle Type'],\n",
+ " dtype='object')"
+ ]
+ },
+ "execution_count": 2,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.columns"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "id": "8f119a43",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Unnamed: 0 | \n",
+ " Customer | \n",
+ " State | \n",
+ " Customer Lifetime Value | \n",
+ " Response | \n",
+ " Coverage | \n",
+ " Education | \n",
+ " Effective To Date | \n",
+ " EmploymentStatus | \n",
+ " Gender | \n",
+ " ... | \n",
+ " Number of Open Complaints | \n",
+ " Number of Policies | \n",
+ " Policy Type | \n",
+ " Policy | \n",
+ " Renew Offer Type | \n",
+ " Sales Channel | \n",
+ " Total Claim Amount | \n",
+ " Vehicle Class | \n",
+ " Vehicle Size | \n",
+ " Vehicle Type | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 3 | \n",
+ " 3 | \n",
+ " XL78013 | \n",
+ " Oregon | \n",
+ " 22332.439460 | \n",
+ " Yes | \n",
+ " Extended | \n",
+ " College | \n",
+ " 1/11/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 2 | \n",
+ " Corporate Auto | \n",
+ " Corporate L3 | \n",
+ " Offer2 | \n",
+ " Branch | \n",
+ " 484.013411 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 8 | \n",
+ " 8 | \n",
+ " FM55990 | \n",
+ " California | \n",
+ " 5989.773931 | \n",
+ " Yes | \n",
+ " Premium | \n",
+ " College | \n",
+ " 1/19/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer2 | \n",
+ " Branch | \n",
+ " 739.200000 | \n",
+ " Sports Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 15 | \n",
+ " 15 | \n",
+ " CW49887 | \n",
+ " California | \n",
+ " 4626.801093 | \n",
+ " Yes | \n",
+ " Basic | \n",
+ " Master | \n",
+ " 1/16/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ " Special Auto | \n",
+ " Special L1 | \n",
+ " Offer2 | \n",
+ " Branch | \n",
+ " 547.200000 | \n",
+ " SUV | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 19 | \n",
+ " 19 | \n",
+ " NJ54277 | \n",
+ " California | \n",
+ " 3746.751625 | \n",
+ " Yes | \n",
+ " Extended | \n",
+ " College | \n",
+ " 2/26/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 1.0 | \n",
+ " 1 | \n",
+ " Personal Auto | \n",
+ " Personal L2 | \n",
+ " Offer2 | \n",
+ " Call Center | \n",
+ " 19.575683 | \n",
+ " Two-Door Car | \n",
+ " Large | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 27 | \n",
+ " 27 | \n",
+ " MQ68407 | \n",
+ " Oregon | \n",
+ " 4376.363592 | \n",
+ " Yes | \n",
+ " Premium | \n",
+ " Bachelor | \n",
+ " 2/28/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ " Personal Auto | \n",
+ " Personal L3 | \n",
+ " Offer2 | \n",
+ " Agent | \n",
+ " 60.036683 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 10844 | \n",
+ " 10844 | \n",
+ " FM31768 | \n",
+ " Arizona | \n",
+ " 5979.724161 | \n",
+ " Yes | \n",
+ " Extended | \n",
+ " High School or Below | \n",
+ " 2/7/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 3 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer2 | \n",
+ " Agent | \n",
+ " 547.200000 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 10852 | \n",
+ " 10852 | \n",
+ " KZ80424 | \n",
+ " Washington | \n",
+ " 8382.478392 | \n",
+ " Yes | \n",
+ " Basic | \n",
+ " Bachelor | \n",
+ " 1/27/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 2 | \n",
+ " Personal Auto | \n",
+ " Personal L2 | \n",
+ " Offer2 | \n",
+ " Call Center | \n",
+ " 791.878042 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 10872 | \n",
+ " 10872 | \n",
+ " XT67997 | \n",
+ " California | \n",
+ " 5979.724161 | \n",
+ " Yes | \n",
+ " Extended | \n",
+ " High School or Below | \n",
+ " 2/7/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 3 | \n",
+ " Personal Auto | \n",
+ " Personal L3 | \n",
+ " Offer2 | \n",
+ " Agent | \n",
+ " 547.200000 | \n",
+ " Four-Door Car | \n",
+ " Medsize | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " 10887 | \n",
+ " 10887 | \n",
+ " BY78730 | \n",
+ " Oregon | \n",
+ " 8879.790017 | \n",
+ " Yes | \n",
+ " Basic | \n",
+ " High School or Below | \n",
+ " 2/3/11 | \n",
+ " Employed | \n",
+ " F | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 7 | \n",
+ " Special Auto | \n",
+ " Special L2 | \n",
+ " Offer1 | \n",
+ " Agent | \n",
+ " 528.200860 | \n",
+ " SUV | \n",
+ " Small | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ " 10897 | \n",
+ " 10897 | \n",
+ " MM70762 | \n",
+ " Arizona | \n",
+ " 9075.768214 | \n",
+ " Yes | \n",
+ " Basic | \n",
+ " Master | \n",
+ " 1/26/11 | \n",
+ " Employed | \n",
+ " M | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 8 | \n",
+ " Personal Auto | \n",
+ " Personal L1 | \n",
+ " Offer1 | \n",
+ " Agent | \n",
+ " 158.077504 | \n",
+ " Sports Car | \n",
+ " Medsize | \n",
+ " A | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1399 rows × 26 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Unnamed: 0 Customer State Customer Lifetime Value Response \\\n",
+ "3 3 XL78013 Oregon 22332.439460 Yes \n",
+ "8 8 FM55990 California 5989.773931 Yes \n",
+ "15 15 CW49887 California 4626.801093 Yes \n",
+ "19 19 NJ54277 California 3746.751625 Yes \n",
+ "27 27 MQ68407 Oregon 4376.363592 Yes \n",
+ "... ... ... ... ... ... \n",
+ "10844 10844 FM31768 Arizona 5979.724161 Yes \n",
+ "10852 10852 KZ80424 Washington 8382.478392 Yes \n",
+ "10872 10872 XT67997 California 5979.724161 Yes \n",
+ "10887 10887 BY78730 Oregon 8879.790017 Yes \n",
+ "10897 10897 MM70762 Arizona 9075.768214 Yes \n",
+ "\n",
+ " Coverage Education Effective To Date EmploymentStatus \\\n",
+ "3 Extended College 1/11/11 Employed \n",
+ "8 Premium College 1/19/11 Employed \n",
+ "15 Basic Master 1/16/11 Employed \n",
+ "19 Extended College 2/26/11 Employed \n",
+ "27 Premium Bachelor 2/28/11 Employed \n",
+ "... ... ... ... ... \n",
+ "10844 Extended High School or Below 2/7/11 Employed \n",
+ "10852 Basic Bachelor 1/27/11 Employed \n",
+ "10872 Extended High School or Below 2/7/11 Employed \n",
+ "10887 Basic High School or Below 2/3/11 Employed \n",
+ "10897 Basic Master 1/26/11 Employed \n",
+ "\n",
+ " Gender ... Number of Open Complaints Number of Policies \\\n",
+ "3 M ... 0.0 2 \n",
+ "8 M ... 0.0 1 \n",
+ "15 F ... 0.0 1 \n",
+ "19 F ... 1.0 1 \n",
+ "27 F ... 0.0 1 \n",
+ "... ... ... ... ... \n",
+ "10844 F ... 0.0 3 \n",
+ "10852 M ... 0.0 2 \n",
+ "10872 F ... 0.0 3 \n",
+ "10887 F ... 0.0 7 \n",
+ "10897 M ... 0.0 8 \n",
+ "\n",
+ " Policy Type Policy Renew Offer Type Sales Channel \\\n",
+ "3 Corporate Auto Corporate L3 Offer2 Branch \n",
+ "8 Personal Auto Personal L1 Offer2 Branch \n",
+ "15 Special Auto Special L1 Offer2 Branch \n",
+ "19 Personal Auto Personal L2 Offer2 Call Center \n",
+ "27 Personal Auto Personal L3 Offer2 Agent \n",
+ "... ... ... ... ... \n",
+ "10844 Personal Auto Personal L1 Offer2 Agent \n",
+ "10852 Personal Auto Personal L2 Offer2 Call Center \n",
+ "10872 Personal Auto Personal L3 Offer2 Agent \n",
+ "10887 Special Auto Special L2 Offer1 Agent \n",
+ "10897 Personal Auto Personal L1 Offer1 Agent \n",
+ "\n",
+ " Total Claim Amount Vehicle Class Vehicle Size Vehicle Type \n",
+ "3 484.013411 Four-Door Car Medsize A \n",
+ "8 739.200000 Sports Car Medsize NaN \n",
+ "15 547.200000 SUV Medsize NaN \n",
+ "19 19.575683 Two-Door Car Large A \n",
+ "27 60.036683 Four-Door Car Medsize NaN \n",
+ "... ... ... ... ... \n",
+ "10844 547.200000 Four-Door Car Medsize NaN \n",
+ "10852 791.878042 NaN NaN A \n",
+ "10872 547.200000 Four-Door Car Medsize NaN \n",
+ "10887 528.200860 SUV Small A \n",
+ "10897 158.077504 Sports Car Medsize A \n",
+ "\n",
+ "[1399 rows x 26 columns]"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "data = df[(df['Total Claim Amount'] < 1000)&(df['Response']==\"Yes\")]\n",
+ "data"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "id": "2282eae7",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Policy Type | \n",
+ " Gender | \n",
+ " Monthly Premium Auto | \n",
+ " Customer Lifetime Value | \n",
+ " Total Claim Amount | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " Corporate Auto | \n",
+ " F | \n",
+ " 94.301775 | \n",
+ " 7712.628736 | \n",
+ " 433.738499 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " Corporate Auto | \n",
+ " M | \n",
+ " 92.188312 | \n",
+ " 7944.465414 | \n",
+ " 408.582459 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " Personal Auto | \n",
+ " F | \n",
+ " 98.998148 | \n",
+ " 8339.791842 | \n",
+ " 452.965929 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " Personal Auto | \n",
+ " M | \n",
+ " 91.085821 | \n",
+ " 7448.383281 | \n",
+ " 457.010178 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " Special Auto | \n",
+ " F | \n",
+ " 92.314286 | \n",
+ " 7691.584111 | \n",
+ " 453.280164 | \n",
+ "
\n",
+ " \n",
+ " 5 | \n",
+ " Special Auto | \n",
+ " M | \n",
+ " 86.343750 | \n",
+ " 8247.088702 | \n",
+ " 429.527942 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Policy Type Gender Monthly Premium Auto Customer Lifetime Value \\\n",
+ "0 Corporate Auto F 94.301775 7712.628736 \n",
+ "1 Corporate Auto M 92.188312 7944.465414 \n",
+ "2 Personal Auto F 98.998148 8339.791842 \n",
+ "3 Personal Auto M 91.085821 7448.383281 \n",
+ "4 Special Auto F 92.314286 7691.584111 \n",
+ "5 Special Auto M 86.343750 8247.088702 \n",
+ "\n",
+ " Total Claim Amount \n",
+ "0 433.738499 \n",
+ "1 408.582459 \n",
+ "2 452.965929 \n",
+ "3 457.010178 \n",
+ "4 453.280164 \n",
+ "5 429.527942 "
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "responded_df = df[df['Response'] == \"Yes\"]\n",
+ "\n",
+ "agg_results = responded_df.groupby(['Policy Type', 'Gender']).agg({\n",
+ " 'Monthly Premium Auto': 'mean',\n",
+ " 'Customer Lifetime Value': 'mean',\n",
+ " 'Total Claim Amount': 'mean'\n",
+ "}).reset_index()\n",
+ "\n",
+ "agg_results"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "a7bef980",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " State | \n",
+ " Customer_Count | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " Arizona | \n",
+ " 1937 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " California | \n",
+ " 3552 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " Nevada | \n",
+ " 993 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " Oregon | \n",
+ " 2909 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " Washington | \n",
+ " 888 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " State Customer_Count\n",
+ "0 Arizona 1937\n",
+ "1 California 3552\n",
+ "2 Nevada 993\n",
+ "3 Oregon 2909\n",
+ "4 Washington 888"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "state_counts = df.groupby('State')['Customer'].count().reset_index()\n",
+ "\n",
+ "state_counts.columns = ['State', 'Customer_Count']\n",
+ "\n",
+ "large_states = state_counts[state_counts['Customer_Count'] > 500] \\\n",
+ " .sort_values(by='Customer_Count', ascending=False)\n",
+ "\n",
+ "state_counts.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "a74834d3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " State | \n",
+ " Customer_Count | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 1 | \n",
+ " California | \n",
+ " 3552 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " Oregon | \n",
+ " 2909 | \n",
+ "
\n",
+ " \n",
+ " 0 | \n",
+ " Arizona | \n",
+ " 1937 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " Nevada | \n",
+ " 993 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " Washington | \n",
+ " 888 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " State Customer_Count\n",
+ "1 California 3552\n",
+ "3 Oregon 2909\n",
+ "0 Arizona 1937\n",
+ "2 Nevada 993\n",
+ "4 Washington 888"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# your code goes here"
+ "large_states"
]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "2e05d821",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Education | \n",
+ " Gender | \n",
+ " max | \n",
+ " min | \n",
+ " median | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " Bachelor | \n",
+ " F | \n",
+ " 73225.95652 | \n",
+ " 1904.000852 | \n",
+ " 5640.505303 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " Bachelor | \n",
+ " M | \n",
+ " 67907.27050 | \n",
+ " 1898.007675 | \n",
+ " 5548.031892 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " College | \n",
+ " F | \n",
+ " 61850.18803 | \n",
+ " 1898.683686 | \n",
+ " 5623.611187 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " College | \n",
+ " M | \n",
+ " 61134.68307 | \n",
+ " 1918.119700 | \n",
+ " 6005.847375 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " Doctor | \n",
+ " F | \n",
+ " 44856.11397 | \n",
+ " 2395.570000 | \n",
+ " 5332.462694 | \n",
+ "
\n",
+ " \n",
+ " 5 | \n",
+ " Doctor | \n",
+ " M | \n",
+ " 32677.34284 | \n",
+ " 2267.604038 | \n",
+ " 5577.669457 | \n",
+ "
\n",
+ " \n",
+ " 6 | \n",
+ " High School or Below | \n",
+ " F | \n",
+ " 55277.44589 | \n",
+ " 2144.921535 | \n",
+ " 6039.553187 | \n",
+ "
\n",
+ " \n",
+ " 7 | \n",
+ " High School or Below | \n",
+ " M | \n",
+ " 83325.38119 | \n",
+ " 1940.981221 | \n",
+ " 6286.731006 | \n",
+ "
\n",
+ " \n",
+ " 8 | \n",
+ " Master | \n",
+ " F | \n",
+ " 51016.06704 | \n",
+ " 2417.777032 | \n",
+ " 5729.855012 | \n",
+ "
\n",
+ " \n",
+ " 9 | \n",
+ " Master | \n",
+ " M | \n",
+ " 50568.25912 | \n",
+ " 2272.307310 | \n",
+ " 5579.099207 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Education Gender max min median\n",
+ "0 Bachelor F 73225.95652 1904.000852 5640.505303\n",
+ "1 Bachelor M 67907.27050 1898.007675 5548.031892\n",
+ "2 College F 61850.18803 1898.683686 5623.611187\n",
+ "3 College M 61134.68307 1918.119700 6005.847375\n",
+ "4 Doctor F 44856.11397 2395.570000 5332.462694\n",
+ "5 Doctor M 32677.34284 2267.604038 5577.669457\n",
+ "6 High School or Below F 55277.44589 2144.921535 6039.553187\n",
+ "7 High School or Below M 83325.38119 1940.981221 6286.731006\n",
+ "8 Master F 51016.06704 2417.777032 5729.855012\n",
+ "9 Master M 50568.25912 2272.307310 5579.099207"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "clv_stats = df.groupby(['Education', 'Gender'])['Customer Lifetime Value'].agg(['max', 'min', 'median']).reset_index()\n",
+ "\n",
+ "clv_stats"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "952ffaba",
+ "metadata": {},
+ "outputs": [],
+ "source": []
}
],
"metadata": {
@@ -143,7 +1402,7 @@
"provenance": []
},
"kernelspec": {
- "display_name": "Python 3 (ipykernel)",
+ "display_name": "base",
"language": "python",
"name": "python3"
},
@@ -157,7 +1416,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.9.13"
+ "version": "3.12.7"
}
},
"nbformat": 4,