logo

Olika sätt att iterera över rader i Pandas Dataframe

I den här artikeln kommer vi att täcka hur man itererar över rader i en DataFrame i Pandas .

Hur man itererar över rader i en DataFrame i Pandas

Python är ett bra språk för att göra dataanalys, främst på grund av det fantastiska ekosystemet av datacentrerade Python-paket. Pandas är ett av dessa paket och gör import och analys av data mycket enklare.



Låt oss se de olika sätten att iterera över rader i Pandas Dataram :

Metod 1: Använda dataramens indexattribut.

Python3



teknikens fördelar och nackdelar






# 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])>

>

>

Produktion:

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>

Metod 2: Använder sig av plats[] fungera av dataramen.

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'>])>

reaktionstabell
>

>

Produktion:

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>

Metod 3: Använder sig av iloc[] fungera av 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>])>

pandor skapar dataram

>

>

Produktion:

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 ​>

Metod 4: Använder sig av iterrows() metod av dataramen.

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'>])>

>

>

Produktion:

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>

Metod 5: Använder sig av itertuples() metod för dataramen.

Python3




java char till heltal

# 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'>))>

>

hur man använder mysql workbench

>

Produktion:

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 ​>

Metod 6: Använder sig av tillämpa() metod av dataramen.

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>))>

>

>

Produktion:

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>