Trazar la media y la desviación estándar usando ggplot2 en R

Una barra de error muestra la confianza y la precisión en un conjunto de medidas o valores calculados en función de los errores que se producen en el conjunto de datos. Ayuda a mostrar visualmente los errores en un área del marco de datos y muestra una parte faltante real y exacta. Como comportamiento descriptivo, las barras de error brindan detalles sobre las variaciones en los datos, así como recomendaciones para realizar cambios, de modo que los datos sean más reveladores e impactantes para los usuarios.

Empezando

geom_errorbar(): Esta función se utiliza para producir las barras de error.

Sintaxis:

geom_errorbar(asignación = NULL, datos = NULL, estadística = “identidad”, posición = “identidad”, …)

Ejemplo : Trazar para mostrar la media y la desviación estándar en un diagrama de barras.

R

df<-data.frame(Mean=c(0.24,0.25,0.37,0.643,0.54),
               sd=c(0.00362,0.281,0.3068,0.2432,0.322),
               Quality=as.factor(c("good","bad","good",
                                   "very good","very good")), 
               Category=c("A","B","C","D","E"),
               Insert= c(0.0, 0.1, 0.3, 0.5, 1.0))
  
# Load ggplot2
library(ggplot2)
  
ggplot(df, aes(x=Category, y=Mean, fill=Quality)) +
  geom_bar(position=position_dodge(), stat="identity",
           colour='black') +
  geom_errorbar(aes(ymin=Mean-sd, ymax=Mean+sd), width=.2)

Producción:

Ahora veamos el gráfico de puntos, si queremos agregar puntos al mismo marco de datos, simplemente agregue geom_point().

Sintaxis: 

geom_point(mapping = NULL, data = NULL, stat = “identity”, position = “identity”,…, na.rm = FALSE,show.legend = NA,inherit.aes = TRUE)

Ejemplo 1: Parcela con puntos

R

# creating a data frame df
df<-data.frame(Mean=c(0.24,0.25,0.37,0.643,0.54),
               sd=c(0.00362,0.281,0.3068,0.2432,0.322),
               Quality=as.factor(c("good","bad","good",
                                   "very good","very good")), 
               Category=c("A","B","C","D","E"),
               Insert= c(0.0, 0.1, 0.3, 0.5, 1.0))
  
# plot the point plot
p<-ggplot(df, aes(x=Category, y=Mean, fill=Quality)) + 
  geom_point()+
  geom_errorbar(aes(ymin=Mean-sd, ymax=Mean+sd), width=.2,
                position=position_dodge(0.05))
  
p

Producción: 

Diferentes métodos son usados ​​por diferentes grupos para ilustrar sus diferencias. Alternativamente, se utilizan diagramas de puntos o diagramas de puntos. Para decirle a ggplot que una columna o punto representa una media, necesitamos indicar una estadística media. Exploremos esto en detalle usando un marco de datos diferente. Para hacer esto, podemos usar las funciones «stat» de ggplot.

Visualicemos los resultados usando gráficos de barras de medias. En lugar de usar *stat=count>’, le diremos a la estadística que nos gustaría una medida de resumen, a saber, la media. Luego, el marco de datos se divide en grupos, y se anota y grafica la media y la desviación estándar para cada uno. Esto se puede hacer usando resume y group_by().

Archivo en uso: Crop_recommendation

Ejemplo: Parcela con media y desviación estándar para cada grupo.

R

# load crop_recomendation csv file and 
# store it in ds
ds <- read.csv("Crop_recommendation.csv", header = TRUE)
  
ggplot(ds, aes(x=label, y=temperature)) + geom_boxplot() 
  
# create a new dataframe crop_means
crop_means <- ds %>% 
  group_by(label) %>% 
  summarize(mean_temperature=mean(temperature)) 
crop_means
  
# Creating barplots of means
ggplot(crop_means, aes(x=label, y=mean_temperature)) +
geom_bar(stat="identity") 

Producción:

Ahora, si desea señalar el gráfico de puntos, también puede hacerlo utilizando la función geom_point().

Sintaxis:

geom_point(stat=”resumen”, fun.y=”mean”)

Ejemplo: gráfico de puntos 

R

# load crop_recomendation csv file and 
# store it in ds
ds <- read.csv("Crop_recommendation.csv", header = TRUE)
  
ggplot(ds, aes(x=label, y=temperature)) + geom_boxplot() 
  
# create a new dataframe crop_means
crop_means <- ds %>% 
  group_by(label) %>% 
  summarize(mean_temperature=mean(temperature)) 
crop_means
  
# creating point plots of means
ggplot(ds, aes(x=label, y=temperature)) + 
geom_point(stat="summary", fun.y="mean") 

Producción:

Para trazar la desviación estándar (SD) , debe usar geom_errorbar(). Primero, podemos crear un nuevo conjunto de datos, que es la forma más laboriosa de crear barras de error. Esta vez también calcularemos el error estándar (que es igual a la desviación estándar dividida por la raíz cuadrada de N).

Sintaxis:

geom_errorbar()

Parámetros:

  • ymin o xmin: valor inferior del punto personalizado
  • ymax o xmax: valor superior del punto personalizado
  • altura: altura de la barra de error
  • alfa: Opacidad de la barra de error
  • color: color de la barra de error
  • grupo: Diferenciar puntos por grupo
  • tipo de línea
  • Talla

Ejemplo: trazado de la desviación estándar

R

# load a crop recommendation csv file dataset
ds <- read.csv("Crop_recommendation.csv", header = TRUE)
  
# create a new dataframe crop_means_Se
crop_means_se <- ds %>%  
  group_by(label) %>% 
  summarize(mean_N=mean(N), 
            sd_N=sd(N), 
            N_N=n(), 
            se=sd_N/sqrt(N_N), 
            upper_limit=mean_N+se, 
            lower_limit=mean_N-se 
  ) 
  
crop_means_se
  
ggplot(crop_means_se, aes(x=label, y=mean_N)) + 
geom_bar(stat="identity") + 
geom_errorbar(aes(ymin=lower_limit, ymax=upper_limit))

Producción:

También puede crear su propia función «se» usando geom_errorbar(). Xmin & Xmax e Ymin & Ymax se pueden usar para trazar la barra de error horizontal o verticalmente.

Sintaxis:

geom_errorbar(stat=”resumen”,fun.ymin=función(x){media(x-sd(x)/sqrt(longitud(x))}, fun.ymax=función(x){media(x)+sd (x)/sqrt(longitud(x))}). 

Aquí, calculamos los valores ymin y ymax para trazar la barra de error verticalmente, y estos valores se crean mediante una función separada en la que se calcula el promedio de (x-sd(x)/sqrt(longitud(x)) para un mínimo de y o ymin y el promedio de (x+sd(x)/sqrt(longitud(x)) se calcula para un máximo de y o ymax.

Ejemplo: trazado de la desviación estándar

R

# load a crop recommendation csv file dataset
ds <- read.csv("Crop_recommendation.csv", header = TRUE)
  
ggplot(ds, aes(x=label, y=N)) + geom_bar(stat="summary", fun.y="mean") + 
  geom_errorbar(stat="summary", 
                fun.ymin=function(x) {mean(x)-sd(x)/sqrt(length(x))}, 
                fun.ymax=function(x) {mean(x)+sd(x)/sqrt(length(x))})

Producción:

Publicación traducida automáticamente

Artículo escrito por AnujMehla y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *