Eliminar filas de cuadro de datos

Eliminar filas de cuadro de datos
Supongamos que hay una situación para eliminar las filas en un marco de datos R. Cómo lo harás?

Este artículo mostrará diferentes formas de eliminar filas de un marco de datos.

Creemos un marco de datos de mercado con cuatro filas y cinco columnas.

#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#Dispraad el market DataFrame
Impresión (mercado)

Resultado:

Puede ver el marco de datos del mercado en la siguiente imagen:

Escenario 1: eliminar una sola fila

Estamos eliminando una sola fila del marco de datos en este escenario. Según el número de fila o el índice de fila, podemos eliminarlo. En R, la indexación comienza desde 1.

Aquí, desconectaremos el índice de fila a través del operador "-" (menos) que queremos eliminar.

Sintaxis:

dataFrame_Object [-ROW,]

Dónde,

"Fila" se refiere a la posición de la fila.

Veamos un ejemplo para demostrar este escenario.

Ejemplo

En este ejemplo, eliminaremos la primera y cuarta filas por separado y mostraremos las filas restantes en un marco de datos del mercado para cada escenario.

#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#Remove la primera fila y muestre las filas restantes en un marco de datos
Impresión (mercado [-1,])
#Remove la cuarta fila y muestre las filas restantes en un marco de datos
Imprimir (mercado [-4,])

Resultado:

Escenario 2: eliminar varias filas

En este escenario, estamos eliminando múltiples filas del marco de datos. Según los números de fila o los índices de fila, podemos eliminarlos. En R, la indexación comienza desde 1.

Método 1: eliminar filas particulares

Aquí, desconectaremos los índices de fila que queremos eliminar especificándolos en un vector a través del "-" (menos) operador.

Sintaxis:

dataFrame_Object [-c (fila, ...),]

Dónde,

"Fila" se refiere a la posición de la fila.

Veamos un ejemplo para demostrar este escenario.

Ejemplo

Eliminaremos las filas segunda, tercera y cuarta del marco de datos del mercado en este ejemplo.

#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#remove 2,3 y 4 filas del market DataFrame
Impresión (mercado [-c (2, 3, 4),])

Resultado:

Podemos ver que se devuelve la fila 1 restante.

Método 2: Retire las filas en el rango

Aquí, desconectaremos los índices de fila en el rango que queremos eliminar especificando esos rangos en un vector a través del operador "-" (menos).

Sintaxis:

dataFrame_Object [-c (primero: último),]

Dónde,

"Primero" se refiere a la primera posición de fila, y "último" se refiere a la posición de la última fila.

Veamos un ejemplo para demostrar este escenario.

Ejemplo

En este ejemplo, eliminaremos las filas de la segunda posición a la cuarta posición.

#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#Relaciones de las filas de 2 a 4 índice.
Impresión (mercado [-c (2: 4),])

Resultado:

Podemos ver que se devuelve la fila 1 restante.

Método 3: Retire las filas hasta la última

Aquí, desconectaremos los índices de fila en un rango, a través del operador "-" (menos), queremos eliminar especificando esos rangos en un vector. nrow () devolverá el índice de la última fila, por lo que podemos eliminar las filas especificando esto como la última posición.

Sintaxis:

dataFrame_Object [-c (primero: nrow (dataFrame_Object)),]

Dónde,

"Primero" se refiere a la primera posición de fila, y "nrow ()" se refiere a la posición de la última fila.

Veamos un ejemplo para demostrar este escenario.

Ejemplo

En este ejemplo, eliminaremos las filas de la segunda posición hasta el final del marco de datos.

#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#Reducción de filas de 2 al final de la fila
Impresión (mercado [-C (2: nrow (mercado)),])

Resultado:

Podemos ver que se devuelve la fila 1 restante.

Enfoque 3: eliminar filas con subconjunto ()

Método Subset () En R Programación filtra las filas en función de la condición. Si la condición es "falsa", esas filas se eliminan del marco de datos y vuelven a las filas restantes.

Sintaxis:

subconjunto (dataFrame_Object, condición)

Parámetros:

Se necesitan dos parámetros.

  1. DataFrame_Object es el marco de datos.
  2. La condición se refiere a declaraciones lógicas o expresivas.

Ejemplo

En este ejemplo, seleccionaremos filas donde,

  1. comercializar más de 2
  2. Market_place es India
  3. Market_squarefeet: menos o igual a 230
#cree un mercado de marcos de datos que tenga 4 filas y 5 columnas.
mercado = datos.Frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
('India', 'EE. UU.', 'India', 'Australia'), Market_Type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent'),
Market_squarefeet = C (120,342,220,110))
#Seleccione filas donde mercado_id mayor de 2
Imprimir ("Filas con Market_id más de 2:")
Impresión (subconjunto (mercado, Market_id> 2))
#selecte filas donde el mercado es India
Imprimir ("Las filas con Market_place son India:")
print (subconjunto (mercado, mercado_place == 'India'))
#Select filas donde market_squarefeet - menos de o igual a 230.
Imprima ("Filas con Market_Squarefeet menos o igual a 230:")
print (subconjunto (mercado, market_squarefeet<=230 ))

Resultado:

Conclusión

En este artículo, aprendimos que podría ser posible eliminar una sola o múltiples filas especificando posiciones de fila. Si desea eliminar las filas condicionalmente, puede usar el método Subset () y especificar la condición dentro de él.