Pandas DataFrame.loc[] Metoda
Pandas DataFrame este o structură de date tabulară bidimensională care poate fi modificată în dimensiune, potențial eterogenă, cu axe etichetate (rânduri și coloane). Operațiile aritmetice se aliniază atât pe etichetele rândurilor, cât și pe cele coloane. Poate fi considerat ca un container asemănător unui dict pentru obiectele din serie. Aceasta este structura de date primară a panda .
Pandas DataFrame loc[] Sintaxă
panda DataFrame.loc Atributul accesează un grup de rânduri și coloane prin etichetă(e) sau o matrice booleană din Pandas DataFrame .
Sintaxă: DataFrame.loc
Parametru: Nici unul
Se intoarce : Scalar, Serie, DataFrame
Proprietatea Pandas DataFrame loc
Mai jos sunt câteva exemple prin care putem folosi Pandas DataFrame loc[]:
Exemplul 1: Selectați un singur rând și o coloană după etichetă folosind loc[]
Utilizați atributul DataFrame.loc pentru a accesa o anumită celulă din data Pandas Dataframe folosind etichetele indexului și coloanelor. Apoi selectăm un singur rând și coloană după etichetă folosind 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)> |
Ieșire
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
Exemplul 2: Selectați mai multe rânduri și coloane
Utilizați atributul DataFrame.loc pentru a returna două coloane din cadrul de date dat și apoi selectați mai multe rânduri și coloane așa cum se face în exemplul de mai jos.
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)> |
Ieșire
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
Exemplul 3: Selectați Între două rânduri sau coloane
În acest exemplu, creăm un DataFrame panda numit „df”, setăm indici de rând personalizați și apoi folosim loc> Accesor pentru a selecta rândurile între „Rând_2” și „Rând_4” inclusiv și coloanele „B” până la „D”. Rândurile și coloanele selectate sunt tipărite, demonstrând utilizarea indexării bazate pe etichete cu loc> .
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)> |
Ieșire
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
Exemplul 4: Selectați rânduri sau coloane alternative
În acest exemplu, creăm un DataFrame panda numit „df”, setăm indici de rând personalizați și apoi folosim iloc> Accesor pentru a selecta rânduri alternative (la fiecare al doilea rând) și coloane alternative (la fiecare a doua coloană). Selecțiile rezultate sunt tipărite, prezentând utilizarea indexării bazate pe numere întregi cu iloc> .
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)> |
Ieșire
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
Exemplul 5: Utilizarea Condițiilor cu Pandas loc
În acest exemplu, creăm un DataFrame panda numit „df”, setează indici de rând personalizați și utilizează loc> Accesor pentru a selecta rândurile în funcție de condiții. Demonstrează selectarea rândurilor în care coloana „A” are valori mai mari de 5 și selectarea rândurilor în care coloana „B” nu este nulă. Selecțiile rezultate sunt apoi tipărite, arătând utilizarea filtrării condiționate cu loc> .
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'> ]>>>> )> 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)> |
Ieșire
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