Аналіз даних за допомогою Python

У цій статті ми обговоримо, як робити аналіз даних за допомогою Python. Ми обговоримо всі види аналізу даних, наприклад аналіз числових даних за допомогою NumPy, табличних даних за допомогою Pandas, візуалізації даних Matplotlib і дослідницького аналізу даних.

Аналіз даних за допомогою Python

Аналіз даних це техніка збору, перетворення та організації даних для прогнозування майбутнього та прийняття обґрунтованих рішень на основі даних. Це також допомагає знайти можливі рішення бізнес-проблем. Існує шість кроків для аналізу даних. Вони є:

  • Запитайте або вкажіть вимоги до даних
  • Підготуйте або зберіть дані
  • Очистіть і обробіть
  • Аналізуйте
  • Поділіться
  • Діяти або звітувати

Аналіз даних за допомогою Python



Примітка: Щоб дізнатися більше про ці кроки, зверніться до нашого NumPy є пакетом обробки масивів на Python і надає високопродуктивний об’єкт багатовимірного масиву та інструменти для роботи з цими масивами. Це основний пакет для наукових обчислень на Python.

Масиви в NumPy

Масив NumPy це таблиця елементів (зазвичай чисел), усіх тих самих типів, індексованих кортежем додатних цілих чисел. У Numpy кількість вимірів масиву називається рангом масиву. Кортеж цілих чисел, що визначає розмір масиву вздовж кожного виміру, відомий як форма масиву.

Створення масиву NumPy

Масиви NumPy можна створювати різними способами з різними рангами. Його також можна створити з використанням різних типів даних, таких як списки, кортежі тощо. Тип результуючого масиву виводиться з типу елементів у послідовностях. NumPy пропонує кілька функцій для створення масивів із початковим вмістом-заповнювачем. Це зводить до мінімуму необхідність вирощування масивів, дорогу операцію.

Створити масив за допомогою numpy.empty(форма, dtype=float, order=’C’)

Python3
import numpy as np b = np.empty(2, dtype = int) print('Matrix b : 
', b) a = np.empty([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.empty([3, 3]) print('
Matrix c : 
', c) 

Вихід:

Порожня матриця за допомогою панд

Порожня матриця за допомогою панд

Створити масив за допомогою numpy.zeros(shape, dtype = None, order = 'C')

Python3
import numpy as np b = np.zeros(2, dtype = int) print('Matrix b : 
', b) a = np.zeros([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.zeros([3, 3]) print('
Matrix c : 
', c) 

Вихід:

Matrix b :   [0 0]  Matrix a :   [[0 0]  [0 0]]  Matrix c :   [[0. 0. 0.]  [0. 0. 0.]  [0. 0. 0.]] 

Операції над масивами Numpy

Арифметичні операції

  • доповнення:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing addition using arithmetic operator add_ans = a+b print(add_ans) # Performing addition using numpy function add_ans = np.add(a, b) print(add_ans) # The same functions and operations can be used for # multiple matrices c = np.array([1, 2, 3, 4]) add_ans = a+b+c print(add_ans) add_ans = np.add(a, b, c) print(add_ans) 

Вихід:

[ 7 77 23 130] [ 7 77 23 130] [ 8 79 26 134] [ 7 77 23 130] 
  • віднімання:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing subtraction using arithmetic operator sub_ans = a-b print(sub_ans) # Performing subtraction using numpy function sub_ans = np.subtract(a, b) print(sub_ans) 

Вихід:

[ 3 67 3 70] [ 3 67 3 70] 
  • Множення:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing multiplication using arithmetic # operator mul_ans = a*b print(mul_ans) # Performing multiplication using numpy function mul_ans = np.multiply(a, b) print(mul_ans) 

Вихід:

[ 10 360 130 3000] [ 10 360 130 3000] 
  • Відділ:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing division using arithmetic operators div_ans = a/b print(div_ans) # Performing division using numpy functions div_ans = np.divide(a, b) print(div_ans) 

Вихід:

[ 2.5 14.4 1.3 3.33333333] [ 2.5 14.4 1.3 3.33333333] 

Для отримання додаткової інформації зверніться до нашого NumPy – Підручник з арифметичних операцій

Індексація масиву NumPy

Індексація можна зробити в NumPy, використовуючи масив як індекс. У випадку зрізу повертається представлення або поверхнева копія масиву, але в масиві індексу повертається копія вихідного масиву. Масиви Numpy можна індексувати іншими масивами або будь-якою іншою послідовністю, за винятком кортежів. Останній елемент індексується -1, останній -2 і так далі.

Індексація масиву Python NumPy

Python3
# Python program to demonstrate # the use of index arrays. import numpy as np # Create a sequence of integers from # 10 to 1 with a step of -2 a = np.arange(10, 1, -2) print('
 A sequential array with a negative step: 
',a) # Indexes are specified inside the np.array method. newarr = a[np.array([3, 1, 2 ])] print('
 Elements at these indices are:
',newarr) 

Вихід:

A sequential array with a negative step:   [10 8 6 4 2]   Elements at these indices are:  [4 8 6] 

Нарізка масиву NumPy

Розглянемо синтаксис x[obj], де x — масив, а obj — індекс. Об'єкт фрагмента є індексом у випадку основна нарізка . Базове нарізання відбувається, коли obj є:

  • об'єкт фрагмента, який має форму початок: зупинка: крок
  • ціле число
  • або кортеж об’єктів зрізу та цілих чисел

Усі масиви, згенеровані базовим нарізанням, завжди являють собою вигляд вихідного масиву.

Python3
# Python program for basic slicing. import numpy as np # Arrange elements from 0 to 19 a = np.arange(20) print('
 Array is:
 ',a) # a[start:stop:step] print('
 a[-8:17:1] = ',a[-8:17:1]) # The : operator means all elements till the end. print('
 a[10:] = ',a[10:]) 

Вихід:

Array is: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]  a[-8:17:1] = [12 13 14 15 16]  a[10:] = [10 11 12 13 14 15 16 17 18 19] 

Еліпсис також можна використовувати разом із базовим нарізанням. Еліпсис (…) — це кількість : об’єктів, необхідних для створення кортежу вибору такої ж довжини, що й розміри масиву.

Python3
# Python program for indexing using basic slicing with ellipsis import numpy as np # A 3 dimensional array. b = np.array([[[1, 2, 3],[4, 5, 6]], [[7, 8, 9],[10, 11, 12]]]) print(b[...,1]) #Equivalent to b[: ,: ,1 ] 

Вихід:

[[ 2 5]  [ 8 11]] 

Трансляція масиву NumPy

Термін мовлення стосується того, як numpy обробляє масиви з різними розмірами під час арифметичних операцій, які призводять до певних обмежень, менший масив транслюється через більший масив, щоб вони мали сумісні форми.

Припустімо, що у нас є великий набір даних, кожна дата є списком параметрів. У Numpy ми маємо 2-D масив, де кожен рядок є даними, а кількість рядків — це розмір набору даних. Припустімо, ми хочемо застосувати певний вид масштабування до всіх цих даних, кожен параметр отримує власний коефіцієнт масштабування, або скажімо, кожен параметр множиться на певний коефіцієнт.

Щоб мати чітке розуміння, давайте підрахуємо калорії в продуктах за допомогою розподілу макроелементів. Грубо кажучи, калорійність їжі складається з жирів (9 калорій на грам), білків (4 CPG) і вуглеводів (4 CPG). Отже, якщо ми перерахуємо деякі продукти (наші дані) і для кожної їжі перерахуємо розподіл макропоживних речовин (параметри), ми зможемо помножити кожну поживну речовину на її калорійність (застосувати масштабування), щоб обчислити розподіл калорійності кожного продукту.

Трансляція масиву NumPy

Завдяки цій трансформації тепер ми можемо обчислювати будь-яку корисну інформацію. Наприклад, яка загальна кількість калорій у певній їжі або, враховуючи розбивку мого обіду, знати, скільки калорій я отримав із білка тощо.

Давайте подивимося наївний спосіб створення цього обчислення за допомогою Numpy:

Python3
import numpy as np macros = np.array([ [0.8, 2.9, 3.9], [52.4, 23.6, 36.5], [55.2, 31.7, 23.9], [14.4, 11, 4.9] ]) # Create a new array filled with zeros, # of the same shape as macros. result = np.zeros_like(macros) cal_per_macro = np.array([3, 3, 8]) # Now multiply each row of macros by # cal_per_macro. In Numpy, `*` is # element-wise multiplication between two arrays. for i in range(macros.shape[0]): result[i, :] = macros[i, :] * cal_per_macro result 

Вихід:

array([[ 2.4, 8.7, 31.2],  [157.2, 70.8, 292. ],  [165.6, 95.1, 191.2],  [ 43.2, 33. , 39.2]]) 

Правила трансляції: Трансляція двох масивів разом дотримується таких правил:

  • Якщо масиви не мають однакового рангу, тоді до форми масиву нижчого рангу додайте 1, доки обидві фігури не матимуть однакову довжину.
  • Два масиви сумісні у вимірі, якщо вони мають однаковий розмір у вимірі або якщо один із масивів має розмір 1 у цьому вимірі.
  • Масиви можна транслювати разом, якщо вони сумісні з усіма розмірами.
  • Після трансляції кожен масив поводиться так, ніби він має форму, що дорівнює поелементному максимуму форм двох вхідних масивів.
  • У будь-якому вимірі, де розмір одного масиву дорівнює 1, а розмір іншого масиву перевищує 1, перший масив поводиться так, ніби його було скопійовано вздовж цього виміру.
Python3
import numpy as np v = np.array([12, 24, 36]) w = np.array([45, 55]) # To compute an outer product we first # reshape v to a column vector of shape 3x1 # then broadcast it against w to yield an output # of shape 3x2 which is the outer product of v and w print(np.reshape(v, (3, 1)) * w) X = np.array([[12, 22, 33], [45, 55, 66]]) # x has shape 2x3 and v has shape (3, ) # so they broadcast to 2x3, print(X + v) # Add a vector to each column of a matrix X has # shape 2x3 and w has shape (2, ) If we transpose X # then it has shape 3x2 and can be broadcast against w # to yield a result of shape 3x2. # Transposing this yields the final result # of shape 2x3 which is the matrix. print((X.T + w).T) # Another solution is to reshape w to be a column # vector of shape 2X1 we can then broadcast it # directly against X to produce the same output. print(X + np.reshape(w, (2, 1))) # Multiply a matrix by a constant, X has shape 2x3. # Numpy treats scalars as arrays of shape(); # these can be broadcast together to shape 2x3. print(X * 2) 

Вихід:

[[ 540 660]  [1080 1320]  [1620 1980]] [[ 24 46 69]  [ 57 79 102]] [[ 57 67 78]  [100 110 121]] [[ 57 67 78]  [100 110 121]] [[ 24 44 66]  [ 90 110 132]] 

Примітка: Для отримання додаткової інформації зверніться до нашого Підручник з Python NumPy .

Аналіз даних за допомогою Pandas

Python Pandas Використовується для реляційних або позначених даних і надає різні структури даних для маніпулювання такими даними та часовими рядами. Ця бібліотека побудована на основі бібліотеки NumPy. Цей модуль зазвичай імпортується як:

import pandas as pd 

Тут pd згадується як псевдонім Pandas. Однак не обов’язково імпортувати бібліотеку за допомогою псевдоніма, це просто допомагає писати меншу кількість коду під час кожного виклику методу чи властивості. Panda зазвичай надає дві структури даних для маніпулювання даними, це:

  • Серія
  • Кадр даних

Серія:

Серія панд це одновимірний позначений масив, здатний зберігати дані будь-якого типу (цілі числа, рядки, числа з плаваючою точкою, об’єкти python тощо). Мітки осей разом називаються індексами. Серія Pandas — це не що інше, як стовпець у аркуші Excel. Мітки не обов’язково повинні бути унікальними, але мають мати хешований тип. Об’єкт підтримує індексування як цілих чисел, так і індексування на основі міток і надає безліч методів для виконання операцій із залученням індексу.

Серія панд

Його можна створити за допомогою функції Series(), завантаживши набір даних із наявного сховища, наприклад SQL, бази даних, файлів CSV, файлів Excel тощо, або зі структур даних, таких як списки, словники тощо.

Серія створення Python Pandas

Python3
import pandas as pd import numpy as np # Creating empty series ser = pd.Series() print(ser) # simple array data = np.array(['g', 'e', 'e', 'k', 's']) ser = pd.Series(data) print(ser) 

Вихід:

серія pnadas

серія pnadas

Кадр даних:

Pandas DataFrame це двовимірна, змінювана розміром, потенційно неоднорідна таблична структура даних із позначеними осями (рядки та стовпці). Фрейм даних — це двовимірна структура даних, тобто дані вирівнюються в табличному вигляді в рядках і стовпцях. Pandas DataFrame складається з трьох основних компонентів: даних, рядків і стовпців.

Pandas Data Frame

Він може бути створений за допомогою методу Dataframe() і, як і серія, також може бути з різних типів файлів і структур даних.

Python Pandas Створення Dataframe

Python3
import pandas as pd # Calling DataFrame constructor df = pd.DataFrame() print(df) # list of strings lst = ['Geeks', 'For', 'Geeks', 'is', 'portal', 'for', 'Geeks'] # Calling DataFrame constructor on list df = pd.DataFrame(lst) df 

Вихід:

Створення Dataframe зі списку

Створення Dataframe зі списку python

Створення Dataframe з CSV

Ми можемо створити фрейм даних із CSV файли за допомогою read_csv() функція.

Python Pandas читає CSV

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # Printing top 5 rows df.head() 

Вихід:

заголовок кадру даних

заголовок кадру даних

Фільтрування DataFrame

панди dataframe.filter() функція використовується для піднабору рядків або стовпців кадру даних відповідно до міток у вказаному індексі. Зауважте, що ця процедура не фільтрує фрейм даних за його вмістом. Фільтр застосовується до міток індексу.

Фрейм даних фільтра Python Pandas

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # applying filter function df.filter(['Species', 'SepalLengthCm', 'SepalLengthCm']).head() 

Вихід:

Застосування фільтра до набору даних

Застосування фільтра до набору даних

Сортування DataFrame

Щоб відсортувати кадр даних у pandas, функція sort_values() використовується. Pandas sort_values() може сортувати кадр даних у порядку зростання або спадання.

Python Pandas сортує фрейм даних у порядку зростання

Вихід:

Відсортований набір даних на основі значення стовпця

Відсортований набір даних на основі значення стовпця

Pandas GroupBy

Groupby це досить проста концепція. Ми можемо створити групування категорій і застосувати до категорій функцію. У реальних наукових проектах даних вам доведеться мати справу з великими обсягами даних і пробувати щось знову і знову, тому для ефективності ми використовуємо концепцію Groupby. Groupby в основному відноситься до процесу, який включає один або кілька з наступних кроків:

  • Розщеплення: Це процес, у якому ми розбиваємо дані на групи, застосовуючи певні умови до наборів даних.
  • Застосування: Це процес, у якому ми застосовуємо функцію до кожної групи незалежно.
  • Комбінування: Це процес, у якому ми об’єднуємо різні набори даних після застосування groupby і результатів у структуру даних.

Наступне зображення допоможе зрозуміти процес, задіяний у концепції Groupby.

1. Згрупуйте унікальні значення зі стовпця Команда

Метод групування панд

2. Тепер для кожної групи є відро

3. Викладіть інші дані у відра

Pandas GroupBy

4. Застосуйте функцію до стовпця ваги кожного відра.

Застосування функції до вагового стовпця кожного стовпця

Python Pandas GroupBy

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) print('Original Dataframe') display(df) # applying groupby() function to # group the data on Name value. gk = df.groupby('Name') # Let's print the first entries # in all the groups formed. print('After Creating Groups') gk.first() 

Вихід:

панди groupby

панди groupby

Застосування функції до групи:

Після поділу даних на групу ми застосовуємо функцію до кожної групи, щоб виконати деякі операції:

  • Агрегація: Це процес, у якому ми обчислюємо підсумкову статистику (або статистику) щодо кожної групи. Наприклад, обчислити групові суми або середні значення
  • Трансформація: Це процес, у якому ми виконуємо певні групові обчислення та повертаємо подібний індекс. Наприклад, заповнення NA в групах значенням, отриманим із кожної групи
  • Фільтрація: Це процес, у якому ми відкидаємо деякі групи відповідно до групових обчислень, які оцінюють True або False. Наприклад, відфільтрування даних на основі суми або середнього значення групи

Агрегація Pandas

Агрегація це процес, у якому ми обчислюємо підсумкову статистику щодо кожної групи. Агрегована функція повертає єдине агреговане значення для кожної групи. Після розбиття даних на групи за допомогою функції groupby над згрупованими даними можна виконати декілька операцій агрегування.

Агрегація Python Pandas

Python3
# importing pandas module import pandas as pd # importing numpy as np import numpy as np # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # performing aggregation using # aggregate method grp1 = df.groupby('Name') grp1.aggregate(np.sum) 

Вихід:

Використання агрегатної функції sum для набору даних

Використання агрегатної функції sum для набору даних

Конкатенація DataFrame

Щоб об’єднати фрейм даних, ми використовуємо concat() функція, яка допомагає об’єднувати фрейм даних. Ця функція виконує всю важку роботу, пов’язану з виконанням операцій конкатенації разом із віссю об’єктів Pandas, одночасно виконуючи необов’язкову логіку набору (об’єднання або перетину) індексів (якщо такі є) на інших осях.

Python Pandas Concatenate Data Frame

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # combining series and dataframe res = pd.concat([df, df1], axis=1) res 

Вихід:

Об’єднання DataFrame

Коли нам потрібно об’єднати дуже великі DataFrames, об’єднання служать потужним засобом для швидкого виконання цих операцій. Об’єднання можна виконувати лише на двох DataFrames одночасно, позначених як ліва та права таблиці. Ключ — це загальний стовпець, у якому будуть об’єднані два DataFrames. Рекомендується використовувати ключі, які мають унікальні значення в стовпці, щоб уникнути ненавмисного дублювання значень рядків. Панди забезпечують одну функцію, злиття () , як точка входу для всіх стандартних операцій з’єднання бази даних між об’єктами DataFrame.

Існує чотири основні способи обробки об’єднання (внутрішнє, ліве, праве та зовнішнє), залежно від того, які рядки мають зберігати свої дані.

Об’єднати Daframe Python Pandas

Python Pandas Merge Data Frame

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # using .merge() function res = pd.merge(df, df1, on='key') res 

Вихід:

Конкатинація двох наборів даних

Конкатинація двох наборів даних

Приєднання до DataFrame

Щоб приєднатися до фрейму даних, ми використовуємо .join() Ця функція використовується для об’єднання стовпців двох потенційно різноіндексованих DataFrame в один результат DataFrame.

Python Pandas Join Dataframe

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32]} # Define a dictionary containing employee data data2 = {'Address':['Allahabad', 'Kannuaj', 'Allahabad', 'Kannuaj'], 'Qualification':['MCA', 'Phd', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1,index=['K0', 'K1', 'K2', 'K3']) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2, index=['K0', 'K2', 'K3', 'K4']) display(df, df1) # joining dataframe res = df.join(df1) res 

Вихід:

Об’єднання двох наборів даних

Для отримання додаткової інформації зверніться до нашого Pandas Злиття, приєднання та конкатенація підручник

Щоб отримати повний довідник про Pandas, зверніться до нашого Підручник Pandas .

Візуалізація за допомогою Matplotlib

Matplotlib проста у використанні та чудова бібліотека візуалізації на Python. Він побудований на основі масивів NumPy і призначений для роботи з ширшим стеком SciPy і складається з кількох графіків, таких як лінія, стовпчик, розкид, гістограма тощо.

Pyplot

Pyplot це модуль Matplotlib, який забезпечує схожий на MATLAB інтерфейс. Pyplot надає функції, які взаємодіють із фігурою, тобто створює фігуру, прикрашає графік мітками та створює область малювання на фігурі.

Python3
# Python program to show pyplot module import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.axis([0, 6, 0, 20]) plt.show() 

Вихід:

Гістограма

А барна ділянка або стовпчаста діаграма — це графік, який представляє категорію даних за допомогою прямокутних стовпчиків, довжина та висота яких пропорційна значенням, які вони представляють. Стовпчасті діаграми можуть бути нанесені горизонтально або вертикально. Гістограма описує порівняння між окремими категоріями. Його можна створити за допомогою методу bar().

Гістограма Python Matplotlib

Тут ми будемо використовувати лише набір даних райдужної оболонки ока

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') # This will plot a simple bar chart plt.bar(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Iris Dataset') # Adding the legends plt.legend(['bar']) plt.show() 

Вихід:

Гістограма з використанням бібліотеки matplotlib

Гістограма з використанням бібліотеки matplotlib

Гістограми

А гістограма в основному використовується для представлення даних у вигляді деяких груп. Це тип стовпчастої діаграми, де вісь X представляє діапазони бінів, а вісь Y дає інформацію про частоту. Щоб створити гістограму, першим кроком є ​​створення діапазону діапазонів, потім розподілення всього діапазону значень на серію інтервалів і підрахунок значень, які потрапляють у кожен з інтервалів. Біни чітко визначені як послідовні інтервали змінних, які не перекриваються. The історія () функція використовується для обчислення та створення гістограми x.

Гістограма Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.hist(df['SepalLengthCm']) # Title to the plot plt.title('Histogram') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Вихід:

Histplot з використанням бібліотеки matplotlib

Діаграма розкиду

Діаграма розсіювання використовується для спостереження за зв’язком між змінними та використання точок для відображення зв’язку між ними. The scatter() метод у бібліотеці matplotlib використовується для малювання діаграми розсіювання.

Точкова діаграма Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.scatter(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Scatter Plot') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Вихід:

Точкова діаграма за допомогою бібліотеки matplotlib

Точкова діаграма за допомогою бібліотеки matplotlib

Box Plot

А boxplot , Кореляція, також відома як прямокутна діаграма. Це дуже гарне візуальне представлення, коли справа доходить до вимірювання розподілу даних. Чітко відображає медіанні значення, викиди та квартилі. Розуміння розподілу даних є ще одним важливим фактором, який веде до кращого створення моделі. Якщо дані мають викиди, рекомендований спосіб їх ідентифікації та вжиття необхідних заходів — коробковий графік. Діаграма прямокутників і вусів показує, як розподіляються дані. У діаграмі зазвичай міститься п’ять елементів інформації

  • Мінімум показаний у крайньому лівому куті діаграми, на кінці лівого «вуса»
  • Перший квартиль, Q1, є крайнім лівим кутом прямокутника (лівий вискер)
  • Медіана показана у вигляді лінії в центрі рамки
  • Третій квартиль, Q3, показаний у крайньому правому куті прямокутника (правий вус)
  • Максимум знаходиться в правій частині вікна

Зображення коробчатого сюжету

Міжквартильний діапазон

Міжквартильний діапазон

Ілюстрація сюжету коробки

Ілюстрація сюжету коробки

Python Matplotlib Box Plot

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.boxplot(df['SepalWidthCm']) # Title to the plot plt.title('Box Plot') # Adding the legends plt.legend(['SepalWidthCm']) plt.show() 

Вихід:

Boxplot з використанням бібліотеки matplotlib

Boxplot з використанням бібліотеки matplotlib

Теплові карти кореляції

2-D Heatmap – це інструмент візуалізації даних, який допомагає відобразити масштаб явища у вигляді кольорів. Теплова карта кореляції – це теплова карта, яка показує двовимірну кореляційну матрицю між двома дискретними вимірами, використовуючи кольорові клітинки для представлення даних зазвичай у монохроматичному масштабі. Значення першого виміру відображаються як рядки таблиці, тоді як другий вимір є стовпцем. Колір комірки пропорційний кількості вимірювань, які відповідають розмірному значенню. Це робить кореляційні теплові карти ідеальними для аналізу даних, оскільки вони роблять шаблони легко читаними та підкреслюють відмінності та варіації в тих самих даних. Кореляційна теплова карта, як і звичайна теплова карта, має кольорову панель, що робить дані легко читаними та зрозумілими.

Примітка: Дані тут потрібно передати за допомогою методу corr() для створення кореляційної теплової карти. Крім того, сам corr() усуває стовпці, які не будуть корисними під час генерації теплової карти кореляції, і вибирає ті, які можна використовувати.

Теплова карта кореляції Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.imshow(df.corr() , cmap = 'autumn' , interpolation = 'nearest' ) plt.title('Heat Map') plt.show() 

Вихід:

Теплова карта з використанням бібліотеки matplotlib

Теплова карта з використанням бібліотеки matplotlib

Для отримання додаткової інформації про візуалізацію даних зверніться до наших посібників нижче –

Кращі Статті

Категорія

Цікаві Статті