Као аналитичар података, често ћете се суочити са потребом да комбинујете више скупова података. Ово ћете морати да урадите да бисте довршили анализу и дошли до закључка за ваше предузеће/заинтересоване стране.

Често је изазовно представити податке када су ускладиштени у различитим табелама. У таквим околностима, придруживања доказују своју вредност, без обзира на програмски језик на којем радите.

Питхон спајања су попут СКЛ спојева: комбинују скупове података упарујући њихове редове на заједничком индексу.

Направите два оквира података за референцу

Да бисте пратили примере у овом водичу, можете креирати два узорка оквира података. Користите следећи код да креирате први ДатаФраме, који садржи ИД, име и презиме.

увоз панде као пд

а = пд. Оквир података({"ИД": ["001", "002", "003", "004", "005"],
"Фнаме": ["Рон", "Јохн", "Хелена", "Јенни", "Кенни"],
"Лнаме": ["Кеитх", "Харлеи", "Смитх", "Керр-Хислоп", "Бербер"]})
принт(а)

За први корак, увезите панде библиотека. Затим можете користити променљиву,

instagram viewer
а, за чување резултата из конструктора ДатаФраме. Проследите конструктору речник који садржи ваше потребне вредности.

На крају, прикажите садржај вредности ДатаФраме са функцијом штампања, да бисте проверили да ли све изгледа онако како бисте очекивали.

Слично томе, можете креирати други ДатаФраме, б, који садржи ИД и вредности плате.

б = пд. Оквир података({"ИД": ["001", "002", "003", "004", "005"],
"Плата": [100000, 700000, 80000, 904750, 604772]})

принт(б)

Можете проверити излаз у конзоли или ИДЕ-у. Требало би да потврди садржај ваших ДатаФраме-ова:

Како се спојеви разликују од функције спајања у Питхон-у?

Пандас библиотека је једна од главних библиотека које можете користити за манипулацију оквирима података. Пошто оквири података садрже више скупова података, у Питхон-у су доступне различите функције да им се придруже.

Питхон нуди функције спајања и спајања, између многих других, које можете користити за комбиновање оквира података. Постоји велика разлика између ове две функције, коју морате имати на уму пре него што употребите било коју.

Функција спајања спаја два оквира података на основу вредности њихових индекса. Тхе функција спајања комбинује ДатаФрамес на основу вредности индекса и колона.

Шта треба да знате о спајањима у Питхон-у?

Пре него што разговарате о доступним врстама спојева, ево неколико важних ствари које треба напоменути:

  • СКЛ спојеви су једна од најосновнијих функција и прилично су слични Питхон-овим спојевима.
  • Да бисте се придружили ДатаФрамес-у, можете користити панде. ДатаФраме.јоин() методом.
  • Подразумевано спајање врши лево спајање, док функција спајања врши унутрашње спајање.

Подразумевана синтакса за Питхон придруживање је следећа:

ДатаФраме.јоин (отхер, он=Ноне, хов='лево / десно / унутрашње / спољашње', лсуфикс='', рсуфикс='',
сорт=Фалсе)

Позовите метод придруживања на првом ДатаФраме-у и проследите други ДатаФраме као његов први параметар, друго. Преостали аргументи су:

  • на, који именује индекс за придруживање, ако постоји више од једног.
  • како, који дефинише тип спајања, укључујући унутрашње, спољашње, лево и десно.
  • лсуфикс, који дефинише леви стринг суфикса имена ваше колоне.
  • рсуфикс, који дефинише прави стринг суфикса имена ваше колоне.
  • врста, што је логички показатељ да ли треба сортирати резултујући ДатаФраме.

Научите да користите различите типове спајања у Питхон-у

Питхон има неколико опција за придруживање, које можете искористити, у зависности од потреба сата. Ево типова придруживања:

1. Лефт Јоин

Лево спајање задржава вредности првог ДатаФраме-а нетакнутим док уноси одговарајуће вредности из другог. На пример, ако желите да унесете одговарајуће вредности из б, можете га дефинисати на следећи начин:

ц = а.придружити (б, како="лево", лсуфикс = "_лефт", рсуфикс = "_јел тако", сортирај = Тачно)
принт(ц)

Када се упит изврши, излаз садржи следеће референце колона:

  • ИД_лефт
  • Фнаме
  • Лнаме
  • ИД_ригхт
  • Плата

Ово спајање повлачи прве три колоне из првог оквира података, а последње две колоне из другог оквира података. Користило је лсуфикс и рсуфикс вредности за преименовање ИД колона из оба скупа података, обезбеђујући да су резултујући називи поља јединствени.

Излаз је следећи:

2. Ригхт Јоин

Десно спајање задржава вредности другог ДатаФраме-а нетакнутим, док уноси одговарајуће вредности из прве табеле. На пример, ако желите да унесете одговарајуће вредности из а, можете га дефинисати на следећи начин:

ц = б.придружити (а, како="јел тако", лсуфикс = "_јел тако", рсуфикс = "_лефт", сортирај = Тачно)
принт(ц)

Излаз је следећи:

Ако прегледате код, постоји неколико очигледних промена. На пример, резултат укључује колоне другог ДатаФраме-а пре оних из првог ДатаФраме-а.

Требало би да користите вредност од јел тако за како аргумент за одређивање десног споја. Такође, имајте на уму како можете да промените лсуфикс и рсуфикс вредности које одражавају природу правог споја.

У вашим редовним спајањима, можда ћете чешће користити леве, унутрашње и спољашње спојеве у поређењу са десним спајањем. Међутим, употреба у потпуности зависи од ваших захтева за подацима.

3. Иннер Јоин

Унутрашње спајање испоручује одговарајуће уносе из оба оквира података. Пошто спојеви користе бројеве индекса за подударање редова, унутрашње спајање враћа само редове који се подударају. За ову илустрацију, користимо следећа два оквира података:

а = пд. Оквир података({"ИД": ["001", "002", "003", "004", "005", "006", "007"],
"Фнаме": ["Рон", "Јохн", "Хелена", "Јенни", "Кенни", "Дарил", "Цатхи"],
"Лнаме": ["Кеитх", "Харлеи", "Смитх", "Керр-Хислоп", "Бербер", "Хоопер", "Надати се"]})
б = пд. Оквир података({"ИД": ["001", "002", "003", "004", "005"],
"Плата": [100000, 700000, 80000, 904750, 604772]})

принт(а)
принт(б)

Излаз је следећи:

Можете користити унутрашње спајање, на следећи начин:

ц = а.придружити (б, лсуфикс="_лефт", рсуфикс="_јел тако", како='унутрашњи')
принт(ц)

Добијени излаз садржи само редове који постоје у оба улазна оквира података:

4. Оутер Јоин

Спољашње спајање враћа све вредности из оба оквира података. За редове без одговарајућих вредности, он производи нулту вредност на појединачним ћелијама.

Користећи исти ДатаФраме као горе, ево кода за спољно придруживање:

ц = а.придружити (б, лсуфикс="_лефт", рсуфикс="_јел тако", како='спољашњи')
принт(ц)

Коришћење спојева у Питхон-у

Придруживања, као и њихове друге функције, спајање и спајање, нуде много више од једноставне функције придруживања. С обзиром на низ опција и функција, можете одабрати опције које задовољавају ваше захтеве.

Резултујуће скупове података можете сортирати релативно лако, са или без функције придруживања, уз флексибилне опције које Питхон нуди.