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>