Come posso ottenere con dplyr il valore minimo (o medio) di ogni riga su un data.frame? voglio dire lo stesso risultato diR dplyr meanwise mean or min e altri metodi?
apply(mydataframe, 1, mean)
apply(mydataframe, 1, min)
Ho provato
mydataframe %>% rowwise() %>% mean
o
mydataframe %>% rowwise() %>% summarise(mean)
o altre combinazioni, ma ottengo sempre gli errori, non so il modo corretto .
So che potrei usare anche rowMeans, ma non esiste un semplice equivalente "rowMin". Esiste anche un pacchetto matrixStats ma la maggior parte delle funzioni non accetta data.frames, solo matrici.
Se voglio calcolare il minimo rowwise ho potuto usare
do.call (Pmin, mydataframe) C'è qualcosa di semplice come questo per il rowwise significa?
do.call(mean, mydataframe)
non funziona, suppongo di aver bisogno di una funzione di pmean o qualcosa di più complesso.
Grazie
Al fine di confrontare i risultati che potremmo lavorare tutti sullo stesso esempio:
set.seed(124)
df <- data.frame(A=rnorm(10), B=rnorm(10), C=rnorm(10))
Usa 'mutate' invece di' sumarise', tra l'altro 'do.call (pmin, mydataframe)' * è * a row wise 'mean'- prova,' do.call (pmin, mtcars [c ("gear" , "carb")])) ad esempio, quindi non sei sicuro di quale sia il tuo problema –
Potresti scrivere la frase completa, per favore? E come includi le opzioni per "media", ad esempio na.rm = TRUE – skan
Ad esempio, (per il datra 'mtcars'):' mtcars%>% rowwise()%>% do (data.frame (., res = mean (unlist (.), na.rm = TRUE))) ' –