Pandas DataFrame ist eine zweidimensionale, in der Größe veränderliche, potenziell heterogene tabellarische Datenstruktur mit beschrifteten Achsen (Zeilen und Spalten). Arithmetische Operationen werden sowohl an Zeilen- als auch an Spaltenbeschriftungen ausgerichtet. Man kann es sich als einen dict-ähnlichen Container für Serienobjekte vorstellen. Dies ist die primäre Datenstruktur des Pandas .
Pandas DataFrame loc[]-Syntax
Pandas DataFrame.loc Das Attribut greift auf eine Gruppe von Zeilen und Spalten über Beschriftung(en) oder ein boolesches Array im angegebenen zu Pandas DataFrame .
Syntax: DataFrame.loc
Parameter: Keiner
Kehrt zurück : Skalar, Serie, DataFrame
Pandas DataFrame loc-Eigenschaft
Nachfolgend finden Sie einige Beispiele, wie wir Pandas DataFrame loc[] verwenden können:
Beispiel 1: Wählen Sie mit loc[] eine einzelne Zeile und Spalte nach Beschriftung aus
Verwenden Sie das DataFrame.loc-Attribut, um auf eine bestimmte Zelle in der angegebenen Zelle zuzugreifen Pandas-Datenrahmen mithilfe der Index- und Spaltenbezeichnungen. Anschließend wählen wir mit loc[] eine einzelne Zeile und Spalte nach Beschriftung aus.
Java-Referenztypen
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)> |
>
>
Ausgabe
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>
Beispiel 2: Wählen Sie „Mehrere Zeilen und Spalten“ aus
Verwenden Sie das DataFrame.loc-Attribut, um zwei der Spalten im angegebenen Datenrahmen zurückzugeben, und wählen Sie dann mehrere Zeilen und Spalten aus, wie im folgenden Beispiel dargestellt.
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)> |
>
>
Ausgabe
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>
Beispiel 3: Wählen Sie zwischen zwei Zeilen oder Spalten
In diesem Beispiel erstellen wir einen Pandas-DataFrame mit dem Namen „df“, legen benutzerdefinierte Zeilenindizes fest und verwenden dann denloc>Accessor zum Auswählen von Zeilen zwischen „Zeile_2“ und „Zeile_4“ (einschließlich) und Spalten „B“ bis „D“. Die ausgewählten Zeilen und Spalten werden gedruckt und demonstrieren die Verwendung der etikettenbasierten Indizierung mitloc>.
Python3
Javascript onclick
# 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)> |
>
>
Ausgabe
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>
Beispiel 4: Alternative Zeilen oder Spalten auswählen
In diesem Beispiel erstellen wir einen Pandas-DataFrame mit dem Namen „df“, legen benutzerdefinierte Zeilenindizes fest und verwenden dann deniloc>Accessor zum Auswählen alternativer Zeilen (jede zweite Zeile) und alternativer Spalten (jede zweite Spalte). Die resultierenden Auswahlen werden gedruckt und demonstrieren die Verwendung der ganzzahlbasierten Indizierung mitiloc>.
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)> |
>
>
Ausgabe
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>
Beispiel 5: Bedingungen mit Pandas loc verwenden
In diesem Beispiel erstellen wir einen Pandas-DataFrame mit dem Namen „df“, legen benutzerdefinierte Zeilenindizes fest und verwenden denloc>Accessor zum Auswählen von Zeilen basierend auf Bedingungen. Es zeigt die Auswahl von Zeilen, in denen Spalte „A“ Werte größer als 5 aufweist, und die Auswahl von Zeilen, in denen Spalte „B“ nicht null ist. Die resultierende Auswahl wird dann gedruckt und zeigt die Verwendung der bedingten Filterung mitloc>.
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)> |
>
>
Ausgabe
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>