Ако използвате Python, дори за най-простите задачи, вероятно сте наясно с важността на неговите библиотеки на трети страни. Библиотеката Pandas, с отличната си поддръжка за DataFrames, е една такава библиотека.

Можете да импортирате множество типове файлове в Python DataFrames и да създавате различни версии за съхраняване на различни набори от данни. След като импортирате вашите данни с помощта на DataFrames, можете да ги обедините, за да извършите подробен анализ.

Справяне с основите

Преди да започнете сливането, трябва да имате DataFrames за сливане. За целите на разработката можете да създадете някои фиктивни данни, с които да експериментирате.

Създайте DataFrames в Python

Като първа стъпка импортирайте библиотеката Pandas във вашия Python файл. Pandas е библиотека на трета страна, която обработва DataFrames в Python. Можете да използвате импортиране изявление за използване на библиотеката, както следва:

импортиране панди като пд

Можете да присвоите псевдоним на името на библиотеката, за да съкратите вашите кодови препратки.

instagram viewer

Трябва да създадете речници, които можете да конвертирате в DataFrames. За най-добри резултати създайте две речникови променливи—dict1 и dict2—за съхраняване на специфични части от информация:

dict1 = {"user_id": ["001", "002", "003", "004", "005"],
"FName": ["Джон", "Брад", "Рон", "Роалд", "Крис"],
"LName": ["Харли", "Коен", "Дал", "Харингтън", "Кер-Хислоп"]}

dict2 = {"user_id": ["001", "002", "003", "004"], "Възраст": [15, 28, 34, 24]}

Не забравяйте, че трябва да имате общ елемент в стойностите на двата речника, който да действа като първичен ключ за комбиниране на вашите DataFrames по-късно.

Преобразувайте вашите речници в DataFrames

За да конвертирате стойностите на вашия речник в DataFrames, можете да използвате следния метод:

df1 = pd. DataFrame (dict1)
df2 = pd. DataFrame (dict2)

Някои IDE ви позволяват да проверявате стойностите в рамките на DataFrame, като се позовавате на функцията DataFrame и натискате Изпълнение/Изпълнение. Има много Съвместими с Python IDE, така че можете да изберете този, който е най-лесен за научаване.

След като сте доволни от съдържанието на вашите DataFrames, можете да преминете към стъпката на сливане.

Комбиниране на рамки с функцията за сливане

Функцията за сливане е първата функция на Python, която можете да използвате, за да комбинирате два DataFrames. Тази функция приема следните аргументи по подразбиране:

pd.merge (DataFrame1, DataFrame2, how= Типнасливане)

Където:

  • пд е псевдоним на библиотеката Pandas.
  • сливане е функцията, която обединява DataFrames.
  • DataFrame1 и DataFrame2 са двата DataFrames за сливане.
  • как дефинира типа сливане.

Налични са някои допълнителни незадължителни аргументи, които можете да използвате, когато имате сложна структура от данни.

Можете да използвате различни стойности за параметъра how, за да определите вида на сливането, което да се извърши. Тези типове сливане ще ви бъдат познати, ако сте използва SQL за свързване на таблици на база данни.

Ляво сливане

Левият тип сливане запазва стойностите на първата DataFrame непокътнати и изтегля съвпадащите стойности от втората DataFrame.

Право обединяване

Правилният тип сливане запазва стойностите на втория DataFrame непокътнати и изтегля съответстващите стойности от първия DataFrame.

Вътрешно сливане

Типът вътрешно сливане запазва съвпадащите стойности от двата DataFrames и премахва несъвпадащите стойности.

Външно сливане

Типът външно сливане запазва всички съответстващи и несъвпадащи стойности и консолидира DataFrames заедно.

Как да използвате функцията Concat

The concat е гъвкава опция в сравнение с някои от другите функции за сливане на Python. С функцията concat можете да комбинирате DataFrames вертикално и хоризонтално.

Недостатъкът на използването на тази функция обаче е, че тя отхвърля всички несъвпадащи стойности по подразбиране. Подобно на някои други свързани функции, тази функция има няколко аргумента, от които само няколко са от съществено значение за успешна конкатенация.

concat (рамки с данни, ос=0, присъединяване='външен'/атрешна)

Където:

  • concat е функцията, която се присъединява към DataFrames.
  • кадри с данни е последователност от DataFrames за свързване.
  • ос представлява посоката на конкатенация, като 0 е хоризонтална, 1 е вертикална.
  • присъединяване указва или външно, или вътрешно съединение.

Използвайки горните две DataFrames, можете да изпробвате функцията concat, както следва:

# дефинирайте кадрите с данни във формат на списък
df_merged_concat = pd.concat([df1, df2])

# отпечатване на резултатите от функцията Concat
печат(df_merged_concat)

Липсата на аргументи за ос и съединение в горния код комбинира двата набора от данни. Полученият изход съдържа всички записи, независимо от състоянието на съответствие.

По същия начин можете да използвате допълнителни аргументи, за да контролирате посоката и изхода на функцията concat.

За да контролирате изхода с всички съвпадащи записи:

# Конкатениране на всички съвпадащи стойности между двата кадъра с данни въз основа на техните колони
df_merged_concat = pd.concat([df1, df2], axis=1, join = 'атрешна')

печат(df_merged_concat)

Резултатът съдържа всички съвпадащи стойности само между двата DataFrames.

Обединяване на DataFrames с Python

DataFrames са неразделна част от Python, като се има предвид тяхната гъвкавост и функционалност. Като се има предвид тяхната многостранна употреба, можете да ги използвате широко, за да изпълнявате различни задачи с изключителна лекота.

Ако все още научавате за Python DataFrames, опитайте да импортирате някои Excel файлове, след което ги комбинирайте с различни подходи.