Elimina le righe del frame di dati

Elimina le righe del frame di dati
Supponiamo che ci sia una situazione per eliminare le righe in un frame di dati R. Come lo farai?

Questo articolo mostrerà diversi modi per eliminare le righe da un frame di dati.

Creiamo un frame di dati di mercato con quattro righe e cinque colonne.

#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#display il telaio di dati di mercato
Stampa (mercato)

Risultato:

Puoi vedere la cornice dei dati di mercato nella seguente immagine:

Scenario 1: rimuovere una sola riga

Stiamo rimuovendo una singola riga dal frame di dati in questo scenario. Sulla base del numero di riga o dell'indice di riga, possiamo rimuoverlo. In R, l'indicizzazione inizia da 1.

Qui, non selezioneremo l'indice di riga tramite l'operatore "-" (meno) che vogliamo rimuovere.

Sintassi:

dataframe_object [-row,]

Dove,

"Row" si riferisce alla posizione della riga.

Vediamo un esempio per dimostrare questo scenario.

Esempio

In questo esempio, rimuoveremo la prima e la quarta riga separatamente e visualizzeremo le righe rimanenti in un frame di dati di mercato per ogni scenario.

#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#Remove 1st riga e visualizzare le righe rimanenti in un frame dati
Stampa (Market [-1,])
#remove 4a riga e visualizzare le righe rimanenti in un telaio di dati
Stampa (Market [-4,])

Risultato:

Scenario 2: rimuovere più righe

In questo scenario, stiamo rimuovendo più righe dal frame di dati. Sulla base dei numeri di riga o degli indici di riga, possiamo rimuoverli. In R, l'indicizzazione inizia da 1.

Metodo 1: rimuovere le righe particolari

Qui, non selezioneremo gli indici di riga che vogliamo rimuovere specificandoli in un vettore attraverso l'operatore "-" (meno).

Sintassi:

dataframe_object [-c (riga, ...),]

Dove,

"Row" si riferisce alla posizione della riga.

Vediamo un esempio per dimostrare questo scenario.

Esempio

Rimuoremo la seconda, la terza e la quarta riga dalla cornice dei dati di mercato in questo esempio.

#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#Remove 2,3 e 4 righe dal telaio di mercato di mercato
stampa (mercato [-c (2, 3, 4),])

Risultato:

Possiamo vedere che la restante riga-1 viene restituita.

Metodo 2: rimuovere le righe nell'intervallo

Qui, non selezioneremo gli indici di riga nell'intervallo che vogliamo rimuovere specificando tali gamme in un vettore attraverso l'operatore "-" (meno).

Sintassi:

dataframe_object [-c (primo: ultimo),]

Dove,

"First" si riferisce alla posizione della prima riga e "Last" si riferisce alla posizione dell'ultima riga.

Vediamo un esempio per dimostrare questo scenario.

Esempio

In questo esempio, rimuoveremo le righe dalla seconda posizione alla quarta posizione.

#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#remove righe da 2 a 4 indice.
stampa (mercato [-c (2: 4),])

Risultato:

Possiamo vedere che la restante riga-1 viene restituita.

Metodo 3: rimuovere le righe fino all'ultima

Qui, non selezioneremo gli indici di riga in un intervallo, attraverso l'operatore “-” (meno), vogliamo rimuovere specificando tali gamme in un vettore. nrow () restituirà l'indice dell'ultima riga, quindi possiamo rimuovere le righe specificandolo come l'ultima posizione.

Sintassi:

DataFrame_Object [-c (primo: nrow (dataframe_object)),]

Dove,

"First" si riferisce alla posizione della prima riga e "nrow ()" si riferisce alla posizione dell'ultima riga.

Vediamo un esempio per dimostrare questo scenario.

Esempio

In questo esempio, rimuoveremo le righe dalla seconda posizione fino alla fine del frame di dati.

#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#Remove Righe da 2 a fine della riga
stampa (mercato [-c (2: nrow (mercato)),])

Risultato:

Possiamo vedere che la restante riga-1 viene restituita.

Approccio 3: rimuovere le righe con il sottoinsieme ()

Metodo del sottoinsieme () nella programmazione R filtra le righe in base alla condizione. Se la condizione è "falsa", tali righe vengono rimosse dal frame di dati e tornano alle righe rimanenti.

Sintassi:

sottoinsieme (dataframe_object, condizione)

Parametri:

Ci vogliono due parametri.

  1. DataFrame_Object è il frame di dati.
  2. La condizione si riferisce a dichiarazioni logiche o espressive.

Esempio

In questo esempio, selezioneremo le righe dove,

  1. market_id maggiore di 2
  2. Market_place è l'India
  3. Market_squarefeet - meno o uguale a 230
#Crea un mercato dati che ha 4 righe e 5 colonne.
mercato = dati.frame (market_id = c (1,2,3,4), market_name = c ('m1', 'm2', 'm3', 'm4'), market_place = c
("India", "USA", "India", "Australia"), Market_Type = C ("Grocery", "Bar", "Grocery", "Restaurant"),
market_squarefeet = C (120.342.220.110))
#Select righe dove market_id maggiore di 2
print ("righe con market_id maggiore di 2:")
stampa (sottoinsieme (mercato, market_id> 2))
#Select righe dove Market_Place è l'India
print ("righe con market_place è l'India:")
stampa (sottoinsieme (mercato, market_place == 'India'))
#Select righe dove market_squarefeet - meno o uguale a 230.
Stampa ("Righe con Market_Squarefeet inferiore o uguale a 230:")
Stampa (sottoinsieme (mercato, market_squarefeet<=230 ))

Risultato:

Conclusione

In questo articolo, abbiamo appreso che potrebbe essere possibile eliminare una riga singola o più specificando le posizioni delle righe. Se si desidera rimuovere le righe condizionali, è possibile utilizzare il metodo del sottoinsieme () e specificare la condizione al suo interno.