logo

Diferencia entre loc() e iloc() en Pandas DataFrame

La biblioteca Pandas de Python es muy útil para la manipulación de datos matemáticos y se usa ampliamente en el campo del aprendizaje automático. Comprende muchos métodos para su correcto funcionamiento. lugar() y iloc() son uno de esos métodos. Se utilizan para dividir datos de la Marco de datos de Pandas . Ayudan en la selección conveniente de datos del DataFrame en Pitón . Se utilizan para filtrar los datos según algunas condiciones.

Diferencia entre loc() e iloc() en Pandas DataFrame

Aquí, veremos la diferencia entre las funciones loc() e iloc() en Pandas DataFrame. Para ver y comparar la diferencia entre estos dos, crearemos un marco de datos de muestra que usaremos en todo el párrafo. El funcionamiento de ambos métodos se explica en el conjunto de datos de muestra de automóviles.



python3




cómo convertir caracteres a cadenas





# importing the module> import> pandas as pd> > # creating a sample dataframe> data>=> pd.DataFrame({>'Brand'>: [>'Maruti'>,>'Hyundai'>,>'Tata'>,> >'Mahindra'>,>'Maruti'>,>'Hyundai'>,> >'Renault'>,>'Tata'>,>'Maruti'>],> >'Year'>: [>2012>,>2014>,>2011>,>2015>,>2012>,> >2016>,>2014>,>2018>,>2019>],> >'Kms Driven'>: [>50000>,>30000>,>60000>,> >25000>,>10000>,>46000>,> >31000>,>15000>,>12000>],> >'City'>: [>'Gurgaon'>,>'Delhi'>,>'Mumbai'>,> >'Delhi'>,>'Mumbai'>,>'Delhi'>,> >'Mumbai'>,>'Chennai'>,>'Ghaziabad'>],> >'Mileage'>: [>28>,>27>,>25>,>26>,>28>,> >29>,>24>,>21>,>24>]})> > # displaying the DataFrame> display(data)>

>

>

Producción

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 1 Hyundai 2014 30000 Delhi 27 2 Tata 2011 60000 Mumbai 25 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 28 5 Hyundai 2016 46000 Delhi 29 6 Renault 2014 31000 Mumbai 24 7 Tata 2018 15000 Chennai 21 8 Maruti 2019 12000 Ghaziabad 24>

Función loc() de Python

El función loc() es un método de selección de datos basado en etiquetas, lo que significa que tenemos que pasar el nombre de la fila o columna que queremos seleccionar. Este método incluye el último elemento del rango pasado, a diferencia de iloc(). loc() puede aceptar datos booleanos a diferencia de iloc(). Se pueden realizar muchas operaciones utilizando el método loc() como

Ejemplo 1: Seleccionar datos según algunas condiciones

En este ejemplo, el código utiliza elloc>Función para seleccionar y mostrar filas del DataFrame donde la marca es 'Maruti' y el kilometraje es superior a 25, mostrando información relevante sobre los automóviles Maruti con alto kilometraje.

python3




# selecting cars with brand 'Maruti' and Mileage>25> display(data.loc[(data.Brand>=>=> 'Maruti'>) & (data.Mileage>>25>)])>

>

>

Producción

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 4 Maruti 2012 10000 Mumbai 28>

Ejemplo 2: Seleccionar un rango de filas del marco de datos

En este ejemplo, el código utiliza elloc>función para extraer y mostrar filas con índices que van del 2 al 5 (inclusive) del DataFrame, proporcionando información sobre un rango específico de automóviles en el conjunto de datos.

python3


tabla java



# selecting range of rows from 2 to 5> display(data.loc[>2>:>5>])>

>

>

Producción

 Brand Year Kms Driven City Mileage 2 Tata 2011 60000 Mumbai 25 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 28 5 Hyundai 2016 46000 Delhi 29>

Ejemplo 3: Actualizar el valor de cualquier columna

En este ejemplo, el código utiliza elloc>función para actualizar los valores de 'Millaje' a 22 para automóviles en el DataFrame cuyo año de fabricación es anterior a 2015. Luego se muestra el DataFrame modificado, que refleja los cambios realizados en la columna Kilometraje.

python3

recorrido de pedido por correo




# updating values of Mileage if Year <2015> data.loc[(data.Year <>2015>), [>'Mileage'>]]>=> 22> display(data)>

>

>

Producción

nombre de caracteres especiales
 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 22 1 Hyundai 2014 30000 Delhi 22 2 Tata 2011 60000 Mumbai 22 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 22 5 Hyundai 2016 46000 Delhi 29 6 Renault 2014 31000 Mumbai 22 7 Tata 2018 15000 Chennai 21 8 Maruti 2019 12000 Ghaziabad 24>

Función iloc() de Python

El función iloc() es un método de selección basado en índices, lo que significa que tenemos que pasar un índice entero en el método para seleccionar una fila/columna específica. Este método no incluye el último elemento del rango pasado a diferencia de loc(). iloc() no acepta datos booleanos a diferencia de loc(). Las operaciones realizadas usando iloc() son:

Ejemplo 1: Seleccionar filas usando índices enteros

En este ejemplo, el código emplea eliloc>función para extraer y mostrar filas específicas con índices 0, 2, 4 y 7 del DataFrame, mostrando información sobre los automóviles seleccionados en el conjunto de datos.

python3




# selecting 0th, 2nd, 4th, and 7th index rows> display(data.iloc[[>0>,>2>,>4>,>7>]])>

>

>

Producción

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 2 Tata 2011 60000 Mumbai 25 4 Maruti 2012 10000 Mumbai 28 7 Tata 2018 15000 Chennai 21>

Ejemplo 2: Seleccionar un rango de columnas y filas simultáneamente

En este ejemplo, el código utiliza eliloc>función para extraer y mostrar un subconjunto del DataFrame, incluidas las filas 1 a 4 y las columnas 2 a 4. Esto proporciona información sobre un rango específico de automóviles y sus atributos relevantes en el conjunto de datos.

cadena a objeto json

python3




# selecting rows from 1 to 4 and columns from 2 to 4> display(data.iloc[>1>:>5>,>2>:>5>])>

>

>

Producción

 Kms Driven City Mileage 1 30000 Delhi 27 2 60000 Mumbai 25 3 25000 Delhi 26 4 10000 Mumbai 28>