logo

Různé způsoby iterace řádků v Pandas Dataframe

V tomto článku se budeme zabývat jak iterovat přes řádky v DataFrame v Pandas .

Jak iterovat přes řádky v DataFrame v Pandas

Python je skvělý jazyk pro analýzu dat, především kvůli fantastickému ekosystému balíčků Pythonu zaměřených na data. pandy je jedním z těchto balíčků a značně usnadňuje import a analýzu dat.



Podívejme se na různé způsoby iterace řádků v Pandas Datový rámec :

Metoda 1: Použití atributu index Dataframe.

Python3



příklad seznamu v Javě






# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,> >'Aishwarya'>,>'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,> >'Arts'>,>'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,> >'Stream'>,>'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using index attribute : '>)> # iterate through each row and select> # 'Name' and 'Stream' column respectively.> for> ind>in> df.index:> >print>(df[>'Name'>][ind], df[>'Stream'>][ind])>

>

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using index attribute :  Ankit Math Amit Commerce Aishwarya Arts Priyanka Biology>

Metoda 2: Použitím místo[] funkce datového rámce.

Python3




# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,> >'Aishwarya'>,>'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,> >'Arts'>,>'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,> >'Stream'>,> >'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using loc function : '>)> # iterate through each row and select> # 'Name' and 'Age' column respectively.> for> i>in> range>(>len>(df)):> >print>(df.loc[i,>'Name'>], df.loc[i,>'Age'>])>

kolik měst usa
>

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using loc function :  Ankit 21 Amit 19 Aishwarya 20 Priyanka 18>

Metoda 3: Použitím iloc[] funkce DataFrame.

Python3




# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,> >'Aishwarya'>,>'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,> >'Arts'>,>'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,> >'Stream'>,>'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using iloc function : '>)> # iterate through each row and select> # 0th and 2nd index column respectively.> for> i>in> range>(>len>(df)):> >print>(df.iloc[i,>0>], df.iloc[i,>2>])>

python rstrip

>

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using iloc function :  Ankit Math Amit Commerce Aishwarya Arts Priyanka Biology ​>

Metoda 4: Použitím iterrows() metoda datového rámce.

Python3




# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,> >'Aishwarya'>,>'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,> >'Arts'>,>'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,> >'Stream'>,>'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using iterrows() method : '>)> # iterate through each row and select> # 'Name' and 'Age' column respectively.> for> index, row>in> df.iterrows():> >print>(row[>'Name'>], row[>'Age'>])>

>

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using iterrows() method :  Ankit 21 Amit 19 Aishwarya 20 Priyanka 18>

Metoda 5: Použitím iterdvojky() metoda datového rámce.

Python3




Fibonacciho řada v c

# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,>'Aishwarya'>,> >'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,>'Arts'>,> >'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,> >'Stream'>,> >'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using itertuples() method : '>)> # iterate through each row and select> # 'Name' and 'Percentage' column respectively.> for> row>in> df.itertuples(index>=>True>, name>=>'Pandas'>):> >print>(>getattr>(row,>'Name'>),>getattr>(row,>'Percentage'>))>

>

junit testovací případy

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using itertuples() method :  Ankit 88 Amit 92 Aishwarya 95 Priyanka 70 ​>

Metoda 6: Použitím aplikovat() metoda datového rámce.

Python3




# import pandas package as pd> import> pandas as pd> # Define a dictionary containing students data> data>=> {>'Name'>: [>'Ankit'>,>'Amit'>,>'Aishwarya'>,> >'Priyanka'>],> >'Age'>: [>21>,>19>,>20>,>18>],> >'Stream'>: [>'Math'>,>'Commerce'>,>'Arts'>,> >'Biology'>],> >'Percentage'>: [>88>,>92>,>95>,>70>]}> # Convert the dictionary into DataFrame> df>=> pd.DataFrame(data, columns>=>[>'Name'>,>'Age'>,>'Stream'>,> >'Percentage'>])> print>(>'Given Dataframe : '>, df)> print>(>' Iterating over rows using apply function : '>)> # iterate through each row and concatenate> # 'Name' and 'Percentage' column respectively.> print>(df.>apply>(>lambda> row: row[>'Name'>]>+> +> >str>(row[>'Percentage'>]), axis>=>1>))>

>

>

Výstup:

Given Dataframe :  Name Age Stream Percentage 0 Ankit 21 Math 88 1 Amit 19 Commerce 92 2 Aishwarya 20 Arts 95 3 Priyanka 18 Biology 70  Iterating over rows using apply function :  0 Ankit 88 1 Amit 92 2 Aishwarya 95 3 Priyanka 70 dtype: object>