Come eseguire un cerca.vert (simile a excel) in r
La funzione CERCA.VERT in Excel ti consente di trovare un valore in una tabella confrontandolo su una colonna.
Ad esempio, nel seguente foglio di calcolo Excel, possiamo cercare il nome della squadra di un giocatore utilizzando CERCA.VERT per abbinare il nome del giocatore e restituire la squadra del giocatore:
Possiamo replicare questa funzione utilizzando la base R o il pacchetto dplyr:
Utilizzando Base R:
merge(df1, df2, by=" merge_column ")
Utilizzando dplyr:
inner_join(df1, df2, by=" merge_column ")
Gli esempi seguenti mostrano come utilizzare ciascuna di queste funzioni in R per replicare la funzione CERCA.VERT da Excel.
CERCA.VERT utilizzando Base R
Il codice seguente mostra come eseguire una funzione simile a CERCA.VERT in base R utilizzando la funzione merge() :
#create first data frame df1 <- data.frame(player= LETTERS [1:15], team= rep (c(' Mavs ', ' Lakers ', ' Rockets '), each =5)) #create second data frame df2 <- data.frame(player= LETTERS [1:15], points=c(14, 15, 15, 16, 8, 9, 16, 27, 30, 24, 14, 19, 8, 6, 5)) #merge the two data frames merge(df1, df2, by=" player ") player team points 1 A Mavs 14 2 B Mavs 15 3C Mavs 15 4D Mavs 16 5 E Mavs 8 6 F Lakers 9 7G Lakers 16 8 a.m. Lakers 27 9 I Lakers 30 10 J Lakers 24 11K Rockets 14 12L Rockets 19 13 M Rockets 8 14 N Rockets 6 15 O Rockets 5
Tieni presente che ciò restituisce gli stessi risultati della funzione CERCA.VERT nell’esempio introduttivo. Tieni inoltre presente che puoi specificare più colonne da unire utilizzando l’argomento by .
CERCA.VERT utilizzando dplyr
library (dplyr) #create first data frame df1 <- data.frame(player= LETTERS [1:15], team= rep (c(' Mavs ', ' Lakers ', ' Rockets '), each =5)) #create second data frame df2 <- data.frame(player= LETTERS [1:15], points=c(14, 15, 15, 16, 8, 9, 16, 27, 30, 24, 14, 19, 8, 6, 5)) #merge the two data frames using inner_join inner_join(df1, df2, by=" player ") player team points 1 A Mavs 14 2 B Mavs 15 3C Mavs 15 4D Mavs 16 5 E Mavs 8 6 F Lakers 9 7G Lakers 16 8 a.m. Lakers 27 9 I Lakers 30 10 J Lakers 24 11K Rockets 14 12L Rockets 19 13 M Rockets 8 14 N Rockets 6 15 O Rockets 5
Tieni presente che ciò restituisce gli stessi risultati della funzione CERCA.VERT in Excel. Tieni inoltre presente che puoi specificare più colonne da unire utilizzando l’argomento by .
Inoltre, se desideri che vengano visualizzate le non corrispondenze, puoi utilizzare la funzione left_join .
Risorse addizionali
Come calcolare le somme cumulative in R
Come standardizzare i dati in R
Come aggiungere righe a un frame di dati in R