Pandas DataFrame er en todimensionel størrelse-muterbar, potentielt heterogen tabelformet datastruktur med mærkede akser (rækker og kolonner). Aritmetiske operationer justeres på både række- og kolonneetiketter. Det kan opfattes som en diktelignende beholder til serieobjekter. Dette er den primære datastruktur for Pandaer .
Pandas DataFrame loc[] Syntaks
Pandaer DataFrame.loc attribut giver adgang til en gruppe af rækker og kolonner efter etiket(er) eller en boolesk matrix i den givne Pandas DataFrame .
Syntaks: DataFrame.loc
Parameter: Ingen
Vender tilbage : Skalar, Serier, DataFrame
Pandas DataFrame loc Property
Nedenfor er nogle eksempler, hvormed vi kan bruge Pandas DataFrame loc[]:
Eksempel 1: Vælg en enkelt række og kolonne efter etiket ved hjælp af loc[]
Brug DataFrame.loc-attributten til at få adgang til en bestemt celle i den givne Pandas dataramme ved hjælp af indeks- og kolonneetiketter. Vi vælger derefter en enkelt række og kolonne efter etiket ved hjælp af loc[].
Python3
# importing pandas as pd> import> pandas as pd> # Creating the DataFrame> df>=> pd.DataFrame({>'Weight'>: [>45>,>88>,>56>,>15>,>71>],> >'Name'>: [>'Sam'>,>'Andrea'>,>'Alex'>,>'Robin'>,>'Kia'>],> >'Age'>: [>14>,>25>,>55>,>8>,>21>]})> # Create the index> index_>=> [>'Row_1'>,>'Row_2'>,>'Row_3'>,>'Row_4'>,>'Row_5'>]> # Set the index> df.index>=> index_> # Print the DataFrame> print>(>'Original DataFrame:'>)> print>(df)> # Corrected selection using loc for a specific cell> result>=> df.loc[>'Row_2'>,>'Name'>]> # Print the result> print>(>'
Selected Value at Row_2, Column 'Name':'>)> print>(result)> |
>
>
Produktion
Original DataFrame: Weight Name Age Row_1 45 Sam 14 Row_2 88 Andrea 25 Row_3 56 Alex 55 Row_4 15 Robin 8 Row_5 71 Kia 21 Selected Value at Row_2, Column 'Name': Andrea>
Eksempel 2: Vælg Flere rækker og kolonner
Brug DataFrame.loc-attributten til at returnere to af kolonnerne i den givne Dataframe, og vælg derefter flere rækker og kolonner som gjort i nedenstående eksempel.
Python3
# importing pandas as pd> import> pandas as pd> # Creating the DataFrame> df>=> pd.DataFrame({>'A'>:[>12>,>4>,>5>,>None>,>1>],> >'B'>:[>7>,>2>,>54>,>3>,>None>],> >'C'>:[>20>,>16>,>11>,>3>,>8>],> >'D'>:[>14>,>3>,>None>,>2>,>6>]})> # Create the index> index_>=> [>'Row_1'>,>'Row_2'>,>'Row_3'>,>'Row_4'>,>'Row_5'>]> # Set the index> df.index>=> index_> # Print the DataFrame> print>(>'Original DataFrame:'>)> print>(df)> # Corrected column names ('A' and 'D') in the result> result>=> df.loc[:, [>'A'>,>'D'>]]> # Print the result> print>(>'
Selected Columns 'A' and 'D':'>)> print>(result)> |
>
>
Produktion
Original DataFrame: A B C D Row_1 12.0 7 20 14.0 Row_2 4.0 2 16 3.0 Row_3 5.0 54 11 NaN Row_4 NaN 3 3 2.0 Row_5 1.0 NaN 8 6.0 Selected Columns 'A' and 'D': A D Row_1 12.0 14.0 Row_2 4.0 3.0 Row_3 5.0 NaN Row_4 NaN 2.0 Row_5 1.0 6.0>
Eksempel 3: Vælg mellem to rækker eller kolonner
I dette eksempel opretter vi en pandas DataFrame med navnet 'df', sætter tilpassede rækkeindekser og bruger derefterloc>accessor for at vælge rækker mellem 'Row_2' og 'Row_4' inklusive og kolonnerne 'B' til og med 'D'. De valgte rækker og kolonner udskrives, hvilket demonstrerer brugen af etiketbaseret indeksering medloc>.
Python3
java switch erklæring
# importing pandas as pd> import> pandas as pd> # Creating the DataFrame> df>=> pd.DataFrame({>'A'>: [>12>,>4>,>5>,>None>,>1>],> >'B'>: [>7>,>2>,>54>,>3>,>None>],> >'C'>: [>20>,>16>,>11>,>3>,>8>],> >'D'>: [>14>,>3>,>None>,>2>,>6>]})> # Create the index> index_>=> [>'Row_1'>,>'Row_2'>,>'Row_3'>,>'Row_4'>,>'Row_5'>]> # Set the index> df.index>=> index_> # Print the original DataFrame> print>(>'Original DataFrame:'>)> print>(df)> # Select Rows Between 'Row_2' and 'Row_4'> selected_rows>=> df.loc[>'Row_2'>:>'Row_4'>]> print>(>'
Selected Rows:'>)> print>(selected_rows)> # Select Columns 'B' through 'D'> selected_columns>=> df.loc[:,>'B'>:>'D'>]> print>(>'
Selected Columns:'>)> print>(selected_columns)> |
>
>
Produktion
Original DataFrame: A B C D Row_1 12.0 7 20 14.0 Row_2 4.0 2 16 3.0 Row_3 5.0 54 11 NaN Row_4 NaN 3 3 2.0 Row_5 1.0 NaN 8 6.0 Selected Rows: A B C D Row_2 4 2 16 3.0 Row_3 5 54 11 NaN Row_4 NaN 3 3 2.0 Selected Columns: B C D Row_1 7 20 14.0 Row_2 2 16 3.0 Row_3 54 11 NaN Row_4 3 3 2.0 Row_5 NaN 8 6.0>
Eksempel 4: Vælg alternative rækker eller kolonner
I dette eksempel opretter vi en pandas DataFrame med navnet 'df', sætter tilpassede rækkeindekser og bruger derefteriloc>accessor til at vælge alternative rækker (hver anden række) og alternative kolonner (hver anden kolonne). De resulterende valg udskrives, hvilket viser brugen af heltalsbaseret indeksering mediloc>.
Python3
# importing pandas as pd> import> pandas as pd> # Creating the DataFrame> df>=> pd.DataFrame({>'A'>: [>12>,>4>,>5>,>None>,>1>],> >'B'>: [>7>,>2>,>54>,>3>,>None>],> >'C'>: [>20>,>16>,>11>,>3>,>8>],> >'D'>: [>14>,>3>,>None>,>2>,>6>]})> # Create the index> index_>=> [>'Row_1'>,>'Row_2'>,>'Row_3'>,>'Row_4'>,>'Row_5'>]> # Set the index> df.index>=> index_> # Print the original DataFrame> print>(>'Original DataFrame:'>)> print>(df)> # Select Alternate Rows> alternate_rows>=> df.iloc[::>2>]> print>(>'
Alternate Rows:'>)> print>(alternate_rows)> # Select Alternate Columns> alternate_columns>=> df.iloc[:, ::>2>]> print>(>'
Alternate Columns:'>)> print>(alternate_columns)> |
>
>
Produktion
Original DataFrame: A B C D Row_1 12.0 7 20 14.0 Row_2 4.0 2 16 3.0 Row_3 5.0 54 11 NaN Row_4 NaN 3 3 2.0 Row_5 1.0 NaN 8 6.0 Alternate Rows: A B C D Row_1 12.0 7 20 14.0 Row_3 5.0 54 11 NaN Row_5 1.0 NaN 8 6.0 Alternate Columns: A C Row_1 12.0 20 Row_2 4.0 16 Row_3 5.0 11 Row_4 NaN 3 Row_5 1.0 8>
Eksempel 5: Brug af betingelser med Pandas loc
I dette eksempel opretter vi en pandas DataFrame ved navn 'df', sætter tilpassede rækkeindekser og brugerloc>accessor til at vælge rækker baseret på betingelser. Det demonstrerer valg af rækker, hvor kolonne 'A' har værdier større end 5, og valg af rækker, hvor kolonne 'B' ikke er nul. De resulterende valg udskrives derefter, hvilket viser brugen af betinget filtrering medloc>.
Python3
# importing pandas as pd> import> pandas as pd> # Creating the DataFrame> df>=> pd.DataFrame({>'A'>: [>12>,>4>,>5>,>None>,>1>],> >'B'>: [>7>,>2>,>54>,>3>,>None>],> >'C'>: [>20>,>16>,>11>,>3>,>8>],> >'D'>: [>14>,>3>,>None>,>2>,>6>]})> # Create the index> index_>=> [>'Row_1'>,>'Row_2'>,>'Row_3'>,>'Row_4'>,>'Row_5'>]> # Set the index> df.index>=> index_> # Print the original DataFrame> print>(>'Original DataFrame:'>)> print>(df)> # Using Conditions with loc> # Example: Select rows where column 'A' is greater than 5> selected_rows>=> df.loc[df[>'A'>]>>5>]> print>(>'
Rows where column 'A' is greater than 5:'>)> print>(selected_rows)> # Example: Select rows where column 'B' is not null> non_null_rows>=> df.loc[df[>'B'>].notnull()]> print>(>'
Rows where column 'B' is not null:'>)> print>(non_null_rows)> |
>
>
Produktion
Original DataFrame: A B C D Row_1 12.0 7 20 14.0 Row_2 4.0 2 16 3.0 Row_3 5.0 54 11 NaN Row_4 NaN 3 3 2.0 Row_5 1.0 NaN 8 6.0 Rows where column 'A' is greater than 5: A B C D Row_1 12.0 7 20 14.0 Row_3 5.0 54 11 NaN Rows where column 'B' is not null: A B C D Row_1 12.0 7 20 14.0 Row_2 4.0 2 16 3.0 Row_3 5.0 54 11 NaN Row_4 NaN 3 3 2.0>