Исследовательский анализ данных — это метод анализа данных с помощью визуальных методов и всех статистических результатов. Мы узнаем, как применять эти методы, прежде чем использовать какие-либо модели машинного обучения.

Загрузка библиотек:

import numpy as np 
import pandas as pd 
import seaborn as sns 
import matplotlib.pyplot as plt 

from scipy.stats import trim_mean 

Загрузка данных:

data = pd.read_csv("state.csv") 

# Check the type of data 
print ("Type : ", type(data), "\n\n") 

# Printing Top 10 Records 
print ("Head -- \n", data.head(10)) 

# Printing last 10 Records 
print ("\n\n Tail -- \n", data.tail(10)) 

Вывод :

Type : class 'pandas.core.frame.DataFrame'


Head -- 
          State  Population  Murder.Rate Abbreviation
0      Alabama     4779736          5.7           AL
1       Alaska      710231          5.6           AK
2      Arizona     6392017          4.7           AZ
3     Arkansas     2915918          5.6           AR
4   California    37253956          4.4           CA
5     Colorado     5029196          2.8           CO
6  Connecticut     3574097          2.4           CT
7     Delaware      897934          5.8           DE
8      Florida    18801310          5.8           FL
9      Georgia     9687653          5.7           GA


 Tail -- 
             State  Population  Murder.Rate Abbreviation
40   South Dakota      814180          2.3           SD
41      Tennessee     6346105          5.7           TN
42          Texas    25145561          4.4           TX
43           Utah     2763885          2.3           UT
44        Vermont      625741          1.6           VT
45       Virginia     8001024          4.1           VA
46     Washington     6724540          2.5           WA
47  West Virginia     1852994          4.0           WV
48      Wisconsin     5686986          2.9           WI
49        Wyoming      563626          2.7           WY

Код № 1 : Добавление столбца во фрейм данных

# Adding a new column with derived data 

data['PopulationInMillions'] = data['Population']/1000000

# Changed data 
print (data.head(5)) 

Вывод :

        State  Population  Murder.Rate Abbreviation  PopulationInMillions
0     Alabama     4779736          5.7           AL              4.779736
1      Alaska      710231          5.6           AK              0.710231
2     Arizona     6392017          4.7           AZ              6.392017
3    Arkansas     2915918          5.6           AR              2.915918
4  California    37253956          4.4           CA             37.253956

Код №2 : Описание данных

data.describe() 

Вывод :

Код #3 : Информация о данных

data.info() 

Вывод :

RangeIndex: 50 entries, 0 to 49
Data columns (total 4 columns):
State           50 non-null object
Population      50 non-null int64
Murder.Rate     50 non-null float64
Abbreviation    50 non-null object
dtypes: float64(1), int64(1), object(2)
memory usage: 1.6+ KB

Код №4 : переименование заголовка столбца

# Rename column heading as it 
# has '.' in it which will create 
# problems when dealing functions 

data.rename(columns ={'Murder.Rate': 'MurderRate'}, inplace = True) 

# Lets check the column headings 
list(data) 

Вывод :

['State', 'Population', 'MurderRate', 'Abbreviation']

Код №5 : Вычисление среднего

Population_mean = data.Population.mean() 
print ("Population Mean : ", Population_mean) 

MurderRate_mean = data.MurderRate.mean() 
print ("\nMurderRate Mean : ", MurderRate_mean) 

Вывод:

Population Mean :  6162876.3

MurderRate Mean :  4.066

Код № 6 : Урезанное среднее значение

# Mean after discarding top and 
# bottom 10 % values eliminating outliers 

population_TM = trim_mean(data.Population, 0.1) 
print ("Population trimmed mean: ", population_TM) 

murder_TM = trim_mean(data.MurderRate, 0.1) 
print ("\nMurderRate trimmed mean: ", murder_TM) 

Вывод :

Population trimmed mean:  4783697.125

MurderRate trimmed mean:  3.9450000000000003

Код #7 : средневзвешенное значение

# here murder rate is weighed as per 
# the state population 

murderRate_WM = np.average(data.MurderRate, weights = data.Population) 
print ("Weighted MurderRate Mean: ", murderRate_WM) 

Вывод :

Weighted MurderRate Mean:  4.445833981123393

Код #8 : Медиана

Population_median = data.Population.median() 
print ("Population median : ", Population_median) 

MurderRate_median = data.MurderRate.median() 
print ("\nMurderRate median : ", MurderRate_median) 

Вывод :

Population median :  4436369.5

MurderRate median :  4.0