Articles of dplyr

Crea una colonna con valori raggruppati in base a un’altra colonna

Sono sicuro che questo è stato chiesto prima, ma non so cosa cercare, quindi mi scuso in anticipo. Diciamo che ho il seguente frame di dati: grades <- data.frame(a = 1:40, b = sample(45:100, 40)) Usando deplyr, voglio creare una nuova variabile che indichi il voto ricevuto dallo studente, sulla base dei seguenti criteri: 90-100 […]

Filtra il frame dei dati per nome della colonna di caratteri (in dplyr)

Ho un frame di dati e voglio filtrarlo in due modi, con la colonna “this” o la colonna “that”. Vorrei poter fare riferimento al nome della colonna come variabile. Come (in dplyr , se questo fa la differenza) faccio riferimento a un nome di colonna da una variabile? library(dplyr) df % filter(this == 1) # […]

dplyr :: group_by_ con input di stringa di caratteri di diversi nomi di variabili

Sto scrivendo una funzione in cui all’utente viene chiesto di definire una o più variabili di raggruppamento nella chiamata di funzione. I dati sono quindi raggruppati usando dplyr e funziona come previsto se c’è una sola variabile di raggruppamento, ma non ho capito come farlo con più variabili di raggruppamento. Esempio: x <- c("cyl") y […]

filtro per casi completi in data.frame usando dplyr (cancellazione caso-saggio)

È ansible filtrare un data.frame per casi completi usando dplyr? complete.cases con un elenco di tutte le variabili funziona, ovviamente. Ma questo è a) prolisso quando ci sono molte variabili e b) imansible quando i nomi delle variabili non sono noti (ad esempio in una funzione che elabora qualsiasi data.frame). library(dplyr) df = data.frame( x1 […]

Passa argomenti alle funzioni dplyr

Voglio parametrizzare il seguente calcolo usando dplyr che trova quali valori di Sepal.Length sono associati a più di un valore di Sepal.Width : library(dplyr) iris %>% group_by(Sepal.Length) %>% summarise(n.uniq=n_distinct(Sepal.Width)) %>% filter(n.uniq > 1) Normalmente vorrei scrivere qualcosa del genere: not.uniq.per.group % group_by(group.var) %>% summarise(n.uniq=n_distinct(uniq.var)) %>% filter(n.uniq > 1) } Tuttavia, questo approccio genera errori poiché […]

Filtra più valori su una colonna di stringhe in dplyr

Ho un data.frame con dati di carattere in una delle colonne. Vorrei filtrare più opzioni nel data.frame dalla stessa colonna. C’è un modo semplice per fare questo che mi manca? Esempio: data.frame name = dat days name 88 Lynn 11 Tom 2 Chris 5 Lisa 22 Kyla 1 Tom 222 Lynn 2 Lynn Mi piacerebbe […]

Seleziona la prima e l’ultima riga da dati raggruppati

Domanda Usando dplyr , come faccio a selezionare le osservazioni / righe in alto e in basso dei dati raggruppati in una dichiarazione? Dati ed esempi Dato un frame di dati df <- data.frame(id=c(1,1,1,2,2,2,3,3,3), stopId=c("a","b","c","a","b","c","a","b","c"), stopSequence=c(1,2,3,3,1,4,3,1,2)) Posso ottenere le osservazioni dall’alto e dal basso di ogni gruppo usando slice , ma usando due distinti statments: […]

Stringhe concatenate per gruppo con dplyr

ho un dataframe che assomiglia a questo > data data foo bar 1 1 a 2 1 b 3 2 a 4 3 b 5 3 c 6 3 d Vorrei creare una nuova colonna bars_by_foo che è la concatenazione dei valori di bar di foo. Quindi i nuovi dati dovrebbero assomigliare a questo: foo […]

Individuazione delle sovrapposizioni tra gli intervalli / Connessioni di sovrapposizione efficienti

Panoramica: Devo unirmi a due tabelle: ref contiene gli intervalli di tempo (da t1 a t2 ) insieme a un id per ogni intervallo e uno space cui si verifica questo intervallo. map contiene intervalli di tempo (da t1 a t2 ) ciascuno con un risultato res e il suo space corrispondente. Desidero ottenere / […]

mutate_each / summarise_each in dplyr: come selezionare determinate colonne e dare nuovi nomi alle colonne mutate?

Sono un po ‘confuso riguardo al dplyr verb mutate_each. È piuttosto semplice utilizzare il mutate base per trasformare una colonna di dati in, ad esempio, z-score e creare una nuova colonna nel data.frame (qui con il nome z_score_data ): newDF % select(one_column) %>% mutate(z_score_data = one_column – (mean(one_column) / sd(one_column)) Tuttavia, poiché ho molte colonne […]