Skip to content
Prev 371288 / 398530 Next

Avoid duplication in dplyr::summarise

Hi Lars

I am not very sure what you really want. However, I am suggesting the
following code that enables (1) to obtain the full summary of your data and
(2) retrieve only mean of X values as function of factors f1 and f2.

library(tidyverse)
library(psych)
df <- data.frame(matrix(rnorm(40), 10, 4),
                 f1 = gl(3, 10, labels = letters[1:3]),
                 f2 = gl(3, 10, labels = letters[4:6]))

##To get all summary of your data
df%>% gather(X_name,X_value,X1:X4)%>%
  group_by(f1,f2,X_name)%>%
  do(describe(.$X_value))

##To obtain only means of your data
df%>% gather(X_name,X_value,X1:X4)%>%
  group_by(f1,f2,X_name)%>%
  do(describe(.$X_value))%>%
  select(mean)%>%# You select only mean value
  spread(X_name,mean)#

Vincent

Med venlig hilsen/ Best regards

Edjabou Maklawe Essonanawe Vincent
Mobile: +45 31 95 99 33
On Sat, Sep 9, 2017 at 12:30 PM, Lars Bishop <lars52r at gmail.com> wrote: