library(readr)
library(dplyr)
library(ggplot2)Actividad visualización de datos
Ejercicio
Crear un nuevo dataframe que sea un subconjunto del dataframe original de dfFires. El subconjunto debe contener todos los incendios del Estado de Idaho y las columnas deben ser limitadas para que sólo estén presentes las columnas YEAR_, CAUSE y TOTALACRES. Cambie el nombre de las columnas. Agrupe los datos por CAUSE y YEAR_ y luego resuma por el total de acres quemados. Trazar los resultados..
Solución
Primero, importamos la base de datos y la mostramos.
StudyArea <- read_csv("C:/Users/Usuario/Downloads/RDataSets/RDataSets/StudyArea.csv")
head(StudyArea)# A tibble: 6 × 14
FID ORGANIZATI UNIT SUBUNIT SUBUNIT2 FIRENAME CAUSE YEAR_ STARTDATED
<dbl> <chr> <chr> <chr> <chr> <chr> <chr> <dbl> <chr>
1 0 FWS 81682 USCADBR San Diego Bay … PUMP HO… Human 2001 1/1/01 0:…
2 1 FWS 81682 USCADBR San Diego Bay … I5 Human 2002 5/3/02 0:…
3 2 FWS 81682 USCADBR San Diego Bay … SOUTHBAY Human 2002 6/1/02 0:…
4 3 FWS 81682 USCADBR San Diego Bay … MARINA Human 2001 7/12/01 0…
5 4 FWS 81682 USCADBR San Diego Bay … HILL Human 1994 9/13/94 0…
6 5 FWS 81682 USCADBR San Diego Bay … IRRIGAT… Human 1994 4/22/94 0…
# ℹ 5 more variables: CONTRDATED <chr>, OUTDATED <chr>, STATE <chr>,
# STATE_FIPS <dbl>, TOTALACRES <dbl>
Como el estado de interés es idaho, filtraremos la base de datos original para quedarnos con la información que nos importa, en este caso, nos quedaremos con las columnas YEAR_, CAUSE y TOTALACRES, y luego, las renombraremos.
idahostate <- subset(StudyArea, STATE =="Idaho", select = c(STATE,YEAR_,CAUSE,TOTALACRES))
newidahostate <- rename(idahostate, Estado=STATE, Año=YEAR_, Causa= CAUSE, AcresTotal = TOTALACRES)
head(newidahostate)# A tibble: 6 × 4
Estado Año Causa AcresTotal
<chr> <dbl> <chr> <dbl>
1 Idaho 1987 Human 5
2 Idaho 1991 Natural 150
3 Idaho 1991 Human 800
4 Idaho 1990 Natural 2
5 Idaho 1985 Human 38
6 Idaho 1988 Human 2
Graficas
Por último, agruparemos los datos por causa y año, para poder crear un diagrama de cajas y así obtener la información de manera visual.
cols <- c("#CFD8DC", "#90A4AE", "#455A64")
ggplot(newidahostate, aes(x=Causa, y=Año, fill = Causa)) +
stat_boxplot(geom = "errorbar",
width = 0.25) +
geom_boxplot(alpha = 0.8,
colour = "#474747",
outlier.colour = 1) +
scale_fill_manual(values = cols)Podemos decir que en el gráfico anterior, las causas human y natural presentan cajas muy parecidas, lo que puede significar que su distribución es similar, la causa undertermined presenta datos muy concentrados en los años 2010, con menor variación, en cuanto a NA su distribución es mas dispersa,y en el lado izquierdo de la caja, podemos notar que hay más agrupación de los datos, lo que puede significar asimetria hacia la izquierda. Por otro lado, para conocer el total de acres quemados y su causa, realizamos un diagrama de barras.
cols <- c("#CFD8DC", "#90A4AE", "#455A64")
# Crear el gráfico con colores personalizados
ggplot(data = newidahostate) +
geom_col(mapping = aes(x = Causa, y = Año, fill = Causa)) +
scale_fill_manual(values = cols) +
labs(
title = "Total de Acres Quemados por Causa",
x = "Causa",
y = "Total de Acres Quemados"
)