Evolución de la Universidad de Valencia
Vanesa Regueiro (varera@alumni.uv.es)
Trabajo elaborado para la asignatura “Programación y manejo de datos en la era del Big Data” de la Universitat de València durante el curso 2021-2022. El repo del trabajo está aquí.
La página web de la asignatura y los trabajos de mis compañeros pueden verse aquí.
1. Introducción
Este trabajo consiste en un estudio de la Universidad de Valencia. Con este análisis se observarán distintas evoluciones donde se pretende mostrar visualmente como se ha desarrollado la UV a través de los años.
Para hacer todo esto se pondrá en práctica lo estudiado en la asignatura de Programación y manejo de datos en la era del Big Data que se cursa en CUARTO de la carrera de Economía en la UV.
¿FUNCIONARÁ?
2. Datos
Los datos que se van a utilizar durante el trabajo han sido sacados de la propia web de la Universidad de Valencia, en la bibliografia se encuentra el link directo. Asimismo, estos datos han sido bajados y actualizdoa a día 25 de diciembre de 2021.
2.1. Procesando los datos
El trabajo se basa en los siguientes dataframes.
datos1 <- here::here("datos", "PlazasOfertadas.csv")
aa <- rio::import(datos1) #USADO
datos2 <- here::here("datos", "ResidenciaFamiliarNuevosMatriculados.csv")
bb <- rio::import(datos2) #USADO
datos3 <- here::here("datos", "NúmeroMatriculados.csv")
cc <- rio::import(datos3) #USADO
datos4 <- here::here("datos", "NúmeroMatriculadosPorRama.csv")
dd <- rio::import(datos4) #USADO
datos5 <- here::here("datos", "ModalidadIngreso.csv")
ee <- rio::import(datos5) #USADO
datos6 <- here::here("datos", "RangoEdadMatriculados.csv")
ff <- rio::import(datos6) #USADO
datos7 <- here::here("datos", "MatriculadosOtrosEstudios.csv")
gg <- rio::import(datos7) #NO USADO PERO YA QUE LO PROCESE Y CAMBIE PARA PODER USARLO PUES LO DEJO PARA QUE SE VEA EL TRABAJO QUE HAY DETRÁS
datos8 <- here::here("datos", "EstudiantesYTrabajo.csv")
hh <- rio::import(datos8)
datos9 <- here::here("datos", "EstudiosMadre.csv")
ii <- rio::import(datos9) #USADO
datos10 <- here::here("datos", "EstudiosPadre.csv")
jj <- rio::import(datos10) #USADO
datos11 <- here::here("datos", "TrabajoPadre.csv")
kk <- rio::import(datos11) #USADO
datos12 <- here::here("datos", "TrabajoMadre.csv")
ll <- rio::import(datos12) #USADO
datos13 <- here::here("datos", "NacionalidadEstudiante.csv")
mm <- rio::import(datos13) #USADO
datos14 <- here::here("datos", "ResidenciaFamiliar.csv") #NO USADO PERO YA QUE LO PROCESE Y CAMBIE PARA PODER USARLO PUES LO DEJO PARA QUE SE VEA EL TRABAJO QUE HAY DETRÁS
nn <- rio::import(datos14)
datos15 <- here::here("datos", "ComarcasResidenciaFamiliar.csv")
oo <- rio::import(datos15) #NO USADO PERO YA QUE LO PROCESE Y CAMBIE PARA PODER USARLO PUES LO DEJO PARA QUE SE VEA EL TRABAJO QUE HAY DETRÁS
datos16 <- here::here("datos", "1.2.14. Estudiants i estudiantes de grau per campus, centre i estudi per comarca i municipi familiar.csv")
pp <- rio::import(datos16)#NO USADO PERO YA QUE LO PROCESE Y CAMBIE PARA PODER USARLO PUES LO DEJO PARA QUE SE VEA EL TRABAJO QUE HAY DETRÁS
datos17 <- here::here("datos", "TituladosPorRamaYCentro.csv")
qq <- rio::import(datos17) #NO USADO PERO YA QUE LO PROCESE Y CAMBIE PARA PODER USARLO PUES LO DEJO PARA QUE SE VEA EL TRABAJO QUE HAY DETRÁS
datos18 <- here::here("datos", "TituladosAñosEnGraduarse.csv")
rr <- rio::import(datos18) #USADO
datos19 <- here::here("datos", "PDI por rango de edad.csv")
ss <- rio::import(datos19) #USADO
datos20 <- here::here("datos", "PAS por rango de edad.csv")
tt <- rio::import(datos20) #USADO
datos21 <- here::here("datos", "Personal en Investigación por rango de edat y tipo.csv")
uu <- rio::import(datos21) #NO USADOPorfa, valorar lo que me ha costado limpiar los datos
3. Trabajos en los que te has basado
El trabajo es elaboración propia. Lo más costoso ha sido limpiar los datos ya que al ser tantos dataframes. Tener que modificarlos ha sido muy duro pero ahora viene a lo que realmente veniamos… ¿La UV que tipo de alumnado tiene? ¿Ha aumentado el número de matriculados con los años? ¿Cuanto menor educación tienen los padres más tienden los hijos a educarse? Se intentará defender esas preguntas asi como otras. Cabe resaltar que este trabajo es únicamente para la asignatura y que no va a ser utilizado para nada más.
“Nadie dijo que sería fácil”
4. Plazas ofertadas este año de nuevo ingreso por Campus.
Como se muestra en el gráfico, el Campus dels Tarongers es el que más oferta de plazas tiene. A pesar de que el de Blasco sea el Campus más antiguo de la UV.
aadf <- aa %>%
filter(Centro == "Total") %>%
select(Campus, "a2020_2021")
aaplot <- ggplot(aadf, aes(Campus, a2020_2021, fill=Campus)) +
geom_bar(stat = "identity", fill = paletteer_c("grDevices::SunsetDark", 3)) +
theme_minimal() +
theme(legend.position = "none") +
ggtitle("Matriculados año 2020-2021") +
ylab("2020-2021") +
coord_flip()
ggplotly(aaplot)5. Número Matriculados.
Para hacer una comparación más profunda, se observará el número de matriculados finalmente en cada campus.
ccdf <- cc %>%
filter(Centre == "Total") %>%
select(Campus, "Total")
ccplot <- ggplot(ccdf, aes(Campus, Total, fill=Campus)) +
geom_bar(stat = "identity", fill = paletteer_c("grDevices::SunsetDark", 3)) +
theme_minimal() +
theme(legend.position = "none") +
ggtitle("Matriculados año 2020-2021") +
ylab("2020-2021") +
coord_flip()
ggplotly(ccplot)Tras esto, se demuestra que existe cierta relación aunque no se muestre el número de años que el alumnado tarda en graduarse, etc… Con el dataframe se puede trabajar para ver como ha evolucionado la carrera en la que nos encontramos o muchas otras. También se distingue entre hombres y mujeres pero por falta de tiempo, no podré realizarlo.
6. Residencia familiar.
6. 1 Top 10 Residencia Familiar Nuevos Matriculados .
2017-2018
bbdf <- bb %>%
select(provincia, `2017-2018(Total)`) %>%
slice_max(`2017-2018(Total)`, n = 10)
bbplot <- ggplot(bbdf, aes(provincia, `2017-2018(Total)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 10), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2017-2018 Procedencia Nuevos Matriculados") + coord_flip()
ggplotly(bbplot)2018-2019
bbdf1 <- bb %>%
select(provincia, `2018-2019(Total)`) %>%
slice_max(`2018-2019(Total)`, n = 10)
bbplot1 <- ggplot(bbdf1, aes(provincia, `2018-2019(Total)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 11), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2018-2019 Procedencia Nuevos Matriculados") + coord_flip()
ggplotly(bbplot1)2019-2020
bbdf2 <- bb %>%
select(provincia, `2019-2020(Total)`) %>%
slice_max(`2019-2020(Total)`, n = 10)
bbplot2 <- ggplot(bbdf2, aes(provincia, `2019-2020(Total)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 11), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2019-2020 Procedencia Nuevos Matriculados") + coord_flip()
ggplotly(bbplot2)2020-2021
bbdf3 <- bb %>%
select(provincia, `2020-2021(Total)`) %>%
slice_max(`2020-2021(Total)`, n = 10)
bbplot3 <- ggplot(bbdf3, aes(provincia, `2020-2021(Total)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 10), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2020-2021 Procedencia Nuevos Matriculados") + coord_flip()
ggplotly(bbplot3)6. 2. Top 10 Residencia Familiar Matriculados en 2020 distinguiendo entre hombres y mujeres .
TOTAL
nndf <- nn %>%
select(provincia, `2020-2021(Total)`, `2020-2021(Mujer)`, `2020-2021(Hombre)`) %>%
slice_max(`2020-2021(Total)`, n = 10)
nnplot <- ggplot(nndf, aes(provincia, `2020-2021(Total)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 10), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2020-2021 Procedencia Matriculados") + coord_flip()
ggplotly(nnplot)MUJER
nndf1 <- nn %>%
select(provincia, `2020-2021(Total)`, `2020-2021(Mujer)`, `2020-2021(Hombre)`) %>%
slice_max(`2020-2021(Mujer)`, n = 10)
nnplot1 <- ggplot(nndf1, aes(provincia, `2020-2021(Mujer)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 10), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2020-2021 Procedencia Mujeres Matriculadas") + coord_flip()
ggplotly(nnplot1)HOMBRE
nndf2 <- nn %>%
select(provincia, `2020-2021(Total)`, `2020-2021(Mujer)`, `2020-2021(Hombre)`) %>%
slice_max(`2020-2021(Hombre)`, n = 10)
nnplot2 <- ggplot(nndf2, aes(provincia, `2020-2021(Hombre)`, color = provincia)) +
geom_point(color = paletteer_c("viridis::magma", 10), alpha = 0.8) +
theme_fivethirtyeight() +
theme(legend.position = "none") +
ggtitle("2020-2021 Procedencia Hombres Matriculados") + coord_flip()
ggplotly(nnplot2)8. Número Matriculados Por Rama .
TOTAL
hpolar <- function(x, a, c, z) (
highchart() %>%
hc_chart(polar = TRUE) %>%
hc_title(text = x) %>%
hc_xAxis(categories = a,
tickmarkPlacement = "on",
lineWidth = 0) %>%
hc_yAxis(gridLineInterpolation = "polygon",
lineWidth = 0,
min = 0) %>%
hc_series(list(name = z,
data = c,
pointPlacement = "on",
type = "column",
color = '#a80828')) ) dddf <- dd %>%
filter(Centre == "Total") %>%
select(Rama, Mujer, Hombre, Total)
hpolar('Número de matriculados', dddf$Rama, dddf$Total, 'Por Rama')MUJER
hpolar('Número de matriculados', dddf$Rama, dddf$Mujer, 'Por Rama')HOMBRE
hpolar('Número de matriculados', dddf$Rama, dddf$Hombre, 'Por Rama')9. Evolución Modalidad de Ingreso diferenciando entre hombres y mujeres
eelong <- ee %>% pivot_longer(cols = 2:13, names_to = "periodo")
eedf <- eelong %>%
drop_na() %>%
group_by(Ingreso, periodo) %>%
summarise(matriculados = sum(value)) %>%
group_by(periodo) %>%
slice_max(matriculados, n = 28)
eeplot <- ggplot(eedf, aes(matriculados, Ingreso, colour = Ingreso)) +
geom_point(alpha = 1/2) +
scale_size(range = c(4, 14)) +
scale_x_log10() +
theme_minimal() +
theme(axis.text.x=element_blank(), axis.ticks.x =element_blank(), axis.text.y=element_blank(), axis.ticks.y =element_blank(), legend.position = "none")+
labs(title = "Evolución Modalidad de Ingreso") +
facet_wrap(~periodo)
ggplotly(eeplot)10. Rango de Edades .
Aquí el problema es que los datos proceden de dataframes distintos.
ALUMNADO
fflong <- ff %>%
pivot_longer(cols = 2:13, names_to = "periodo")
fflong <- fflong %>%
filter(periodo %in% c("2017", "2018", "2019", "2020")) %>% group_by(Edad, periodo) %>% mutate(alumnos = sum(value))
ffplot <- ggplot(fflong, aes(x = periodo, y = alumnos, group = Edad,color = Edad)) +
geom_point(alpha = 0.8,color = paletteer_c("ggthemes::Sunset-Sunrise Diverging", 72)) +
geom_line(alpha = 0.2) +
labs(title = "Rango De Edad Alumnado") + theme_minimal()
ggplotly(ffplot)PDI
sslong <- ss %>%
pivot_longer(cols = 2:13, names_to = "periodo")
sslong <- sslong %>%
filter(periodo %in% c("2017", "2018", "2019", "2020")) %>% group_by(edad, periodo) %>% mutate(PDI = sum(value))
ssplot <- ggplot(sslong, aes(x = periodo, y = PDI, group = edad,color = edad)) +
geom_point(alpha = 0.8,color = paletteer_c("ggthemes::Sunset-Sunrise Diverging", 40)) +
geom_line(alpha = 0.2) +
labs(title = "Rango De Edad PDI") + theme_minimal()
ggplotly(ssplot)PAS
ttlong <- tt %>%
pivot_longer(cols = 2:13, names_to = "periodo")
ttlong <- ttlong %>%
filter(periodo %in% c("2017", "2018", "2019", "2020")) %>% group_by(edad, periodo) %>% mutate(PAS = sum(value))
ttplot <- ggplot(ttlong, aes(x = periodo, y = PAS, group = edad,color = edad)) +
geom_point(alpha = 0.8,color = paletteer_c("ggthemes::Sunset-Sunrise Diverging", 40)) +
geom_line(alpha = 0.2) +
labs(title = "Rango De Edad PAS") + theme_minimal()
ggplotly(ttplot)11. ¿Cuánto tardan los titulados en graduarse? .
TOTAL
rrlong <- rr %>%
pivot_longer(cols = 2:13, names_to = "year")
rrlong <- rrlong %>%
filter(year %in% c("2017", "2018", "2019", "2020")) %>% group_by(tiempo, year) %>% mutate(Graduados = sum(value))
rrlong$Graduados <- as.numeric(as.character(rrlong$Graduados))
rrlong$year <- as.numeric(as.character(rrlong$year))
rrplot <- ggplot(rrlong, aes(x = year, y = Graduados, group = tiempo,color = tiempo)) +
geom_point(color = paletteer_c("grDevices::rainbow", 44)) +
geom_line() +
theme_minimal() +
transition_reveal(year)
animate(rrplot, 90, 5)MUJERES
rrlong1 <- rr %>%
pivot_longer(cols = 2:13, names_to = "year")
rrlong1 <- rrlong1 %>%
filter(year %in% c("2017Mujer", "2018Mujer", "2019Mujer", "2020Mujer")) %>% group_by(tiempo, year) %>% mutate(Graduados = sum(value))
rrlong1 <- rrlong1 %>% mutate(year = str_replace(year, "Mujer", "" ))
rrlong1$Graduados <- as.numeric(as.character(rrlong1$Graduados))
rrlong1$year <- as.numeric(as.character(rrlong1$year))
rrplot1 <- ggplot(rrlong1, aes(x = year, y = Graduados, group = tiempo,color = tiempo)) +
geom_point(color = paletteer_c("grDevices::rainbow", 44)) +
geom_line() +
theme_minimal() +
transition_reveal(year)
animate(rrplot1, 90, 5)HOMBRES
rrlong2 <- rr %>%
pivot_longer(cols = 2:13, names_to = "year")
rrlong2 <- rrlong2 %>%
filter(year %in% c("2017Hombre", "2018Hombre", "2019Hombre", "2020Hombre")) %>% group_by(tiempo, year) %>% mutate(Graduados = sum(value))
rrlong2 <- rrlong2 %>% mutate(year = str_replace(year, "Hombre", "" ))
rrlong2$Graduados <- as.numeric(as.character(rrlong2$Graduados))
rrlong2$year <- as.numeric(as.character(rrlong2$year))
rrplot2 <- ggplot(rrlong2, aes(x = year, y = Graduados, group = tiempo,color = tiempo)) +
geom_point(color = paletteer_c("grDevices::rainbow", 44)) +
geom_line() +
theme_minimal() +
transition_reveal(year)
animate(rrplot2, 90, 5)12. Nacionalidad del estudiantado de la UV
mm <- mm %>%
select(`Nacionalidad`,`2017`,`2018`,`2019`,`2020`)
mmlong <- mm %>% pivot_longer(cols = 2:5, names_to = "periodo")
mmdf <- mmlong %>%
drop_na() %>%
group_by(Nacionalidad, periodo) %>%
summarise(matriculados = sum(value))
mmplot <- ggplot(mmdf, aes(matriculados, Nacionalidad, group=Nacionalidad, colour = Nacionalidad)) +
geom_point(alpha = 1/2) +
scale_size(range = c(4, 14)) +
scale_x_log10() +
theme_minimal() +
theme(axis.text.x=element_blank(), axis.ticks.x =element_blank(), axis.text.y=element_blank(), axis.ticks.y =element_blank(), legend.position = "none")+
labs(title = "Evolución Nacionalidad") +
facet_wrap(~periodo)
ggplotly(mmplot)10 países con más matriculados en la UV
mm <- mm %>%
select(`Nacionalidad`,`2017`,`2018`,`2019`,`2020`) %>% slice_max(`2020`, n=10)
mmlong <- mm %>% pivot_longer(cols = 2:5, names_to = "periodo")
mmdf <- mmlong %>%
drop_na() %>%
group_by(Nacionalidad, periodo) %>%
summarise(matriculados = sum(value))
mmplot <- ggplot(mmdf, aes(matriculados, Nacionalidad, group=Nacionalidad, colour = Nacionalidad)) +
geom_point(alpha = 1/2) +
scale_size(range = c(4, 14)) +
scale_x_log10() +
theme_minimal() +
theme(axis.text.x=element_blank(), axis.ticks.x =element_blank(), axis.text.y=element_blank(), axis.ticks.y =element_blank(), legend.position = "none")+
labs(title = "Evolución Nacionalidad") +
facet_wrap(~Nacionalidad)
ggplotly(mmplot)13. ESTUDIOS FAMILIARES .
PADRE
jjdf <- jj %>%
select(`estudios`,`2020`)
jjdf <- jjdf %>%
head(jjdf, n = 10) %>%
arrange(desc(`2020`))
jjdf$`2020` <- as.numeric(as.character(jjdf$`2020`))
jjplot <- ggplot(jjdf, aes(`estudios`,`2020`)) +
geom_point(color = paletteer_c("grDevices::Emrld", 10)) +
geom_segment(aes(x=forcats::fct_reorder(`estudios`,`2020`, .desc = TRUE),
xend=forcats::fct_reorder(`estudios`,`2020`, .desc = TRUE),
y=0,
yend=`2020`, color = estudios )) +
geom_smooth(method = "lm", position = "identity") +
theme(axis.title.x=element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank()) +
labs(title = "Padre 2020",
x = "Estudios") +
theme(legend.position="none") + coord_flip()
ggplotly(jjplot) MADRE
iidf <- ii %>%
select(`estudios`,`2020`)
iidf <- iidf %>%
head(iidf, n = 10) %>%
arrange(desc(`2020`))
iidf$`2020` <- as.numeric(as.character(iidf$`2020`))
iiplot <- ggplot(iidf, aes(`estudios`,`2020`)) +
geom_point(color = paletteer_c("grDevices::Emrld", 10)) +
geom_segment(aes(x=forcats::fct_reorder(`estudios`,`2020`, .desc = TRUE),
xend=forcats::fct_reorder(`estudios`,`2020`, .desc = TRUE),
y=0,
yend=`2020`, color = estudios )) +
geom_smooth(method = "lm", position = "identity") +
theme(axis.title.x=element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank()) +
labs(title = "Madre 2020",
x = "Estudios") +
theme(legend.position="none") + coord_flip()
ggplotly(iiplot) 14. TRABAJO FAMILIARES .
PADRE
kkdf <- kk %>%
drop_na() %>%
select(trabajo, '2020')
kkplot <- wordcloud2(data = kkdf, size = 0.1,color = paletteer_c("grDevices::rainbow", 20))
kkplotMADRE
lldf <- ll %>%
select(trabajo, '2020')
llplot <- wordcloud2(data = lldf, size = 0.1,color = paletteer_c("grDevices::rainbow", 20))
llplot16. Sesión Informativa
Información de mi R-sesión:
- Session info ---------------------------------------------------------------
setting value
version R version 4.1.1 (2021-08-10)
os Windows 10 x64
system x86_64, mingw32
ui RTerm
language (EN)
collate Spanish_Spain.1252
ctype Spanish_Spain.1252
tz Europe/Paris
date 2022-01-03
- Packages -------------------------------------------------------------------
package * version date lib source
assertthat 0.2.1 2019-03-21 [1] CRAN (R 4.1.1)
backports 1.2.1 2020-12-09 [1] CRAN (R 4.1.1)
bookdown 0.24 2021-09-02 [1] CRAN (R 4.1.1)
broom 0.7.9 2021-07-27 [1] CRAN (R 4.1.1)
bslib 0.3.0 2021-09-02 [1] CRAN (R 4.1.1)
cellranger 1.1.0 2016-07-27 [1] CRAN (R 4.1.1)
cli 3.0.1 2021-07-17 [1] CRAN (R 4.1.1)
clipr 0.7.1 2020-10-08 [1] CRAN (R 4.1.1)
colorspace 2.0-2 2021-06-24 [1] CRAN (R 4.1.1)
corrplot * 0.90 2021-06-30 [1] CRAN (R 4.1.1)
countrycode * 1.3.0 2021-07-15 [1] CRAN (R 4.1.1)
cowplot * 1.1.1 2020-12-30 [1] CRAN (R 4.1.1)
crayon 1.4.2 2021-10-29 [1] CRAN (R 4.1.2)
crosstalk 1.1.1 2021-01-12 [1] CRAN (R 4.1.1)
curl 4.3.2 2021-06-23 [1] CRAN (R 4.1.1)
data.table * 1.14.0 2021-02-21 [1] CRAN (R 4.1.1)
DBI 1.1.2 2021-12-20 [1] CRAN (R 4.1.2)
dbplyr 2.1.1 2021-04-06 [1] CRAN (R 4.1.1)
desc 1.4.0 2021-09-28 [1] CRAN (R 4.1.1)
details 0.2.1 2020-01-12 [1] CRAN (R 4.1.2)
digest 0.6.28 2021-09-23 [1] CRAN (R 4.1.1)
dplyr * 1.0.7 2021-06-18 [1] CRAN (R 4.1.1)
ellipsis 0.3.2 2021-04-29 [1] CRAN (R 4.1.1)
evaluate 0.14 2019-05-28 [1] CRAN (R 4.1.1)
fansi 0.5.0 2021-05-25 [1] CRAN (R 4.1.1)
farver 2.1.0 2021-02-28 [1] CRAN (R 4.1.1)
fastmap 1.1.0 2021-01-25 [1] CRAN (R 4.1.1)
forcats * 0.5.1 2021-01-27 [1] CRAN (R 4.1.1)
foreign 0.8-81 2020-12-22 [2] CRAN (R 4.1.1)
fs 1.5.0 2020-07-31 [1] CRAN (R 4.1.1)
gapminder * 0.3.0 2017-10-31 [1] CRAN (R 4.1.1)
generics 0.1.1 2021-10-25 [1] CRAN (R 4.1.2)
GGally * 2.1.2 2021-06-21 [1] CRAN (R 4.1.1)
gganimate * 1.0.7 2020-10-15 [1] CRAN (R 4.1.1)
ggplot2 * 3.3.5 2021-06-25 [1] CRAN (R 4.1.1)
ggthemes * 4.2.4 2021-01-20 [1] CRAN (R 4.1.1)
gifski 1.4.3-1 2021-05-02 [1] CRAN (R 4.1.1)
glue 1.4.2 2020-08-27 [1] CRAN (R 4.1.1)
gtable 0.3.0 2019-03-25 [1] CRAN (R 4.1.1)
haven 2.4.3 2021-08-04 [1] CRAN (R 4.1.1)
here 1.0.1 2020-12-13 [1] CRAN (R 4.1.1)
highcharter * 0.8.2 2020-07-26 [1] CRAN (R 4.1.2)
highr 0.9 2021-04-16 [1] CRAN (R 4.1.1)
hms 1.1.1 2021-09-26 [1] CRAN (R 4.1.2)
htmltools 0.5.2 2021-08-25 [1] CRAN (R 4.1.1)
htmlwidgets 1.5.4 2021-09-08 [1] CRAN (R 4.1.1)
httr 1.4.2 2020-07-20 [1] CRAN (R 4.1.1)
igraph 1.2.6 2020-10-06 [1] CRAN (R 4.1.1)
jquerylib 0.1.4 2021-04-26 [1] CRAN (R 4.1.1)
jsonlite 1.7.2 2020-12-09 [1] CRAN (R 4.1.1)
klippy * 0.0.0.9500 2021-12-07 [1] Github (rlesur/klippy@378c247)
knitr * 1.36 2021-09-29 [1] CRAN (R 4.1.1)
labeling 0.4.2 2020-10-20 [1] CRAN (R 4.1.1)
lattice 0.20-44 2021-05-02 [2] CRAN (R 4.1.1)
lazyeval 0.2.2 2019-03-15 [1] CRAN (R 4.1.1)
lifecycle 1.0.1 2021-09-24 [1] CRAN (R 4.1.1)
lubridate * 1.7.10 2021-02-26 [1] CRAN (R 4.1.1)
magrittr 2.0.1 2020-11-17 [1] CRAN (R 4.1.1)
modelr 0.1.8 2020-05-19 [1] CRAN (R 4.1.1)
munsell 0.5.0 2018-06-12 [1] CRAN (R 4.1.1)
openxlsx 4.2.4 2021-06-16 [1] CRAN (R 4.1.1)
paletteer * 1.4.0 2021-07-20 [1] CRAN (R 4.1.2)
pillar 1.6.4 2021-10-18 [1] CRAN (R 4.1.1)
pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.1.1)
plotly * 4.9.4.1 2021-06-18 [1] CRAN (R 4.1.1)
plyr 1.8.6 2020-03-03 [1] CRAN (R 4.1.1)
png 0.1-7 2013-12-03 [1] CRAN (R 4.1.1)
prettyunits 1.1.1 2020-01-24 [1] CRAN (R 4.1.1)
prismatic 1.1.0 2021-10-17 [1] CRAN (R 4.1.1)
progress 1.2.2 2019-05-16 [1] CRAN (R 4.1.1)
purrr * 0.3.4 2020-04-17 [1] CRAN (R 4.1.1)
quantmod 0.4.18 2020-12-09 [1] CRAN (R 4.1.1)
R6 2.5.1 2021-08-19 [1] CRAN (R 4.1.1)
RColorBrewer 1.1-2 2014-12-07 [1] CRAN (R 4.1.1)
Rcpp 1.0.7 2021-07-07 [1] CRAN (R 4.1.1)
readr * 2.0.1 2021-08-10 [1] CRAN (R 4.1.1)
readxl 1.3.1 2019-03-13 [1] CRAN (R 4.1.1)
rematch2 2.1.2 2020-05-01 [1] CRAN (R 4.1.1)
reprex 2.0.1 2021-08-05 [1] CRAN (R 4.1.1)
reshape 0.8.8 2018-10-23 [1] CRAN (R 4.1.1)
rio * 0.5.27 2021-06-21 [1] CRAN (R 4.1.1)
rlang 0.4.11 2021-04-30 [1] CRAN (R 4.1.1)
rlist 0.4.6.2 2021-09-03 [1] CRAN (R 4.1.2)
rmarkdown 2.11 2021-09-14 [1] CRAN (R 4.1.1)
rmdformats 1.0.3 2021-10-06 [1] CRAN (R 4.1.2)
rprojroot 2.0.2 2020-11-15 [1] CRAN (R 4.1.1)
rstudioapi 0.13 2020-11-12 [1] CRAN (R 4.1.1)
rvest 1.0.1 2021-07-26 [1] CRAN (R 4.1.1)
sass 0.4.0 2021-05-12 [1] CRAN (R 4.1.1)
scales * 1.1.1 2020-05-11 [1] CRAN (R 4.1.1)
sessioninfo 1.1.1 2018-11-05 [1] CRAN (R 4.1.1)
stringi 1.7.4 2021-08-25 [1] CRAN (R 4.1.1)
stringr * 1.4.0 2019-02-10 [1] CRAN (R 4.1.1)
tibble * 3.1.4 2021-08-25 [1] CRAN (R 4.1.1)
tidyr * 1.1.3 2021-03-03 [1] CRAN (R 4.1.1)
tidyselect 1.1.1 2021-04-30 [1] CRAN (R 4.1.1)
tidyverse * 1.3.1 2021-04-15 [1] CRAN (R 4.1.1)
TTR 0.24.2 2020-09-01 [1] CRAN (R 4.1.1)
tweenr 1.0.2 2021-03-23 [1] CRAN (R 4.1.1)
tzdb 0.1.2 2021-07-20 [1] CRAN (R 4.1.1)
utf8 1.2.2 2021-07-24 [1] CRAN (R 4.1.1)
vctrs 0.3.8 2021-04-29 [1] CRAN (R 4.1.1)
viridisLite 0.4.0 2021-04-13 [1] CRAN (R 4.1.2)
withr 2.4.3 2021-11-30 [1] CRAN (R 4.1.2)
wordcloud2 * 0.2.1 2018-01-03 [1] CRAN (R 4.1.2)
xfun 0.26 2021-09-14 [1] CRAN (R 4.1.1)
xml2 1.3.2 2020-04-23 [1] CRAN (R 4.1.1)
xts 0.12.1 2020-09-09 [1] CRAN (R 4.1.1)
yaml 2.2.1 2020-02-01 [1] CRAN (R 4.1.1)
zip 2.2.0 2021-05-31 [1] CRAN (R 4.1.1)
zoo 1.8-9 2021-03-09 [1] CRAN (R 4.1.1)
[1] C:/Users/Vanesa/Documents/R/win-library/4.1
[2] C:/Program Files/R/R-4.1.1/library