Урок за Python Pandas: Научете Pandas за анализ на данни



В този урок за Python Pandas ще научите различните операции на Pandas. Той също така включва случай на употреба, където можете да анализирате данните с помощта на Pandas.

В този блог ще обсъждаме анализа на данни с помощта на Pandas в Python.Днес, е горещо умение в индустрията, което надмина PHP през 2017 г. и C # през 2018 г. по отношение на общата популярност и употреба.Преди да говорим за Pandas, трябва да разберем концепцията за масивите на Numpy. Защо? Тъй като Pandas е софтуерна библиотека с отворен код, която е изградена върху . В този урок за Python Pandas ще ви преведа през следните теми, които ще служат като основи за предстоящите блогове:

Да започваме. :-)





Какво е Python Pandas?

Pandas се използва за манипулиране на данни, анализ и почистване. Пандите на Python са подходящи за различни видове данни, като например:

  • Таблични данни с разнородни колони
  • Подредени и неподредени данни от времеви редове
  • Данни от произволна матрица с етикети на редове и колони
  • Немаркирани данни
  • Всякаква друга форма на наблюдателни или статистически набори от данни

Как да инсталирам Pandas?

За да инсталирате Python Pandas, отидете на вашия команден ред / терминал и напишете „pip install pandas“, или ако имате инсталирана анаконда във вашата система, просто напишете „conda install pandas“. След като инсталацията приключи, отидете на вашата IDE (Jupyter, PyCharm и др.) И просто я импортирайте, като напишете: „импортиране на панди като pd“



Продължавайки напред в урока за панди на Python, нека да разгледаме някои от неговите операции:

Python Pandas Operations

Използвайки панди на Python, можете да извършвате много операции с поредици, рамки от данни, липсващи данни, групиране по др. Някои от често срещаните операции за манипулиране на данни са изброени по-долу:



PandasOperations - Урок за Pyndon Pandas - Edureka

Сега нека да разберем всички тези операции една по една.

Нарязване на рамката за данни

За да извършите нарязване на данни, имате нужда от рамка за данни. Не се притеснявайте, рамката за данни е двуизмерна структура от данни и най-често срещаният обект на панди. Така че първо, нека създадем рамка за данни.

Вижте кода по-долу за прилагането му в PyCharm:

импортирайте панди като pd XYZ_web = {'Ден': [1,2,3,4,5,6], 'Посетители': [1000, 700,6000,1000,400,350], 'Bounce_Rate': [20,20, 23,15,10,34]} df = pd.DataFrame (XYZ_web) print (df)

Изход :

Посетители на Bounce_Rate Day 0 20 1 1000 1 20 2 700 2 23 3 6000 3 15 4 1000 4 10 5 400 5 34 6 350

Кодът по-горе ще преобразува речник в pandas Data Frame заедно с индекс вляво. Сега, нека нарязаме определена колона от тази рамка с данни. Вижте изображението по-долу:

за какво се използва mongodb
печат (df.head (2))

Изход:

Посетители на Bounce_Rate Day 0 20 1 1000 1 20 2 700

По същия начин, ако искате последните два реда от данните, въведете командата по-долу:

печат (df.tail (2))

Изход:

Посетители на Bounce_Rate Day 4 10 5 400 5 34 6 350

След това в урока за Python Pandas, нека извършим обединяване и присъединяване.

Обединяване и присъединяване

При обединяването можете да обедините два кадъра с данни, за да образувате един кадър с данни. Можете също така да решите кои колони искате да направите общи. Позволете ми да реализирам това на практика, първо ще създам три кадъра с данни, които имат няколко двойки ключ-стойност и след това ще обединя рамките с данни заедно. Вижте кода по-долу:

HPI IND_GDP Int_Rate 0 80 50 2 1 90 45 1 2 70 45 2 3 60 67 3

Изход:

импортирайте панди като pd df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45, 67]}, индекс = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3] , 'IND_GDP': [50,45,45,67]}, index = [2005, 2006,2007,2008]) merged = pd.merge (df1, df2) print (merged)

Както можете да видите по-горе, двата фрейма данни се обединиха в един фрейм данни. Сега можете също да посочите колоната, която искате да направите обща. Например искам колоната „HPI“ да е обща, а за всичко останало искам отделни колони. Така че, позволете ми да приложа това на практика:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, индекс = [2005, 2006,2007,2008]) обединен = pd.merge (df1, df2, on = 'HPI') печат (обединен)

Изход:

IND_GDP Int_Rate Low_Tier_HPI Безработица 2001 50 2 50,0 1,0 2002 45 1 NaN NaN 2003 45 2 45,0 3,0 2004 67 3 67,0 5,0 2004 67 3 34,0 6,0

След това нека разберем присъединяване в урок за панди на python. Това е още един удобен метод за комбиниране на два различно индексирани кадъра с данни в един кадър с данни за резултат. Това е доста подобно на операцията „сливане“, с изключение на това, че операцията за присъединяване ще бъде в „индекс“ вместо в „колони“. Нека го приложим практически.

df1 = pd.DataFrame ({'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, индекс = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'Low_Tier_HPI': [50,45,67,34], 'Безработица': [1,3,5,6]}, индекс = [2001, 2003,2004,2004]) joined = df1. join (df2) print (присъединен)

Изход:

IND_GDP Int_Rate Low_Tier_HPI Безработица 2001 50 2 50,0 1,0 2002 45 1 NaN NaN 2003 45 2 45,0 3,0 2004 67 3 67,0 5,0 2004 67 3 34,0 6,0

Както можете да забележите в горния изход, през 2002 г. (индекс) към колоните „low_tier_HPI“ и „безработица“ няма прикачена стойност, следователно е отпечатан NaN (Не е число). По-късно през 2004 г. и двете стойности са налични, поради което той отпечатва съответните стойности.

Можете да преминете през този запис на урока по Python Pandas, където нашият инструктор е обяснил темите подробно с примери, които ще ви помогнат да разберете по-добре тази концепция.

Python за анализ на данни | Урок за Python Pandas | Обучение на Python | Едурека


Продължавайки напред в урока за панди на Python, нека разберем как да обединим два кадъра с данни.

Конкатенация

Конкатенацията в основата слепва рамките с данни. Можете да изберете измерението, на което искате да се свържете. За това просто използвайте “pd.concat” и предайте в списъка с рамки за данни, за да се свържете заедно. Помислете за долния пример.

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, индекс = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2]) print (concat)

Изход:

HPI IND_GDP Int_Rate 2001 80 50 2 2002 90 45 1 2003 70 45 2 2004 60 67 3 2005 80 50 2 2006 90 45 1 2007 70 45 2 2008 60 67 3

Както можете да видите по-горе, двата фрейма данни са залепени заедно в един кадър с данни, където индексът започва от 2001 г. чак до 2008 г. След това можете също така да посочите ос = 1, за да се присъедините, обедините или обедините по колоните. Вижте кода по-долу:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, индекс = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2], ос = 1) печат (concat)

Изход:

HPI IND_GDP Int_Rate HPI IND_GDP Int_Rate 2001 80,0 50,0 2,0 NaN NaN NaN 2002 90,0 45,0 1,0 NaN NaN NaN 2003 70,0 45,0 2,0 NaN NaN NaN 2004 60,0 67,0 3,0 NaN NaN NaN 2005 NaN NaN NaN 80,0 50,0 2,0 2006 NaN NaN NaN 90,0 45,0 1,0 2007 NaN NaN NaN 70,0 45,0 2,0 2008 NaN NaN NaN 60,0 67,0 3,0

Както можете по-горе, има куп липсващи стойности. Това се случва, защото кадрите с данни не са имали стойности за всички индекси, в които искате да се свържете. Следователно трябва да се уверите, че цялата информация се подрежда правилно, когато се присъедините или свържете по оста.

Променете индекса

След това в урока за пантони на python ще разберем как да променим стойностите на индекса в рамка с данни. Например, нека създадем кадър с данни с няколко двойки ключови стойности в речник и да променим стойностите на индекса. Помислете за примера по-долу:

Нека да видим как всъщност се случва:

импортирайте панди като pd df = pd.DataFrame ({'Day': [1,2,3,4], 'Visitors': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df.set_index ('Ден', inplace = True) print (df)

Изход:

Bounce_Rate Посетители Ден 1 20 200 2 45 100 3 60 230 4 10 300

Както можете да забележите в изхода по-горе, стойността на индекса е променена по отношение на колоната „Ден“.

Променете заглавките на колоните

Нека сега променим заглавките на колона в този урок за пантони на python. Нека вземем същия пример, където ще променя заглавката на колоната от „Посетители“ на „Потребители“. Така че, нека го приложа практически.

импортирайте панди като pd df = pd.DataFrame ({'Day': [1,2,3,4], 'Visitors': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df = df.rename (колони = {'Посетители': 'Потребители'}) print (df)

Изход:

Потребители на Bounce_Rate Day 0 20 1 200 1 45 2 100 2 60 3 230 3 10 4 300

Както виждате по-горе, заглавката на колоната „Посетители“ е променена на „Потребители“. След това в урока за панди на python, нека извършим промяна на данни.

променлива на пример в java пример

Изменяне на данни

В Data munging можете да конвертирате определени данни в различен формат. Например, ако имате .csv файл, можете също да го конвертирате в .html или друг формат за данни. Така че, позволете ми да приложа това на практика.

импортирайте панди като pd country = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-Youth-brezposelnostAPI_ILO_country_YU.csv', index_col = 0) country.to_html ('edu.html')

След като стартирате този код, ще бъде създаден HTML файл с име „edu.html“. Можете директно да копирате пътя на файла и да го поставите във вашия браузър, който показва данните в HTML формат. Вижте скрийншота по-долу:


След това в урока за пантони на python, нека разгледаме случай на употреба, който говори за глобалната младежка безработица.

Урок за Python Pandas: Използвайте случай за анализ на данните за безработицата сред младите хора

Декларация за проблема :Получавате набор от данни, който се състои от процента на безработните младежи в световен мащаб от 2010 до 2014 г. Трябва да използвате този набор от данни и да намерите промяната в процента на младежта за всяка държава от 2010-2011.

Първо, нека разберем набора от данни, който съдържа колоните като Име на държава, Код на държавата и годината от 2010 до 2014 г. Сега, използвайки панди, ще използваме „pd.read_csv“, за да прочетем файла с формат на .csv файл.
Вижте екранната снимка по-долу:

Нека продължим напред и да извършим анализ на данните, в който ще установим процентната промяна в безработната младеж между 2010 и 2011 г. Тогава ще визуализираме същото, като използваме библиотека, която е мощна библиотека за визуализация в Python. Може да се използва в Python скриптове, черупки, сървъри за уеб приложения и други GUI набори от инструменти. Можете да използвате прочетете повече тук:

Сега нека приложим кода в PyCharm:

импортиране на панди като pd импортиране на matplotlib.pyplot като plt от matplotlib импортиране на стил style.use ('fivethirtyeight') country = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-youth-nezaposlenostAPI_ILO_country_YU.csv', index_col = 0) df = country. head (5) df = df.set_index (['Код на държавата']) sd = sd.reindex (колони = ['2010', '2011']) db = sd.diff (ос = 1) db.plot (вид = 'бар') plt.show ()

Както можете да видите по-горе, извърших анализа на горните 5 реда на рамката с данни за страната. След това определих стойността на индекса да бъде „Код на страната“ и след това преиндексирам колоната към 2010 и 2011 г. След това имаме още една рамка от данни db, която отпечатва разликата между двете колони или процентната промяна на безработните младежи от 2010 до 2011 г. И накрая, начертах барплот, използвайки библиотеката Matplotlib в Python.


Сега, ако сте забелязали в горния сюжет, в Афганистан (AFG) между 2010 и 2011 г. се наблюдава нарастване на безработните младежи с около 0,25%. Тогава в Ангола (AGO) има негативна тенденция, което означава, че процентът на безработните младежи е намален. По същия начин можете да извършвате анализ на различни набори от данни.

Надявам се, че моят блог в „Урок за Python Pandas“ беше подходящ за вас. За да получите задълбочени познания за python заедно с различните му приложения, можете да се регистрирате за живо от Edureka с денонощна поддръжка и доживотен достъп.

Имате въпрос към нас? Моля, споменете го в раздела за коментари в този блог „Урок на Python Pandas“ и ние ще се свържем с вас възможно най-скоро.