A CAPES é um órgão do MEC que tem a atribuição de acompanhar a pós-graduação na universidade brasileira. Uma das formas que ela encontrou de fazer isso e pela qual ela é bastante criticada é através de uma avaliação quantitativa a cada x anos (era 3, mudou para 4).
Usaremos dados da penúltima avaliação da CAPES:
cacc_tudo = read_projectdata()
glimpse(cacc_tudo)
## Rows: 73
## Columns: 31
## $ Instituição <chr> "UNIVERSIDADE FEDERAL DO AMAZONAS", "UNI…
## $ Programa <chr> "INFORMÁTICA (12001015012P2)", "CIÊNCIA …
## $ Nível <int> 5, 4, 3, 3, 3, 5, 4, 3, 3, 3, 5, 3, 3, 3…
## $ Sigla <chr> "UFAM", "UFPA", "UFMA", "UEMA", "FUFPI",…
## $ `Tem doutorado` <chr> "Sim", "Sim", "Não", "Não", "Não", "Sim"…
## $ `Docentes colaboradores` <dbl> 0.25, 5.50, 3.00, 6.25, 1.75, 2.00, 1.00…
## $ `Docentes permanentes` <dbl> 24.75, 14.00, 10.00, 14.00, 9.50, 20.75,…
## $ `Docentes visitantes` <dbl> 0.00, 0.00, 0.00, 0.00, 0.00, 0.75, 0.50…
## $ `Resumos em conf` <int> 20, 23, 15, 5, 4, 10, 6, 136, 0, 24, 27,…
## $ `Resumos expandidos em conf` <int> 25, 24, 7, 10, 1, 68, 9, 13, 4, 6, 16, 5…
## $ `Artigos em conf` <int> 390, 284, 115, 73, 150, 269, 179, 0, 120…
## $ Dissertacoes <int> 108, 77, 50, 25, 31, 75, 60, 129, 45, 3,…
## $ Teses <int> 14, 0, 0, 0, 0, 24, 5, 0, 0, 0, 29, 0, 0…
## $ periodicos_A1 <int> 15, 19, 5, 1, 7, 21, 21, 0, 3, 8, 44, 0,…
## $ periodicos_A2 <int> 19, 21, 11, 1, 4, 32, 13, 0, 9, 2, 23, 2…
## $ periodicos_B1 <int> 19, 38, 7, 3, 6, 26, 16, 2, 6, 4, 32, 4,…
## $ periodicos_B2 <int> 1, 12, 2, 6, 0, 0, 11, 0, 0, 2, 1, 0, 0,…
## $ periodicos_B3 <int> 3, 16, 2, 2, 3, 16, 15, 0, 4, 6, 9, 0, 2…
## $ periodicos_B4 <int> 0, 4, 0, 3, 3, 0, 1, 3, 1, 6, 0, 0, 4, 5…
## $ periodicos_B5 <int> 10, 16, 8, 4, 12, 4, 16, 2, 6, 2, 11, 0,…
## $ periodicos_C <int> 9, 34, 12, 5, 2, 3, 11, 9, 5, 10, 16, 1,…
## $ periodicos_NA <int> 7, 15, 8, 11, 12, 6, 19, 31, 7, 14, 19, …
## $ per_comaluno_A1 <int> 4, 1, 0, 0, 1, 7, 5, 0, 1, 0, 10, 0, 0, …
## $ per_comaluno_A2 <int> 5, 5, 5, 0, 2, 15, 3, 0, 3, 0, 3, 0, 0, …
## $ per_comaluno_B1 <int> 4, 2, 5, 2, 2, 14, 6, 0, 2, 0, 17, 0, 1,…
## $ per_comaluno_B2 <int> 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0…
## $ per_comaluno_B3 <int> 2, 2, 0, 1, 0, 7, 9, 0, 2, 0, 4, 0, 0, 1…
## $ per_comaluno_B4 <int> 0, 0, 0, 0, 2, 0, 1, 0, 1, 3, 0, 0, 2, 0…
## $ per_comaluno_B5 <int> 5, 0, 4, 0, 8, 3, 6, 0, 4, 0, 4, 0, 2, 5…
## $ per_comaluno_C <int> 6, 5, 3, 1, 2, 3, 7, 1, 2, 4, 8, 0, 11, …
## $ per_comaluno_NA <int> 6, 14, 2, 2, 9, 3, 6, 4, 5, 1, 10, 0, 17…
cacc = cacc_tudo %>%
transmute(
docentes = `Docentes permanentes`,
producao = (periodicos_A1 + periodicos_A2 + periodicos_B1),
produtividade = producao / docentes,
mestrados = Dissertacoes,
doutorados = Teses,
tem_doutorado = tolower(`Tem doutorado`) == "sim",
mestrados_pprof = mestrados / docentes,
doutorados_pprof = doutorados / docentes
)
cacc_md = cacc %>%
filter(tem_doutorado)
skimr::skim(cacc)
| Name | cacc |
| Number of rows | 73 |
| Number of columns | 8 |
| _______________________ | |
| Column type frequency: | |
| logical | 1 |
| numeric | 7 |
| ________________________ | |
| Group variables | None |
Variable type: logical
| skim_variable | n_missing | complete_rate | mean | count |
|---|---|---|---|---|
| tem_doutorado | 0 | 1 | 0.47 | FAL: 39, TRU: 34 |
Variable type: numeric
| skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
|---|---|---|---|---|---|---|---|---|---|---|
| docentes | 0 | 1 | 20.63 | 12.27 | 8.25 | 11.25 | 16.75 | 25.75 | 67.25 | ▇▃▁▁▁ |
| producao | 0 | 1 | 58.03 | 65.44 | 0.00 | 18.00 | 42.00 | 67.00 | 355.00 | ▇▂▁▁▁ |
| produtividade | 0 | 1 | 2.36 | 1.37 | 0.00 | 1.40 | 2.27 | 3.20 | 5.66 | ▆▇▇▅▂ |
| mestrados | 0 | 1 | 75.79 | 63.23 | 0.00 | 39.00 | 58.00 | 103.00 | 433.00 | ▇▃▁▁▁ |
| doutorados | 0 | 1 | 14.96 | 30.98 | 0.00 | 0.00 | 0.00 | 14.00 | 152.00 | ▇▁▁▁▁ |
| mestrados_pprof | 0 | 1 | 3.66 | 1.81 | 0.00 | 2.57 | 3.58 | 4.88 | 8.19 | ▂▇▇▃▂ |
| doutorados_pprof | 0 | 1 | 0.43 | 0.73 | 0.00 | 0.00 | 0.00 | 0.57 | 2.69 | ▇▁▁▁▁ |
Uma das maneiras de avaliar a produção dos docentes que a CAPES utiliza é quantificando a produção de artigos pelos docentes. Os artigos são categorizados em extratos ordenados (A1 é o mais alto), e separados entre artigos em conferências e periódicos. Usaremos para esse lab a produção em periódicos avaliados com A1, A2 e B1.
Diferente de medirmos produção (total produzido), é medirmos produtividade (produzido / utilizado). Abaixo focaremos nessa análise. Para isso crie um modelo que investiga como um conjunto de fatores que você julga que são relevantes se relacionam com a produtividade dos programas. Crie um modelo que avalie como pelo menos 3 fatores se relacionam com a produtividade de um programa. Pode reutilizar fatores que já definimos e analizamos para produção. Mas cuidado para não incluir fatores que sejam função linear de outros já incluídos (ex: incluir A, B e um terceiro C=A+B)
Produza abaixo o modelo e um texto que comente (i) o modelo, tal como os que fizemos antes, e (ii) as implicações - o que aprendemos sobre como funcionam programas de pós no brasil?
cacc %>%
select(-tem_doutorado) %>%
ggpairs()
A partir da matriz de correlação acima podemos identificar um conjunto de variáveis mais correlacionadas com produtividade. As 3 variáveis com maior correlação com produtividade foram producao, doutorados_pprof e doutorados. Entretanto, por serem muito parecidas e também terem uma correlação alta entre elas, as variáveis referentes a doutorado talvez tenham efeito similar na relação com produtividade, e selecionaremos apenas uma delas. Ao final, nosso conjunto de fatores será composto por producao, doutorados_pprof e docentes, onde iremos analisar a relação dessas variáveis com produtividade.
Observando a relação entre as variáveis selecionadas, temos:
cacc %>%
select(produtividade, producao, doutorados_pprof, docentes) %>%
ggpairs()
Observando em separado a relação entre cada uma das variáveis escolhidas e produtividade, temos pelo gráfico de pontos que há uma correlação mais forte e positiva com producao, enquanto que com as outras variáveis esse relacionamento ainda é positivo, mas fraco ou inexistente.
cacc %>%
ggplot(aes(x = produtividade, y = producao, color = doutorados_pprof, size = docentes)) +
geom_point()
Vamos definir o modelo a partir das variáveis selecionadas.
modelo = lm(produtividade ~ producao + doutorados_pprof + docentes, data = cacc)
tidy(modelo, conf.int = TRUE, conf.level = 0.95)
## # A tibble: 4 x 7
## term estimate std.error statistic p.value conf.low conf.high
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 (Intercept) 2.43 0.202 12.0 1.38e-18 2.03 2.83
## 2 producao 0.0297 0.00320 9.28 9.14e-14 0.0233 0.0361
## 3 doutorados_pprof 0.294 0.171 1.73 8.88e- 2 -0.0459 0.635
## 4 docentes -0.0928 0.0156 -5.94 1.04e- 7 -0.124 -0.0617
glance(modelo)
## # A tibble: 1 x 11
## r.squared adj.r.squared sigma statistic p.value df logLik AIC BIC
## <dbl> <dbl> <dbl> <dbl> <dbl> <int> <dbl> <dbl> <dbl>
## 1 0.751 0.740 0.700 69.4 8.64e-21 4 -75.4 161. 172.
## # … with 2 more variables: deviance <dbl>, df.residual <int>
Podemos testar também definir o modelo acrescentando a variável tem_doutorado.
modelo_td = lm(produtividade ~ producao + doutorados_pprof + docentes + tem_doutorado, data = cacc)
tidy(modelo_td, conf.int = TRUE, conf.level = 0.95)
## # A tibble: 5 x 7
## term estimate std.error statistic p.value conf.low conf.high
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 (Intercept) 2.28 0.175 13.0 3.46e-20 1.93 2.63
## 2 producao 0.0292 0.00273 10.7 3.53e-16 0.0237 0.0346
## 3 doutorados_pprof -0.00750 0.157 -0.0478 9.62e- 1 -0.321 0.306
## 4 docentes -0.0995 0.0134 -7.42 2.43e-10 -0.126 -0.0728
## 5 tem_doutoradoTRUE 0.955 0.185 5.16 2.33e- 6 0.585 1.32
glance(modelo_td)
## # A tibble: 1 x 11
## r.squared adj.r.squared sigma statistic p.value df logLik AIC BIC
## <dbl> <dbl> <dbl> <dbl> <dbl> <int> <dbl> <dbl> <dbl>
## 1 0.821 0.810 0.597 78.0 1.14e-24 5 -63.4 139. 153.
## # … with 2 more variables: deviance <dbl>, df.residual <int>
Observamos que acrescentar ao modelo a variável tem_doutorado melhora o modelo, fazendo com que ele explique melhor a variância da produtividade. Com essa configuração, verificamos que foi utilizada uma regressão múltipla que permitiu analisar se existe uma associação entre a produtividade (variável dependente) de um programa de pós graduação com outros fatores, sendo eles: a produção, doutorados por docente, número de docentes e ter doutorado no programa. A partir dos resultados temos o modelo seguindo o seguinte formato: produtividade = 2,282 + 0,0291.producao - 0,0075.doutorados_pprof - 0,0995.docentes + 0.954.tem_doutorado. Esse modelo explica 82,1% da variância da produtividade (R2=0.821). A producao tem uma relação muito pequena com produtividade (b = [0,023; 0,034], IC com 95%), assim como doutorados_pprof(b = [-0,320; 0,305], IC com 95%) e docentes (b = [-0,126; -0,072], IC com 95%). Entretanto, tem_doutorado apresenta uma relação significativa com produtividade (b = [0,585; 1,323], IC com 95%). Dessa forma observamos que aumentar uma unidade (possuir um curso de doutorado no curso) vai aumentar a produtividade em 0,95 unidades, indicando que possuir doutorado no curso aumenta bastante a produtividade. Isso difere dos outros fatores, que aumentam muito pouco a produtividade (produção) ou diminuem muito pouco a produção (doutorados_pprof e docentes), de acordo com o estimate de cada um. Com isso, vemos que possuir doutorado no programa de pós graduação aumenta considerávelmente a produtividade do mesmo.