Pandas DataFrame is een tweedimensionale, in grootte veranderbare, potentieel heterogene datastructuur in tabelvorm met gelabelde assen (rijen en kolommen). Rekenkundige bewerkingen worden uitgelijnd op zowel rij- als kolomlabels. Het kan worden gezien als een dictaatachtige container voor Series-objecten. Dit is de primaire gegevensstructuur van het Panda's .
Panda's DataFrame loc[] Syntaxis
Panda's DataFrame.loc attribuut heeft toegang tot een groep rijen en kolommen via label(s) of een booleaanse array in het gegeven Panda's DataFrame .
Syntaxis: DataFrame.loc
Parameter : Geen
Geeft terug : Scalair, serie, dataframe
Panda's DataFrame loc-eigenschap
Hieronder staan enkele voorbeelden waarmee we Pandas DataFrame loc[] kunnen gebruiken:
Voorbeeld 1: Selecteer een enkele rij en kolom op label met loc[]
Gebruik het DataFrame.loc-attribuut om toegang te krijgen tot een bepaalde cel in de gegeven cel Panda's-dataframe met behulp van de index- en kolomlabels. Vervolgens selecteren we een enkele rij en kolom op label met behulp van 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)> |
>
>
Uitvoer
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>
Voorbeeld 2: Selecteer Meerdere rijen en kolommen
Gebruik het kenmerk DataFrame.loc om twee van de kolommen in het gegeven dataframe te retourneren en selecteer vervolgens meerdere rijen en kolommen, zoals in het onderstaande voorbeeld wordt gedaan.
Python3
hasext java
# 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)> |
>
>
Uitvoer
boom- en grafentheorie
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>
Voorbeeld 3: Selecteer tussen twee rijen of kolommen
In dit voorbeeld maken we een Panda DataFrame met de naam ‘df’, stellen we aangepaste rij-indices in en gebruiken we vervolgens deloc>accessor om rijen tussen ‘Row_2’ en ‘Row_4’ te selecteren, en de kolommen ‘B’ tot en met ‘D’. De geselecteerde rijen en kolommen worden afgedrukt, waarmee het gebruik van op labels gebaseerde indexering wordt gedemonstreerdloc>.
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 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)> |
>
>
Uitvoer
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>
Voorbeeld 4: Selecteer alternatieve rijen of kolommen
In dit voorbeeld maken we een Panda DataFrame met de naam ‘df’, stellen we aangepaste rij-indices in en gebruiken we vervolgens deiloc>accessor om alternatieve rijen (elke tweede rij) en alternatieve kolommen (elke tweede kolom) te selecteren. De resulterende selecties worden afgedrukt, waarbij het gebruik van op gehele getallen gebaseerde indexering wordt getoondiloc>.
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)> |
>
gelijkwaardigheid wetten
>
Uitvoer
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>
Voorbeeld 5: Voorwaarden gebruiken met Pandas loc
In dit voorbeeld maken we een panda's DataFrame met de naam 'df', stellen we aangepaste rij-indices in en gebruiken we deloc>accessor om rijen te selecteren op basis van voorwaarden. Het demonstreert het selecteren van rijen waarbij kolom ‘A’ waarden groter dan 5 heeft en het selecteren van rijen waarbij kolom ‘B’ niet nul is. De resulterende selecties worden vervolgens afgedrukt, waarbij het gebruik van voorwaardelijke filtering wordt gedemonstreerdloc>.
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)> |
>
>
Uitvoer
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>