[R] stdev error

Jeff Reichman re|chm@nj @end|ng |rom @bcg|ob@|@net
Fri Mar 11 15:14:52 CET 2022


r-help forum

 

When I run the following code 

 

my_tbl %>% 

  mutate(Bse_bwt = round(Bse_bwt * 2) / 2) %>% 

  group_by(Cat, Bse_bwt) %>% 

  summarize(count = n(), Bse_ftv = mean(Bse_ftv), stdev = sd(Bse_ftv))

 

I get the following error:

 

Error: `stdev` refers to a variable created earlier in this summarise().

Do you need an extra mutate() step?

 

I suspect it is because the standard deviation of a length-one vector is NA
and R is errorerrors out on the standard deviation  of 1. So then I tried

 

summarize(count = n(), Bse_ftv = mean(Bse_ftv), stdev = if(n()>1)
sd(Bse_ftv) else 0) and this didn't seem to work either. So there has to be
a way to add some sort of error checker to my standard deviation function to
check if n > 1 and then take the standard deviation in dplyr.

 

Jeff

 


	[[alternative HTML version deleted]]



More information about the R-help mailing list