Pandas.apply umožňuje používateľom odovzdať funkciu a použiť ju na každú jednu hodnotu série Pandas. Pre knižnicu pandas je to obrovské zlepšenie, pretože táto funkcia pomáha oddeľovať údaje podľa požadovaných podmienok, vďaka čomu sa efektívne využívajú v dátovej vede a strojovom učení.
Inštalácia:
Importujte modul Pandas do súboru python pomocou nasledujúcich príkazov na termináli:
pip install pandas>
Na prečítanie súboru csv a jeho stlačenie do série pandas sa používajú nasledujúce príkazy:
import pandas as pd s = pd.read_csv('stock.csv', squeeze=True)> Syntax:
s.apply(func, convert_dtype=True, args=())>
Parametre:
func: .apply prevezme funkciu a aplikuje ju na všetky hodnoty série pandy. convert_dtype: Preveďte dtype podľa operácie funkcie. argumenty=(): Ďalšie argumenty, ktoré sa majú odovzdať funkcii namiesto série. Typ návratu: Séria Pandas po použití funkcie/operácie.
Príklad č. 1:
Nasledujúci príklad prejde funkciou a skontroluje hodnotu každého prvku v sérii a podľa toho vráti nízku, normálnu alebo vysokú hodnotu.
PYTHON3
import> pandas as pd> # reading csv> s>=> pd.read_csv('stock.csv', squeeze>=> True>)> # defining function to check price> def> fun(num):> >if> num<>200>:> >return> 'Low'> >elif> num>>=> 200> and> num<>400>:> >return> 'Normal'> >else>:> >return> 'High'> # passing function to apply and storing returned series in new> new>=> s.>apply>(fun)> # printing first 3 element> print>(new.head(>3>))> # printing elements somewhere near the middle of series> print>(new[>1400>], new[>1500>], new[>1600>])> # printing last 3 elements> print>(new.tail(>3>))> |
štruktúry využívajúce polia v c
>
>
Výkon:

Príklad č. 2:
V nasledujúcom príklade je dočasná anonymná funkcia vytvorená v samotnom .apply pomocou lambda. Ku každej hodnote v sérii pridá 5 a vráti novú sériu.
PYTHON3
import> pandas as pd> s>=> pd.read_csv('stock.csv', squeeze>=> True>)> # adding 5 to each value> new>=> s.>apply>(>lambda> num : num>+> 5>)> # printing first 5 elements of old and new series> print>(s.head(),>'
'>, new.head())> # printing last 5 elements of old and new series> print>(>'
'>, s.tail(),>'
'>, new.tail())> |
>
>
Výkon:
0 50.12 1 54.10 2 54.65 3 52.38 4 52.95 Name: Stock Price, dtype: float64 0 55.12 1 59.10 2 59.65 3 57.38 4 57.95 Name: Stock Price, dtype: float64 3007 772.88 3008 771.07 3009 773.18 3010 771.61 3011 782.22 Name: Stock Price, dtype: float64 3007 777.88 3008 776.07 3009 778.18 3010 776.61 3011 787.22 Name: Stock Price, dtype: float64>
Ako bolo pozorované, nové hodnoty = staré hodnoty + 5