{ "cells": [ { "cell_type": "code", "execution_count": null, "id": "eligible-business", "metadata": { "tags": [] }, "outputs": [], "source": [ "#!pip install kaggle\n", "#!pip install pandas\n", "#!pip install matplotlib\n", "#!pip install sklearn" ] }, { "cell_type": "code", "execution_count": null, "id": "limited-memorial", "metadata": {}, "outputs": [], "source": [ "!kaggle datasets download -d apoorvaappz/global-super-store-dataset" ] }, { "cell_type": "code", "execution_count": 158, "id": "aware-allah", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Archive: global-super-store-dataset.zip\n", " inflating: Global_Superstore2.csv \n", " inflating: Global_Superstore2.xlsx \n" ] } ], "source": [ "!unzip global-super-store-dataset.zip" ] }, { "cell_type": "code", "execution_count": 159, "id": "drawn-financing", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", "
Row IDOrder IDOrder DateShip DateShip ModeCustomer IDCustomer NameSegmentCityState...Product IDCategorySub-CategoryProduct NameSalesQuantityDiscountProfitShipping CostOrder Priority
032298CA-2012-12489131-07-201231-07-2012Same DayRH-19495Rick HansenConsumerNew York CityNew York...TEC-AC-10003033TechnologyAccessoriesPlantronics CS510 - Over-the-Head monaural Wir...2309.65070.0762.1845933.57Critical
126341IN-2013-7787805-02-201307-02-2013Second ClassJR-16210Justin RitterCorporateWollongongNew South Wales...FUR-CH-10003950FurnitureChairsNovimex Executive Leather Armchair, Black3709.39590.1-288.7650923.63Critical
225330IN-2013-7124917-10-201318-10-2013First ClassCR-12730Craig ReiterConsumerBrisbaneQueensland...TEC-PH-10004664TechnologyPhonesNokia Smart Phone, with Caller ID5175.17190.1919.9710915.49Medium
313524ES-2013-157934228-01-201330-01-2013First ClassKM-16375Katherine MurrayHome OfficeBerlinBerlin...TEC-PH-10004583TechnologyPhonesMotorola Smart Phone, Cordless2892.51050.1-96.5400910.16Medium
447221SG-2013-432005-11-201306-11-2013Same DayRH-9495Rick HansenConsumerDakarDakar...TEC-SHA-10000501TechnologyCopiersSharp Wireless Fax, High-Speed2832.96080.0311.5200903.04Critical
..................................................................
5128529002IN-2014-6236619-06-201419-06-2014Same DayKE-16420Katrina EdelmanCorporateKureHiroshima...OFF-FA-10000746Office SuppliesFastenersAdvantus Thumb Tacks, 12 Pack65.10050.04.50000.01Medium
5128635398US-2014-10228820-06-201424-06-2014Standard ClassZC-21910Zuschuss CarrollConsumerHoustonTexas...OFF-AP-10002906Office SuppliesAppliancesHoover Replacement Belt for Commercial Guardsm...0.44410.8-1.11000.01Medium
5128740470US-2013-15576802-12-201302-12-2013Same DayLB-16795Laurel BeltranHome OfficeOxnardCalifornia...OFF-EN-10001219Office SuppliesEnvelopes#10- 4 1/8\" x 9 1/2\" Security-Tint Envelopes22.92030.011.23080.01High
512889596MX-2012-14076718-02-201222-02-2012Standard ClassRB-19795Ross BairdHome OfficeValinhosSăo Paulo...OFF-BI-10000806Office SuppliesBindersAcco Index Tab, Economy13.44020.02.40000.00Medium
512896147MX-2012-13446022-05-201226-05-2012Second ClassMC-18100Mick CrebaggaConsumerTipitapaManagua...OFF-PA-10004155Office SuppliesPaperEaton Computer Printout Paper, 8.5 x 1161.38030.01.80000.00High
\n", "

51290 rows × 24 columns

\n", "
" ], "text/plain": [ " Row ID Order ID Order Date Ship Date Ship Mode \\\n", "0 32298 CA-2012-124891 31-07-2012 31-07-2012 Same Day \n", "1 26341 IN-2013-77878 05-02-2013 07-02-2013 Second Class \n", "2 25330 IN-2013-71249 17-10-2013 18-10-2013 First Class \n", "3 13524 ES-2013-1579342 28-01-2013 30-01-2013 First Class \n", "4 47221 SG-2013-4320 05-11-2013 06-11-2013 Same Day \n", "... ... ... ... ... ... \n", "51285 29002 IN-2014-62366 19-06-2014 19-06-2014 Same Day \n", "51286 35398 US-2014-102288 20-06-2014 24-06-2014 Standard Class \n", "51287 40470 US-2013-155768 02-12-2013 02-12-2013 Same Day \n", "51288 9596 MX-2012-140767 18-02-2012 22-02-2012 Standard Class \n", "51289 6147 MX-2012-134460 22-05-2012 26-05-2012 Second Class \n", "\n", " Customer ID Customer Name Segment City \\\n", "0 RH-19495 Rick Hansen Consumer New York City \n", "1 JR-16210 Justin Ritter Corporate Wollongong \n", "2 CR-12730 Craig Reiter Consumer Brisbane \n", "3 KM-16375 Katherine Murray Home Office Berlin \n", "4 RH-9495 Rick Hansen Consumer Dakar \n", "... ... ... ... ... \n", "51285 KE-16420 Katrina Edelman Corporate Kure \n", "51286 ZC-21910 Zuschuss Carroll Consumer Houston \n", "51287 LB-16795 Laurel Beltran Home Office Oxnard \n", "51288 RB-19795 Ross Baird Home Office Valinhos \n", "51289 MC-18100 Mick Crebagga Consumer Tipitapa \n", "\n", " State ... Product ID Category Sub-Category \\\n", "0 New York ... TEC-AC-10003033 Technology Accessories \n", "1 New South Wales ... FUR-CH-10003950 Furniture Chairs \n", "2 Queensland ... TEC-PH-10004664 Technology Phones \n", "3 Berlin ... TEC-PH-10004583 Technology Phones \n", "4 Dakar ... TEC-SHA-10000501 Technology Copiers \n", "... ... ... ... ... ... \n", "51285 Hiroshima ... OFF-FA-10000746 Office Supplies Fasteners \n", "51286 Texas ... OFF-AP-10002906 Office Supplies Appliances \n", "51287 California ... OFF-EN-10001219 Office Supplies Envelopes \n", "51288 Săo Paulo ... OFF-BI-10000806 Office Supplies Binders \n", "51289 Managua ... OFF-PA-10004155 Office Supplies Paper \n", "\n", " Product Name Sales Quantity \\\n", "0 Plantronics CS510 - Over-the-Head monaural Wir... 2309.650 7 \n", "1 Novimex Executive Leather Armchair, Black 3709.395 9 \n", "2 Nokia Smart Phone, with Caller ID 5175.171 9 \n", "3 Motorola Smart Phone, Cordless 2892.510 5 \n", "4 Sharp Wireless Fax, High-Speed 2832.960 8 \n", "... ... ... ... \n", "51285 Advantus Thumb Tacks, 12 Pack 65.100 5 \n", "51286 Hoover Replacement Belt for Commercial Guardsm... 0.444 1 \n", "51287 #10- 4 1/8\" x 9 1/2\" Security-Tint Envelopes 22.920 3 \n", "51288 Acco Index Tab, Economy 13.440 2 \n", "51289 Eaton Computer Printout Paper, 8.5 x 11 61.380 3 \n", "\n", " Discount Profit Shipping Cost Order Priority \n", "0 0.0 762.1845 933.57 Critical \n", "1 0.1 -288.7650 923.63 Critical \n", "2 0.1 919.9710 915.49 Medium \n", "3 0.1 -96.5400 910.16 Medium \n", "4 0.0 311.5200 903.04 Critical \n", "... ... ... ... ... \n", "51285 0.0 4.5000 0.01 Medium \n", "51286 0.8 -1.1100 0.01 Medium \n", "51287 0.0 11.2308 0.01 High \n", "51288 0.0 2.4000 0.00 Medium \n", "51289 0.0 1.8000 0.00 High \n", "\n", "[51290 rows x 24 columns]" ] }, "execution_count": 159, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "gssd=pd.read_csv('Global_Superstore2.csv', encoding=\"latin2\")\n", "gssd" ] }, { "cell_type": "code", "execution_count": 160, "id": "boring-consumption", "metadata": {}, "outputs": [], "source": [ "import numpy as np" ] }, { "cell_type": "code", "execution_count": 161, "id": "cathedral-frank", "metadata": {}, "outputs": [], "source": [ "gssd_train, gssd_dev, gssd_test = np.split(gssd.sample(frac=1, random_state=42), [int(.6*len(gssd)), int(.8*len(gssd))])" ] }, { "cell_type": "code", "execution_count": 162, "id": "satisfactory-venice", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "51290" ] }, "execution_count": 162, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd.shape[0] # Liczba danych w całym zbiorze" ] }, { "cell_type": "code", "execution_count": 163, "id": "united-climate", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "30774" ] }, "execution_count": 163, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd_train.shape[0] # Liczba danych w zbiorze do nauczania" ] }, { "cell_type": "code", "execution_count": 164, "id": "institutional-corpus", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "10258" ] }, "execution_count": 164, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd_dev.shape[0] # Liczba danych w zbiorze do walidacji" ] }, { "cell_type": "code", "execution_count": 165, "id": "caroline-shannon", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "10258" ] }, "execution_count": 165, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd_test.shape[0] # Liczba danych w zbiorze do testowania" ] }, { "cell_type": "code", "execution_count": 166, "id": "sublime-quarter", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", "
Row IDOrder IDOrder DateShip DateShip ModeCustomer IDCustomer NameSegmentCityState...Product IDCategorySub-CategoryProduct NameSalesQuantityDiscountProfitShipping CostOrder Priority
count51290.00000512905129051290512905129051290512905129051290...5129051290512905129051290.00000051290.00000051290.00000051290.00000051290.00000051290
uniqueNaN250351430146441590795336361094...102923173788NaNNaNNaNNaNNaN4
topNaNCA-2014-10011118-06-201422-11-2014Standard ClassPO-18850Muhammed YedwabConsumerNew York CityCalifornia...OFF-AR-10003651Office SuppliesBindersStaplesNaNNaNNaNNaNNaNMedium
freqNaN141351303077597108265189152001...35312736152227NaNNaNNaNNaNNaN29433
mean25645.50000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN246.4905813.4765450.14290828.61098226.375915NaN
std14806.29199NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN487.5653612.2787660.212280174.34097257.296804NaN
min1.00000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN0.4440001.0000000.000000-6599.9780000.000000NaN
25%12823.25000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN30.7586252.0000000.0000000.0000002.610000NaN
50%25645.50000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN85.0530003.0000000.0000009.2400007.790000NaN
75%38467.75000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN251.0532005.0000000.20000036.81000024.450000NaN
max51290.00000NaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaN22638.48000014.0000000.8500008399.976000933.570000NaN
\n", "

11 rows × 24 columns

\n", "
" ], "text/plain": [ " Row ID Order ID Order Date Ship Date Ship Mode \\\n", "count 51290.00000 51290 51290 51290 51290 \n", "unique NaN 25035 1430 1464 4 \n", "top NaN CA-2014-100111 18-06-2014 22-11-2014 Standard Class \n", "freq NaN 14 135 130 30775 \n", "mean 25645.50000 NaN NaN NaN NaN \n", "std 14806.29199 NaN NaN NaN NaN \n", "min 1.00000 NaN NaN NaN NaN \n", "25% 12823.25000 NaN NaN NaN NaN \n", "50% 25645.50000 NaN NaN NaN NaN \n", "75% 38467.75000 NaN NaN NaN NaN \n", "max 51290.00000 NaN NaN NaN NaN \n", "\n", " Customer ID Customer Name Segment City State ... \\\n", "count 51290 51290 51290 51290 51290 ... \n", "unique 1590 795 3 3636 1094 ... \n", "top PO-18850 Muhammed Yedwab Consumer New York City California ... \n", "freq 97 108 26518 915 2001 ... \n", "mean NaN NaN NaN NaN NaN ... \n", "std NaN NaN NaN NaN NaN ... \n", "min NaN NaN NaN NaN NaN ... \n", "25% NaN NaN NaN NaN NaN ... \n", "50% NaN NaN NaN NaN NaN ... \n", "75% NaN NaN NaN NaN NaN ... \n", "max NaN NaN NaN NaN NaN ... \n", "\n", " Product ID Category Sub-Category Product Name \\\n", "count 51290 51290 51290 51290 \n", "unique 10292 3 17 3788 \n", "top OFF-AR-10003651 Office Supplies Binders Staples \n", "freq 35 31273 6152 227 \n", "mean NaN NaN NaN NaN \n", "std NaN NaN NaN NaN \n", "min NaN NaN NaN NaN \n", "25% NaN NaN NaN NaN \n", "50% NaN NaN NaN NaN \n", "75% NaN NaN NaN NaN \n", "max NaN NaN NaN NaN \n", "\n", " Sales Quantity Discount Profit Shipping Cost \\\n", "count 51290.000000 51290.000000 51290.000000 51290.000000 51290.000000 \n", "unique NaN NaN NaN NaN NaN \n", "top NaN NaN NaN NaN NaN \n", "freq NaN NaN NaN NaN NaN \n", "mean 246.490581 3.476545 0.142908 28.610982 26.375915 \n", "std 487.565361 2.278766 0.212280 174.340972 57.296804 \n", "min 0.444000 1.000000 0.000000 -6599.978000 0.000000 \n", "25% 30.758625 2.000000 0.000000 0.000000 2.610000 \n", "50% 85.053000 3.000000 0.000000 9.240000 7.790000 \n", "75% 251.053200 5.000000 0.200000 36.810000 24.450000 \n", "max 22638.480000 14.000000 0.850000 8399.976000 933.570000 \n", "\n", " Order Priority \n", "count 51290 \n", "unique 4 \n", "top Medium \n", "freq 29433 \n", "mean NaN \n", "std NaN \n", "min NaN \n", "25% NaN \n", "50% NaN \n", "75% NaN \n", "max NaN \n", "\n", "[11 rows x 24 columns]" ] }, "execution_count": 166, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd.describe(include='all')" ] }, { "cell_type": "code", "execution_count": 167, "id": "committed-disease", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Binders 6152\n", "Storage 5059\n", "Art 4883\n", "Paper 3538\n", "Chairs 3434\n", "Phones 3357\n", "Furnishings 3170\n", "Accessories 3075\n", "Labels 2606\n", "Envelopes 2435\n", "Supplies 2425\n", "Fasteners 2420\n", "Bookcases 2411\n", "Copiers 2223\n", "Appliances 1755\n", "Machines 1486\n", "Tables 861\n", "Name: Sub-Category, dtype: int64" ] }, "execution_count": 167, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd[\"Sub-Category\"].value_counts()" ] }, { "cell_type": "code", "execution_count": 168, "id": "corporate-fisher", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 168, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib\n", "gssd[\"Sub-Category\"].value_counts().plot(kind=\"bar\")" ] }, { "cell_type": "code", "execution_count": 169, "id": "revised-study", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Postal Code\n" ] } ], "source": [ "#Wypisanie kolumn z wartościami NaN\n", "for col in gssd.columns:\n", " if gssd[col].isnull().values.any():\n", " print(col) " ] }, { "cell_type": "code", "execution_count": 170, "id": "checked-thought", "metadata": {}, "outputs": [], "source": [ "#Usunięcię kolumny Postal Code, ponieważ nie ma większego znaczenia dla danych, a jest w niej sporo wartości NaN\n", "gssd = gssd.dropna(axis='columns')" ] }, { "cell_type": "code", "execution_count": null, "id": "assigned-mobility", "metadata": {}, "outputs": [], "source": [ "#Normalizacja wartości float\n", "from sklearn import preprocessing\n", "flcols = gssd.select_dtypes(include=['float64']).columns\n", "x = gssd.select_dtypes(include=['float64']).values\n", "min_max_scaler = preprocessing.MinMaxScaler()\n", "x_scaled = min_max_scaler.fit_transform(x)\n", "normcols = pd.DataFrame(x_scaled, columns=flcols)\n", "for col in flcols:\n", " gssd[col] = normcols[col]" ] }, { "cell_type": "code", "execution_count": 172, "id": "stunning-metallic", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", "
Row IDOrder IDOrder DateShip DateShip ModeCustomer IDCustomer NameSegmentCityState...Product IDCategorySub-CategoryProduct NameSalesQuantityDiscountProfitShipping CostOrder Priority
032298CA-2012-12489131-07-201231-07-2012Same DayRH-19495Rick HansenConsumerNew York CityNew York...TEC-AC-10003033TechnologyAccessoriesPlantronics CS510 - Over-the-Head monaural Wir...0.10200670.0000000.4908121.000000Critical
126341IN-2013-7787805-02-201307-02-2013Second ClassJR-16210Justin RitterCorporateWollongongNew South Wales...FUR-CH-10003950FurnitureChairsNovimex Executive Leather Armchair, Black0.16383790.1176470.4207490.989353Critical
225330IN-2013-7124917-10-201318-10-2013First ClassCR-12730Craig ReiterConsumerBrisbaneQueensland...TEC-PH-10004664TechnologyPhonesNokia Smart Phone, with Caller ID0.22858690.1176470.5013310.980633Medium
313524ES-2013-157934228-01-201330-01-2013First ClassKM-16375Katherine MurrayHome OfficeBerlinBerlin...TEC-PH-10004583TechnologyPhonesMotorola Smart Phone, Cordless0.12775350.1176470.4335640.974924Medium
447221SG-2013-432005-11-201306-11-2013Same DayRH-9495Rick HansenConsumerDakarDakar...TEC-SHA-10000501TechnologyCopiersSharp Wireless Fax, High-Speed0.12512280.0000000.4607680.967298Critical
..................................................................
5128529002IN-2014-6236619-06-201419-06-2014Same DayKE-16420Katrina EdelmanCorporateKureHiroshima...OFF-FA-10000746Office SuppliesFastenersAdvantus Thumb Tacks, 12 Pack0.00285650.0000000.4403000.000011Medium
5128635398US-2014-10228820-06-201424-06-2014Standard ClassZC-21910Zuschuss CarrollConsumerHoustonTexas...OFF-AP-10002906Office SuppliesAppliancesHoover Replacement Belt for Commercial Guardsm...0.00000010.9411760.4399260.000011Medium
5128740470US-2013-15576802-12-201302-12-2013Same DayLB-16795Laurel BeltranHome OfficeOxnardCalifornia...OFF-EN-10001219Office SuppliesEnvelopes#10- 4 1/8\" x 9 1/2\" Security-Tint Envelopes0.00099330.0000000.4407490.000011High
512889596MX-2012-14076718-02-201222-02-2012Standard ClassRB-19795Ross BairdHome OfficeValinhosSăo Paulo...OFF-BI-10000806Office SuppliesBindersAcco Index Tab, Economy0.00057420.0000000.4401600.000000Medium
512896147MX-2012-13446022-05-201226-05-2012Second ClassMC-18100Mick CrebaggaConsumerTipitapaManagua...OFF-PA-10004155Office SuppliesPaperEaton Computer Printout Paper, 8.5 x 110.00269230.0000000.4401200.000000High
\n", "

51290 rows × 23 columns

\n", "
" ], "text/plain": [ " Row ID Order ID Order Date Ship Date Ship Mode \\\n", "0 32298 CA-2012-124891 31-07-2012 31-07-2012 Same Day \n", "1 26341 IN-2013-77878 05-02-2013 07-02-2013 Second Class \n", "2 25330 IN-2013-71249 17-10-2013 18-10-2013 First Class \n", "3 13524 ES-2013-1579342 28-01-2013 30-01-2013 First Class \n", "4 47221 SG-2013-4320 05-11-2013 06-11-2013 Same Day \n", "... ... ... ... ... ... \n", "51285 29002 IN-2014-62366 19-06-2014 19-06-2014 Same Day \n", "51286 35398 US-2014-102288 20-06-2014 24-06-2014 Standard Class \n", "51287 40470 US-2013-155768 02-12-2013 02-12-2013 Same Day \n", "51288 9596 MX-2012-140767 18-02-2012 22-02-2012 Standard Class \n", "51289 6147 MX-2012-134460 22-05-2012 26-05-2012 Second Class \n", "\n", " Customer ID Customer Name Segment City \\\n", "0 RH-19495 Rick Hansen Consumer New York City \n", "1 JR-16210 Justin Ritter Corporate Wollongong \n", "2 CR-12730 Craig Reiter Consumer Brisbane \n", "3 KM-16375 Katherine Murray Home Office Berlin \n", "4 RH-9495 Rick Hansen Consumer Dakar \n", "... ... ... ... ... \n", "51285 KE-16420 Katrina Edelman Corporate Kure \n", "51286 ZC-21910 Zuschuss Carroll Consumer Houston \n", "51287 LB-16795 Laurel Beltran Home Office Oxnard \n", "51288 RB-19795 Ross Baird Home Office Valinhos \n", "51289 MC-18100 Mick Crebagga Consumer Tipitapa \n", "\n", " State ... Product ID Category Sub-Category \\\n", "0 New York ... TEC-AC-10003033 Technology Accessories \n", "1 New South Wales ... FUR-CH-10003950 Furniture Chairs \n", "2 Queensland ... TEC-PH-10004664 Technology Phones \n", "3 Berlin ... TEC-PH-10004583 Technology Phones \n", "4 Dakar ... TEC-SHA-10000501 Technology Copiers \n", "... ... ... ... ... ... \n", "51285 Hiroshima ... OFF-FA-10000746 Office Supplies Fasteners \n", "51286 Texas ... OFF-AP-10002906 Office Supplies Appliances \n", "51287 California ... OFF-EN-10001219 Office Supplies Envelopes \n", "51288 Săo Paulo ... OFF-BI-10000806 Office Supplies Binders \n", "51289 Managua ... OFF-PA-10004155 Office Supplies Paper \n", "\n", " Product Name Sales Quantity \\\n", "0 Plantronics CS510 - Over-the-Head monaural Wir... 0.102006 7 \n", "1 Novimex Executive Leather Armchair, Black 0.163837 9 \n", "2 Nokia Smart Phone, with Caller ID 0.228586 9 \n", "3 Motorola Smart Phone, Cordless 0.127753 5 \n", "4 Sharp Wireless Fax, High-Speed 0.125122 8 \n", "... ... ... ... \n", "51285 Advantus Thumb Tacks, 12 Pack 0.002856 5 \n", "51286 Hoover Replacement Belt for Commercial Guardsm... 0.000000 1 \n", "51287 #10- 4 1/8\" x 9 1/2\" Security-Tint Envelopes 0.000993 3 \n", "51288 Acco Index Tab, Economy 0.000574 2 \n", "51289 Eaton Computer Printout Paper, 8.5 x 11 0.002692 3 \n", "\n", " Discount Profit Shipping Cost Order Priority \n", "0 0.000000 0.490812 1.000000 Critical \n", "1 0.117647 0.420749 0.989353 Critical \n", "2 0.117647 0.501331 0.980633 Medium \n", "3 0.117647 0.433564 0.974924 Medium \n", "4 0.000000 0.460768 0.967298 Critical \n", "... ... ... ... ... \n", "51285 0.000000 0.440300 0.000011 Medium \n", "51286 0.941176 0.439926 0.000011 Medium \n", "51287 0.000000 0.440749 0.000011 High \n", "51288 0.000000 0.440160 0.000000 Medium \n", "51289 0.000000 0.440120 0.000000 High \n", "\n", "[51290 rows x 23 columns]" ] }, "execution_count": 172, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gssd" ] }, { "cell_type": "code", "execution_count": null, "id": "boolean-calgary", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.6.9" } }, "nbformat": 4, "nbformat_minor": 5 }