From 51e8d99378f64fd0aff3e70106c4a50626f12457 Mon Sep 17 00:00:00 2001 From: Kamila Date: Sun, 20 Mar 2022 12:45:07 +0100 Subject: [PATCH] hw 1 data exploration --- data_exploration.ipynb | 2082 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2082 insertions(+) create mode 100644 data_exploration.ipynb diff --git a/data_exploration.ipynb b/data_exploration.ipynb new file mode 100644 index 0000000..46a2894 --- /dev/null +++ b/data_exploration.ipynb @@ -0,0 +1,2082 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Google Play Store data exploration\n", + "### Kamila Bobkowska s444517\n", + "\n", + "Link do danych: https://www.kaggle.com/datasets/lava18/google-play-store-apps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Aby ściągnąć dataset z Kaggle należy założyć konto i pobrać token który umożliwi poprawne korzystanie API. Po pobraniu tokenu trzeba go umieścić w odpowiednim miejscu w zależności czy korzystamy z Winodwsa czy Linuxa jest to inna lokalizacja.\n", + "\n", + "*Robiąc to zadanie pobrałam dane korzystając z kaggle z Windowsem, ponieważ nie mam dostępu do Linuxa oprócz komputera wydziałowego, a tam nie działają mi komendy z biblioteki kaggle.*" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "google-play-store-apps.zip: Skipping, found more recently modified local copy (use --force to force download)\n" + ] + } + ], + "source": [ + "!kaggle datasets download -d lava18/google-play-store-apps" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Archive: google-play-store-apps.zip\n", + " inflating: googleplaystore.csv \n", + " inflating: googleplaystore_user_reviews.csv \n", + " inflating: license.txt \n" + ] + } + ], + "source": [ + "!unzip -o google-play-store-apps.zip" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "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", + "
AppCategoryRatingReviewsSizeInstallsTypePriceContent RatingGenresLast UpdatedCurrent VerAndroid Ver
0Photo Editor & Candy Camera & Grid & ScrapBookART_AND_DESIGN4.115919M10,000+Free0EveryoneArt & DesignJanuary 7, 20181.0.04.0.3 and up
1Coloring book moanaART_AND_DESIGN3.996714M500,000+Free0EveryoneArt & Design;Pretend PlayJanuary 15, 20182.0.04.0.3 and up
2U Launcher Lite – FREE Live Cool Themes, Hide ...ART_AND_DESIGN4.7875108.7M5,000,000+Free0EveryoneArt & DesignAugust 1, 20181.2.44.0.3 and up
3Sketch - Draw & PaintART_AND_DESIGN4.521564425M50,000,000+Free0TeenArt & DesignJune 8, 2018Varies with device4.2 and up
4Pixel Draw - Number Art Coloring BookART_AND_DESIGN4.39672.8M100,000+Free0EveryoneArt & Design;CreativityJune 20, 20181.14.4 and up
..........................................
10836Sya9a Maroc - FRFAMILY4.53853M5,000+Free0EveryoneEducationJuly 25, 20171.484.1 and up
10837Fr. Mike Schmitz Audio TeachingsFAMILY5.043.6M100+Free0EveryoneEducationJuly 6, 20181.04.1 and up
10838Parkinson Exercices FRMEDICALNaN39.5M1,000+Free0EveryoneMedicalJanuary 20, 20171.02.2 and up
10839The SCP Foundation DB fr nn5nBOOKS_AND_REFERENCE4.5114Varies with device1,000+Free0Mature 17+Books & ReferenceJanuary 19, 2015Varies with deviceVaries with device
10840iHoroscope - 2018 Daily Horoscope & AstrologyLIFESTYLE4.539830719M10,000,000+Free0EveryoneLifestyleJuly 25, 2018Varies with deviceVaries with device
\n", + "

10841 rows × 13 columns

\n", + "
" + ], + "text/plain": [ + " App Category \\\n", + "0 Photo Editor & Candy Camera & Grid & ScrapBook ART_AND_DESIGN \n", + "1 Coloring book moana ART_AND_DESIGN \n", + "2 U Launcher Lite – FREE Live Cool Themes, Hide ... ART_AND_DESIGN \n", + "3 Sketch - Draw & Paint ART_AND_DESIGN \n", + "4 Pixel Draw - Number Art Coloring Book ART_AND_DESIGN \n", + "... ... ... \n", + "10836 Sya9a Maroc - FR FAMILY \n", + "10837 Fr. Mike Schmitz Audio Teachings FAMILY \n", + "10838 Parkinson Exercices FR MEDICAL \n", + "10839 The SCP Foundation DB fr nn5n BOOKS_AND_REFERENCE \n", + "10840 iHoroscope - 2018 Daily Horoscope & Astrology LIFESTYLE \n", + "\n", + " Rating Reviews Size Installs Type Price \\\n", + "0 4.1 159 19M 10,000+ Free 0 \n", + "1 3.9 967 14M 500,000+ Free 0 \n", + "2 4.7 87510 8.7M 5,000,000+ Free 0 \n", + "3 4.5 215644 25M 50,000,000+ Free 0 \n", + "4 4.3 967 2.8M 100,000+ Free 0 \n", + "... ... ... ... ... ... ... \n", + "10836 4.5 38 53M 5,000+ Free 0 \n", + "10837 5.0 4 3.6M 100+ Free 0 \n", + "10838 NaN 3 9.5M 1,000+ Free 0 \n", + "10839 4.5 114 Varies with device 1,000+ Free 0 \n", + "10840 4.5 398307 19M 10,000,000+ Free 0 \n", + "\n", + " Content Rating Genres Last Updated \\\n", + "0 Everyone Art & Design January 7, 2018 \n", + "1 Everyone Art & Design;Pretend Play January 15, 2018 \n", + "2 Everyone Art & Design August 1, 2018 \n", + "3 Teen Art & Design June 8, 2018 \n", + "4 Everyone Art & Design;Creativity June 20, 2018 \n", + "... ... ... ... \n", + "10836 Everyone Education July 25, 2017 \n", + "10837 Everyone Education July 6, 2018 \n", + "10838 Everyone Medical January 20, 2017 \n", + "10839 Mature 17+ Books & Reference January 19, 2015 \n", + "10840 Everyone Lifestyle July 25, 2018 \n", + "\n", + " Current Ver Android Ver \n", + "0 1.0.0 4.0.3 and up \n", + "1 2.0.0 4.0.3 and up \n", + "2 1.2.4 4.0.3 and up \n", + "3 Varies with device 4.2 and up \n", + "4 1.1 4.4 and up \n", + "... ... ... \n", + "10836 1.48 4.1 and up \n", + "10837 1.0 4.1 and up \n", + "10838 1.0 2.2 and up \n", + "10839 Varies with device Varies with device \n", + "10840 Varies with device Varies with device \n", + "\n", + "[10841 rows x 13 columns]" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "data = pd.read_csv('googleplaystore.csv')\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data exploration" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['App', 'Category', 'Rating', 'Reviews', 'Size', 'Installs', 'Type',\n", + " 'Price', 'Content Rating', 'Genres', 'Last Updated', 'Current Ver',\n", + " 'Android Ver'],\n", + " dtype='object')" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "App object\n", + "Category object\n", + "Rating float64\n", + "Reviews object\n", + "Size object\n", + "Installs object\n", + "Type object\n", + "Price object\n", + "Content Rating object\n", + "Genres object\n", + "Last Updated object\n", + "Current Ver object\n", + "Android Ver object\n", + "dtype: object" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.dtypes" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "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", + "
AppCategoryRatingReviewsSizeInstallsTypePriceContent RatingGenresLast UpdatedCurrent VerAndroid Ver
count10841108419367.00000010841108411084110840108411084010841108411083310838
unique966034NaN60024622239361201378283233
topROBLOXFAMILYNaN0Varies with device1,000,000+Free0EveryoneToolsAugust 3, 2018Varies with device4.1 and up
freq91972NaN596169515791003910040871484232614592451
meanNaNNaN4.193338NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
stdNaNNaN0.537431NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
minNaNNaN1.000000NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
25%NaNNaN4.000000NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
50%NaNNaN4.300000NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
75%NaNNaN4.500000NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
maxNaNNaN19.000000NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "
" + ], + "text/plain": [ + " App Category Rating Reviews Size Installs \\\n", + "count 10841 10841 9367.000000 10841 10841 10841 \n", + "unique 9660 34 NaN 6002 462 22 \n", + "top ROBLOX FAMILY NaN 0 Varies with device 1,000,000+ \n", + "freq 9 1972 NaN 596 1695 1579 \n", + "mean NaN NaN 4.193338 NaN NaN NaN \n", + "std NaN NaN 0.537431 NaN NaN NaN \n", + "min NaN NaN 1.000000 NaN NaN NaN \n", + "25% NaN NaN 4.000000 NaN NaN NaN \n", + "50% NaN NaN 4.300000 NaN NaN NaN \n", + "75% NaN NaN 4.500000 NaN NaN NaN \n", + "max NaN NaN 19.000000 NaN NaN NaN \n", + "\n", + " Type Price Content Rating Genres Last Updated \\\n", + "count 10840 10841 10840 10841 10841 \n", + "unique 3 93 6 120 1378 \n", + "top Free 0 Everyone Tools August 3, 2018 \n", + "freq 10039 10040 8714 842 326 \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", + " Current Ver Android Ver \n", + "count 10833 10838 \n", + "unique 2832 33 \n", + "top Varies with device 4.1 and up \n", + "freq 1459 2451 \n", + "mean NaN NaN \n", + "std NaN NaN \n", + "min NaN NaN \n", + "25% NaN NaN \n", + "50% NaN NaN \n", + "75% NaN NaN \n", + "max NaN NaN " + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.describe(include='all')" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "FAMILY 1972\n", + "GAME 1144\n", + "TOOLS 843\n", + "MEDICAL 463\n", + "BUSINESS 460\n", + "PRODUCTIVITY 424\n", + "PERSONALIZATION 392\n", + "COMMUNICATION 387\n", + "SPORTS 384\n", + "LIFESTYLE 382\n", + "FINANCE 366\n", + "HEALTH_AND_FITNESS 341\n", + "PHOTOGRAPHY 335\n", + "SOCIAL 295\n", + "NEWS_AND_MAGAZINES 283\n", + "SHOPPING 260\n", + "TRAVEL_AND_LOCAL 258\n", + "DATING 234\n", + "BOOKS_AND_REFERENCE 231\n", + "VIDEO_PLAYERS 175\n", + "EDUCATION 156\n", + "ENTERTAINMENT 149\n", + "MAPS_AND_NAVIGATION 137\n", + "FOOD_AND_DRINK 127\n", + "HOUSE_AND_HOME 88\n", + "LIBRARIES_AND_DEMO 85\n", + "AUTO_AND_VEHICLES 85\n", + "WEATHER 82\n", + "ART_AND_DESIGN 65\n", + "EVENTS 64\n", + "PARENTING 60\n", + "COMICS 60\n", + "BEAUTY 53\n", + "1.9 1\n", + "Name: Category, dtype: int64" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data['Category'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Everyone 8714\n", + "Teen 1208\n", + "Mature 17+ 499\n", + "Everyone 10+ 414\n", + "Adults only 18+ 3\n", + "Unrated 2\n", + "Name: Content Rating, dtype: int64" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data[\"Content Rating\"].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Tools 842\n", + "Entertainment 623\n", + "Education 549\n", + "Medical 463\n", + "Business 460\n", + " ... \n", + "Parenting;Brain Games 1\n", + "Health & Fitness;Education 1\n", + "Role Playing;Education 1\n", + "Puzzle;Education 1\n", + "Travel & Local;Action & Adventure 1\n", + "Name: Genres, Length: 120, dtype: int64" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data['Genres'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 10040\n", + "$0.99 148\n", + "$2.99 129\n", + "$1.99 73\n", + "$4.99 72\n", + " ... \n", + "$3.02 1\n", + "$2.95 1\n", + "$1.61 1\n", + "$14.00 1\n", + "$1.29 1\n", + "Name: Price, Length: 93, dtype: int64" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data['Price'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "App 0\n", + "Category 0\n", + "Rating 1474\n", + "Reviews 0\n", + "Size 0\n", + "Installs 0\n", + "Type 1\n", + "Price 0\n", + "Content Rating 1\n", + "Genres 0\n", + "Last Updated 0\n", + "Current Ver 8\n", + "Android Ver 3\n", + "dtype: int64" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.isnull().sum()" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "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", + "
AppCategoryRatingReviewsSizeInstallsTypePriceContent RatingGenresLast UpdatedCurrent VerAndroid Ver
0Photo Editor & Candy Camera & Grid & ScrapBookART_AND_DESIGN4.115919M10,000+Free0EveryoneArt & DesignJanuary 7, 20181.0.04.0.3 and up
1Coloring book moanaART_AND_DESIGN3.996714M500,000+Free0EveryoneArt & Design;Pretend PlayJanuary 15, 20182.0.04.0.3 and up
2U Launcher Lite – FREE Live Cool Themes, Hide ...ART_AND_DESIGN4.7875108.7M5,000,000+Free0EveryoneArt & DesignAugust 1, 20181.2.44.0.3 and up
3Sketch - Draw & PaintART_AND_DESIGN4.521564425M50,000,000+Free0TeenArt & DesignJune 8, 2018Varies with device4.2 and up
4Pixel Draw - Number Art Coloring BookART_AND_DESIGN4.39672.8M100,000+Free0EveryoneArt & Design;CreativityJune 20, 20181.14.4 and up
..........................................
9355FR CalculatorFAMILY4.072.6M500+Free0EveryoneEducationJune 18, 20171.0.04.1 and up
9356Sya9a Maroc - FRFAMILY4.53853M5,000+Free0EveryoneEducationJuly 25, 20171.484.1 and up
9357Fr. Mike Schmitz Audio TeachingsFAMILY5.043.6M100+Free0EveryoneEducationJuly 6, 20181.04.1 and up
9358The SCP Foundation DB fr nn5nBOOKS_AND_REFERENCE4.5114Varies with device1,000+Free0Mature 17+Books & ReferenceJanuary 19, 2015Varies with deviceVaries with device
9359iHoroscope - 2018 Daily Horoscope & AstrologyLIFESTYLE4.539830719M10,000,000+Free0EveryoneLifestyleJuly 25, 2018Varies with deviceVaries with device
\n", + "

9360 rows × 13 columns

\n", + "
" + ], + "text/plain": [ + " App Category \\\n", + "0 Photo Editor & Candy Camera & Grid & ScrapBook ART_AND_DESIGN \n", + "1 Coloring book moana ART_AND_DESIGN \n", + "2 U Launcher Lite – FREE Live Cool Themes, Hide ... ART_AND_DESIGN \n", + "3 Sketch - Draw & Paint ART_AND_DESIGN \n", + "4 Pixel Draw - Number Art Coloring Book ART_AND_DESIGN \n", + "... ... ... \n", + "9355 FR Calculator FAMILY \n", + "9356 Sya9a Maroc - FR FAMILY \n", + "9357 Fr. Mike Schmitz Audio Teachings FAMILY \n", + "9358 The SCP Foundation DB fr nn5n BOOKS_AND_REFERENCE \n", + "9359 iHoroscope - 2018 Daily Horoscope & Astrology LIFESTYLE \n", + "\n", + " Rating Reviews Size Installs Type Price \\\n", + "0 4.1 159 19M 10,000+ Free 0 \n", + "1 3.9 967 14M 500,000+ Free 0 \n", + "2 4.7 87510 8.7M 5,000,000+ Free 0 \n", + "3 4.5 215644 25M 50,000,000+ Free 0 \n", + "4 4.3 967 2.8M 100,000+ Free 0 \n", + "... ... ... ... ... ... ... \n", + "9355 4.0 7 2.6M 500+ Free 0 \n", + "9356 4.5 38 53M 5,000+ Free 0 \n", + "9357 5.0 4 3.6M 100+ Free 0 \n", + "9358 4.5 114 Varies with device 1,000+ Free 0 \n", + "9359 4.5 398307 19M 10,000,000+ Free 0 \n", + "\n", + " Content Rating Genres Last Updated \\\n", + "0 Everyone Art & Design January 7, 2018 \n", + "1 Everyone Art & Design;Pretend Play January 15, 2018 \n", + "2 Everyone Art & Design August 1, 2018 \n", + "3 Teen Art & Design June 8, 2018 \n", + "4 Everyone Art & Design;Creativity June 20, 2018 \n", + "... ... ... ... \n", + "9355 Everyone Education June 18, 2017 \n", + "9356 Everyone Education July 25, 2017 \n", + "9357 Everyone Education July 6, 2018 \n", + "9358 Mature 17+ Books & Reference January 19, 2015 \n", + "9359 Everyone Lifestyle July 25, 2018 \n", + "\n", + " Current Ver Android Ver \n", + "0 1.0.0 4.0.3 and up \n", + "1 2.0.0 4.0.3 and up \n", + "2 1.2.4 4.0.3 and up \n", + "3 Varies with device 4.2 and up \n", + "4 1.1 4.4 and up \n", + "... ... ... \n", + "9355 1.0.0 4.1 and up \n", + "9356 1.48 4.1 and up \n", + "9357 1.0 4.1 and up \n", + "9358 Varies with device Varies with device \n", + "9359 Varies with device Varies with device \n", + "\n", + "[9360 rows x 13 columns]" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.dropna(subset=['Rating', 'Type','Content Rating','Current Ver','Android Ver'], inplace=True)\n", + "data.reset_index(drop=True, inplace=True)\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "App 0\n", + "Category 0\n", + "Rating 0\n", + "Reviews 0\n", + "Size 0\n", + "Installs 0\n", + "Type 0\n", + "Price 0\n", + "Content Rating 0\n", + "Genres 0\n", + "Last Updated 0\n", + "Current Ver 0\n", + "Android Ver 0\n", + "dtype: int64" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.isnull().sum()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Proste wizualizacje" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "plt.figure(figsize=(20,5))\n", + "sns.distplot(data['Rating']).set(title='Ratings')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "data[\"Price\"] = data[\"Price\"].replace({'\\$': ''}, regex=True)\n", + "plt.figure(figsize=(20,5))\n", + "sns.distplot(data['Price']).set(title='Ratings')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Kolumna \"Size\"\n", + "Mimo, że ta kolumna może mieć znaczenie przy opracowwaniu danych ta kolumna zostanie pominięta ze względu na występującą w niej wartość \"Varies with device\", którą byłoby ciążko opracować. Ponadto nie można po prostu usunąć wszystkich jej wystąpień, ponieważ występują ona w ponad 1500 rzędach." + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['19M' '14M' '8.7M' '25M' '2.8M' '5.6M' '29M' '33M' '3.1M' '28M' '12M'\n", + " '20M' '21M' '37M' '5.5M' '17M' '39M' '31M' '4.2M' '23M' '6.0M' '6.1M'\n", + " '4.6M' '9.2M' '5.2M' '11M' '24M' 'Varies with device' '9.4M' '15M' '10M'\n", + " '1.2M' '26M' '8.0M' '7.9M' '56M' '57M' '35M' '54M' '201k' '3.6M' '5.7M'\n", + " '8.6M' '2.4M' '27M' '2.7M' '2.5M' '7.0M' '16M' '3.4M' '8.9M' '3.9M'\n", + " '2.9M' '38M' '32M' '5.4M' '18M' '1.1M' '2.2M' '4.5M' '9.8M' '52M' '9.0M'\n", + " '6.7M' '30M' '2.6M' '7.1M' '22M' '6.4M' '3.2M' '8.2M' '4.9M' '9.5M'\n", + " '5.0M' '5.9M' '13M' '73M' '6.8M' '3.5M' '4.0M' '2.3M' '2.1M' '42M' '9.1M'\n", + " '55M' '23k' '7.3M' '6.5M' '1.5M' '7.5M' '51M' '41M' '48M' '8.5M' '46M'\n", + " '8.3M' '4.3M' '4.7M' '3.3M' '40M' '7.8M' '8.8M' '6.6M' '5.1M' '61M' '66M'\n", + " '79k' '8.4M' '3.7M' '118k' '44M' '695k' '1.6M' '6.2M' '53M' '1.4M' '3.0M'\n", + " '7.2M' '5.8M' '3.8M' '9.6M' '45M' '63M' '49M' '77M' '4.4M' '70M' '9.3M'\n", + " '8.1M' '36M' '6.9M' '7.4M' '84M' '97M' '2.0M' '1.9M' '1.8M' '5.3M' '47M'\n", + " '556k' '526k' '76M' '7.6M' '59M' '9.7M' '78M' '72M' '43M' '7.7M' '6.3M'\n", + " '334k' '93M' '65M' '79M' '100M' '58M' '50M' '68M' '64M' '34M' '67M' '60M'\n", + " '94M' '9.9M' '232k' '99M' '624k' '95M' '8.5k' '41k' '292k' '80M' '1.7M'\n", + " '10.0M' '74M' '62M' '69M' '75M' '98M' '85M' '82M' '96M' '87M' '71M' '86M'\n", + " '91M' '81M' '92M' '83M' '88M' '704k' '862k' '899k' '378k' '4.8M' '266k'\n", + " '375k' '1.3M' '975k' '980k' '4.1M' '89M' '696k' '544k' '525k' '920k'\n", + " '779k' '853k' '720k' '713k' '772k' '318k' '58k' '241k' '196k' '857k'\n", + " '51k' '953k' '865k' '251k' '930k' '540k' '313k' '746k' '203k' '26k'\n", + " '314k' '239k' '371k' '220k' '730k' '756k' '91k' '293k' '17k' '74k' '14k'\n", + " '317k' '78k' '924k' '818k' '81k' '939k' '169k' '45k' '965k' '90M' '545k'\n", + " '61k' '283k' '655k' '714k' '93k' '872k' '121k' '322k' '976k' '206k'\n", + " '954k' '444k' '717k' '210k' '609k' '308k' '306k' '175k' '350k' '383k'\n", + " '454k' '1.0M' '70k' '812k' '442k' '842k' '417k' '412k' '459k' '478k'\n", + " '335k' '782k' '721k' '430k' '429k' '192k' '460k' '728k' '496k' '816k'\n", + " '414k' '506k' '887k' '613k' '778k' '683k' '592k' '186k' '840k' '647k'\n", + " '373k' '437k' '598k' '716k' '585k' '982k' '219k' '55k' '323k' '691k'\n", + " '511k' '951k' '963k' '25k' '554k' '351k' '27k' '82k' '208k' '551k' '29k'\n", + " '103k' '116k' '153k' '209k' '499k' '173k' '597k' '809k' '122k' '411k'\n", + " '400k' '801k' '787k' '50k' '643k' '986k' '516k' '837k' '780k' '20k'\n", + " '498k' '600k' '656k' '221k' '228k' '176k' '34k' '259k' '164k' '458k'\n", + " '629k' '28k' '288k' '775k' '785k' '636k' '916k' '994k' '309k' '485k'\n", + " '914k' '903k' '608k' '500k' '54k' '562k' '847k' '948k' '811k' '270k'\n", + " '48k' '523k' '784k' '280k' '24k' '892k' '154k' '18k' '33k' '860k' '364k'\n", + " '387k' '626k' '161k' '879k' '39k' '170k' '141k' '160k' '144k' '143k'\n", + " '190k' '376k' '193k' '473k' '246k' '73k' '253k' '957k' '420k' '72k'\n", + " '404k' '470k' '226k' '240k' '89k' '234k' '257k' '861k' '467k' '676k'\n", + " '552k' '582k' '619k']\n" + ] + } + ], + "source": [ + "print(data[\"Size\"].unique())" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1637" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data[data.Size == 'Varies with device'].shape[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [], + "source": [ + "data = data.drop(columns=[\"Size\", \"Android Ver\", \"Current Ver\", \"Last Updated\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": {}, + "outputs": [], + "source": [ + "to_lowercase = ['App', 'Category', 'Type', 'Content Rating', 'Genres']\n", + "for column in to_lowercase:\n", + " data[column] = data[column].apply(str.lower)" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "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", + "
AppCategoryRatingReviewsInstallsTypePriceContent RatingGenres
0photo editor & candy camera & grid & scrapbookart_and_design4.12.021538e-0610000free0everyoneart & design
1coloring book moanaart_and_design3.91.235953e-05500000free0everyoneart & design;pretend play
2u launcher lite – free live cool themes, hide ...art_and_design4.71.119638e-035000000free0everyoneart & design
3sketch - draw & paintart_and_design4.52.759054e-0350000000free0teenart & design
4pixel draw - number art coloring bookart_and_design4.31.235953e-05100000free0everyoneart & design;creativity
..............................
9355fr calculatorfamily4.07.676727e-08500free0everyoneeducation
9356sya9a maroc - frfamily4.54.733982e-075000free0everyoneeducation
9357fr. mike schmitz audio teachingsfamily5.03.838364e-08100free0everyoneeducation
9358the scp foundation db fr nn5nbooks_and_reference4.51.445784e-061000free0mature 17+books & reference
9359ihoroscope - 2018 daily horoscope & astrologylifestyle4.55.096144e-0310000000free0everyonelifestyle
\n", + "

9360 rows × 9 columns

\n", + "
" + ], + "text/plain": [ + " App Category \\\n", + "0 photo editor & candy camera & grid & scrapbook art_and_design \n", + "1 coloring book moana art_and_design \n", + "2 u launcher lite – free live cool themes, hide ... art_and_design \n", + "3 sketch - draw & paint art_and_design \n", + "4 pixel draw - number art coloring book art_and_design \n", + "... ... ... \n", + "9355 fr calculator family \n", + "9356 sya9a maroc - fr family \n", + "9357 fr. mike schmitz audio teachings family \n", + "9358 the scp foundation db fr nn5n books_and_reference \n", + "9359 ihoroscope - 2018 daily horoscope & astrology lifestyle \n", + "\n", + " Rating Reviews Installs Type Price Content Rating \\\n", + "0 4.1 2.021538e-06 10000 free 0 everyone \n", + "1 3.9 1.235953e-05 500000 free 0 everyone \n", + "2 4.7 1.119638e-03 5000000 free 0 everyone \n", + "3 4.5 2.759054e-03 50000000 free 0 teen \n", + "4 4.3 1.235953e-05 100000 free 0 everyone \n", + "... ... ... ... ... ... ... \n", + "9355 4.0 7.676727e-08 500 free 0 everyone \n", + "9356 4.5 4.733982e-07 5000 free 0 everyone \n", + "9357 5.0 3.838364e-08 100 free 0 everyone \n", + "9358 4.5 1.445784e-06 1000 free 0 mature 17+ \n", + "9359 4.5 5.096144e-03 10000000 free 0 everyone \n", + "\n", + " Genres \n", + "0 art & design \n", + "1 art & design;pretend play \n", + "2 art & design \n", + "3 art & design \n", + "4 art & design;creativity \n", + "... ... \n", + "9355 education \n", + "9356 education \n", + "9357 education \n", + "9358 books & reference \n", + "9359 lifestyle \n", + "\n", + "[9360 rows x 9 columns]" + ] + }, + "execution_count": 71, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data[\"Installs\"] = data[\"Installs\"].replace({'\\+': ''}, regex=True)\n", + "data[\"Installs\"] = data[\"Installs\"].replace({',': ''}, regex=True)\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "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", + "
AppCategoryRatingReviewsInstallsTypePriceContent RatingGenres
0photo editor & candy camera & grid & scrapbookart_and_design4.12.021538e-069.999000e-06free0everyoneart & design
1coloring book moanaart_and_design3.91.235953e-054.999990e-04free0everyoneart & design;pretend play
2u launcher lite – free live cool themes, hide ...art_and_design4.71.119638e-034.999999e-03free0everyoneart & design
3sketch - draw & paintart_and_design4.52.759054e-035.000000e-02free0teenart & design
4pixel draw - number art coloring bookart_and_design4.31.235953e-059.999900e-05free0everyoneart & design;creativity
..............................
9355fr calculatorfamily4.07.676727e-084.990000e-07free0everyoneeducation
9356sya9a maroc - frfamily4.54.733982e-074.999000e-06free0everyoneeducation
9357fr. mike schmitz audio teachingsfamily5.03.838364e-089.900000e-08free0everyoneeducation
9358the scp foundation db fr nn5nbooks_and_reference4.51.445784e-069.990000e-07free0mature 17+books & reference
9359ihoroscope - 2018 daily horoscope & astrologylifestyle4.55.096144e-039.999999e-03free0everyonelifestyle
\n", + "

9360 rows × 9 columns

\n", + "
" + ], + "text/plain": [ + " App Category \\\n", + "0 photo editor & candy camera & grid & scrapbook art_and_design \n", + "1 coloring book moana art_and_design \n", + "2 u launcher lite – free live cool themes, hide ... art_and_design \n", + "3 sketch - draw & paint art_and_design \n", + "4 pixel draw - number art coloring book art_and_design \n", + "... ... ... \n", + "9355 fr calculator family \n", + "9356 sya9a maroc - fr family \n", + "9357 fr. mike schmitz audio teachings family \n", + "9358 the scp foundation db fr nn5n books_and_reference \n", + "9359 ihoroscope - 2018 daily horoscope & astrology lifestyle \n", + "\n", + " Rating Reviews Installs Type Price Content Rating \\\n", + "0 4.1 2.021538e-06 9.999000e-06 free 0 everyone \n", + "1 3.9 1.235953e-05 4.999990e-04 free 0 everyone \n", + "2 4.7 1.119638e-03 4.999999e-03 free 0 everyone \n", + "3 4.5 2.759054e-03 5.000000e-02 free 0 teen \n", + "4 4.3 1.235953e-05 9.999900e-05 free 0 everyone \n", + "... ... ... ... ... ... ... \n", + "9355 4.0 7.676727e-08 4.990000e-07 free 0 everyone \n", + "9356 4.5 4.733982e-07 4.999000e-06 free 0 everyone \n", + "9357 5.0 3.838364e-08 9.900000e-08 free 0 everyone \n", + "9358 4.5 1.445784e-06 9.990000e-07 free 0 mature 17+ \n", + "9359 4.5 5.096144e-03 9.999999e-03 free 0 everyone \n", + "\n", + " Genres \n", + "0 art & design \n", + "1 art & design;pretend play \n", + "2 art & design \n", + "3 art & design \n", + "4 art & design;creativity \n", + "... ... \n", + "9355 education \n", + "9356 education \n", + "9357 education \n", + "9358 books & reference \n", + "9359 lifestyle \n", + "\n", + "[9360 rows x 9 columns]" + ] + }, + "execution_count": 72, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data[\"Reviews\"] = pd.to_numeric(data[\"Reviews\"], errors='coerce')\n", + "max_value = data[\"Reviews\"].max()\n", + "min_value = data[\"Reviews\"].min()\n", + "data[\"Reviews\"] = (data[\"Reviews\"] - min_value) / (max_value - min_value)\n", + "\n", + "data[\"Installs\"] = pd.to_numeric(data[\"Installs\"], errors='coerce')\n", + "max_value = data[\"Installs\"].max()\n", + "min_value = data[\"Installs\"].min()\n", + "data[\"Installs\"] = (data[\"Installs\"] - min_value) / (max_value - min_value)\n", + "data" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "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", + "
AppCategoryRatingReviewsInstallsTypePriceContent RatingGenres
count936093609360.0000009360.0000009360.0000009360936093609360
unique817433NaNNaNNaN2736115
toprobloxfamilyNaNNaNNaNfree0everyonetools
freq91746NaNNaNNaN871587157414732
meanNaNNaN4.1918380.0065810.017909NaNNaNNaNNaN
stdNaNNaN0.5152630.0402390.091266NaNNaNNaNNaN
minNaNNaN1.0000000.0000000.000000NaNNaNNaNNaN
25%NaNNaN4.0000000.0000020.000010NaNNaNNaNNaN
50%NaNNaN4.3000000.0000760.000500NaNNaNNaNNaN
75%NaNNaN4.5000000.0010440.005000NaNNaNNaNNaN
maxNaNNaN5.0000001.0000001.000000NaNNaNNaNNaN
\n", + "
" + ], + "text/plain": [ + " App Category Rating Reviews Installs Type Price \\\n", + "count 9360 9360 9360.000000 9360.000000 9360.000000 9360 9360 \n", + "unique 8174 33 NaN NaN NaN 2 73 \n", + "top roblox family NaN NaN NaN free 0 \n", + "freq 9 1746 NaN NaN NaN 8715 8715 \n", + "mean NaN NaN 4.191838 0.006581 0.017909 NaN NaN \n", + "std NaN NaN 0.515263 0.040239 0.091266 NaN NaN \n", + "min NaN NaN 1.000000 0.000000 0.000000 NaN NaN \n", + "25% NaN NaN 4.000000 0.000002 0.000010 NaN NaN \n", + "50% NaN NaN 4.300000 0.000076 0.000500 NaN NaN \n", + "75% NaN NaN 4.500000 0.001044 0.005000 NaN NaN \n", + "max NaN NaN 5.000000 1.000000 1.000000 NaN NaN \n", + "\n", + " Content Rating Genres \n", + "count 9360 9360 \n", + "unique 6 115 \n", + "top everyone tools \n", + "freq 7414 732 \n", + "mean NaN NaN \n", + "std NaN NaN \n", + "min NaN NaN \n", + "25% NaN NaN \n", + "50% NaN NaN \n", + "75% NaN NaN \n", + "max NaN NaN " + ] + }, + "execution_count": 75, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data.describe(include='all')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Splitting into test, train, validation sets" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data shape: (9360, 9)\n", + "Train shape: (5616, 9)\n", + "Test shape: (1872, 9)\n", + "Validation shape:(1872, 9)\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "\n", + "np.random.seed(123)\n", + "train, validate, test = np.split(data.sample(frac=1, random_state=42), [int(.6*len(data)), int(.8*len(data))])\n", + "print(f\"Data shape: {data.shape}\\nTrain shape: {train.shape}\\nTest shape: {test.shape}\\nValidation shape:{validate.shape}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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.8.1" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}