logo

Zreťazenie pandy

Pandas je schopný kombinovať objekty Series, DataFrame a Panel prostredníctvom rôznych druhov logiky množín pre indexy a funkčnosť relačnej algebry.

The concat() funkcia je zodpovedná za vykonávanie operácie zreťazenia pozdĺž osi v DataFrame.

Syntax:

 pd.concat(objs,axis=0,join='outer',join_axes=None, ignore_index=False) 

Parametre:

    objs:Je to sekvencia alebo mapovanie sérií alebo objektov DataFrame.
    Ak odovzdáme diktát v DataFrame, potom sa zoradené kľúče použijú ako kľúče a v takom prípade sa vyberú hodnoty. Ak sú prítomné nejaké ne-objekty, potom sa zahodí, pokiaľ nie sú žiadne, a v tomto prípade a ValueError bude zvýšený.os:Je to os, ktorá sa má zreťaziť.pripojiť sa:Zodpovedá za manipuláciu s indexmi na inej osi.join_axes:Zoznam objektov indexu. Namiesto vykonávania logiky vnútornej alebo vonkajšej sady sa špecifické indexy používajú pre druhú (n-1) os.ignore_index:bool, predvolená hodnota False
    Nepoužíva hodnoty indexu na osi zreťazenia, ak je pravdivá. Výsledná os bude označená ako 0, ..., n - 1.

Návraty

Séria sa vráti, keď zreťazíme všetky série pozdĺž osi (os = 0). V prípade ak objs obsahuje aspoň jeden DataFrame, vráti DataFrame.

Príklad1:

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data]) 

Výkon

powershell viacriadkový komentár
 0 p 1 q 0 r 1 s dtype: object 

Príklad2: Vo vyššie uvedenom príklade môžeme obnoviť existujúci index pomocou ignorovať_index parameter. Nižšie uvedený kód demonštruje fungovanie ignorovať_index .

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], ignore_index=True) 

Výkon

jdbc jdbc
 0 p 1 q 2 r 3 s dtype: object 

Príklad 3: Môžeme pridať hierarchický index na najvzdialenejšiu úroveň údajov pomocou kľúče parameter.

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], keys=['a_data', 'b_data']) 

Výkon

 a_data 0 p 1 q b_data 0 r 1 s dtype: object 

Príklad 4: Indexové kľúče môžeme označiť pomocou mená parameter. Nižšie uvedený kód ukazuje fungovanie parametra názvov.

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], keys=['a_data', 'b_data']) pd.concat([a_data, b_data], keys=['a_data', 'b_data'], names=['Series name', 'Row ID']) 

Výkon

previesť nfa na dfa
 Series name Row ID a_data 0 p 1 q b_data 0 r 1 s dtype: object 

Reťazenie pomocou append

Metóda pripojenia je definovaná ako užitočná skratka na zreťazenie série a dátového rámca.

Príklad:

 import pandas as pd one = pd.DataFrame({ 'Name': ['Parker', 'Smith', 'Allen', 'John', 'Parker'], 'subject_id':['sub1','sub2','sub4','sub6','sub5'], 'Marks_scored':[98,90,87,69,78]}, index=[1,2,3,4,5]) two = pd.DataFrame({ 'Name': ['Billy', 'Brian', 'Bran', 'Bryce', 'Betty'], 'subject_id':['sub2','sub4','sub3','sub6','sub5'], 'Marks_scored':[89,80,79,97,88]}, index=[1,2,3,4,5]) print (one.append(two)) 

Výkon

 Name subject_id Marks_scored 1 Parker sub1 98 2 Smith sub2 90 3 Allen sub4 87 4 John sub6 69 5 Parker sub5 78 1 Billy sub2 89 2 Brian sub4 80 3 Bran sub3 79 4 Bryce sub6 97 5 Betty sub5 88