logo

Metodo Pandas DataFrame.loc[]

Pandas DataFrame è una struttura di dati tabulare bidimensionale con dimensioni variabili e potenzialmente eterogenea con assi etichettati (righe e colonne). Le operazioni aritmetiche si allineano sulle etichette delle righe e delle colonne. Può essere pensato come un contenitore simile a un dict per gli oggetti Series. Questa è la struttura dati primaria del file Panda .

Pandas DataFrame loc[] Sintassi

Panda DataFrame.loc L'attributo accede a un gruppo di righe e colonne tramite etichetta(e) o un array booleano nel dato Panda DataFrame .



Sintassi: DataFrame.loc

Parametro: Nessuno

Ritorna : Scalare, serie, DataFrame



Proprietà Pandas DataFrame loc

Di seguito sono riportati alcuni esempi in cui possiamo utilizzare Pandas DataFrame loc[]:

Esempio 1: Seleziona una singola riga e colonna per etichetta utilizzando loc[]

Utilizza l'attributo DataFrame.loc per accedere a una cella particolare nel dato Panda Dataframe utilizzando l'indice e le etichette delle colonne. Stiamo quindi selezionando una singola riga e colonna per etichetta utilizzando 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)>

>

esempio di nome utente
>

Produzione

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>

Esempio 2: Seleziona più righe e colonne

Utilizzare l'attributo DataFrame.loc per restituire due colonne nel Dataframe specificato e quindi selezionare più righe e colonne come fatto nell'esempio seguente.

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

>

>

Produzione

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>

Esempio 3: selezionare tra due righe o colonne

In questo esempio, creiamo un DataFrame panda denominato 'df', impostiamo indici di riga personalizzati e quindi utilizziamo il metodoloc>accessor per selezionare le righe tra 'Riga_2' e 'Riga_4' incluse e le colonne da 'B' a 'D'. Le righe e le colonne selezionate vengono stampate, dimostrando l'uso dell'indicizzazione basata su etichette conloc>.

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

>

>

Produzione

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>

Esempio 4: selezionare righe o colonne alternative

In questo esempio, creiamo un DataFrame panda denominato 'df', impostiamo indici di riga personalizzati e quindi utilizziamo il metodoiloc>accessor per selezionare righe alternative (ogni seconda riga) e colonne alternative (ogni seconda colonna). Le selezioni risultanti vengono stampate, mostrando l'uso dell'indicizzazione basata su numeri interi coniloc>.

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

>

>

Produzione

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>

Esempio 5: utilizzo delle condizioni con Pandas loc

In questo esempio, stiamo creando un DataFrame panda denominato 'df', imposta indici di riga personalizzati e utilizza il metodoloc>accessor per selezionare le righe in base alle condizioni. Dimostra la selezione delle righe in cui la colonna 'A' ha valori maggiori di 5 e la selezione delle righe in cui la colonna 'B' non è nulla. Le selezioni risultanti vengono quindi stampate, mostrando l'uso del filtro condizionale conloc>.

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

>

>

Produzione

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>