## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.0 ──
## ✓ ggplot2 3.3.0     ✓ purrr   0.3.3
## ✓ tibble  3.0.0     ✓ dplyr   0.8.5
## ✓ tidyr   1.0.2     ✓ stringr 1.4.0
## ✓ readr   1.3.1     ✓ forcats 0.5.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
## 
## Attaching package: 'modelr'
## The following object is masked from 'package:broom':
## 
##     bootstrap
## 
## Attaching package: 'gridExtra'
## The following object is masked from 'package:dplyr':
## 
##     combine
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows

Dados da CAPES sobre avaliação da pós-graduação

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…

Produção e produtividade de artigos

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.

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)

EDA

skimr::skim(cacc)
Data summary
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 ▇▁▁▁▁

Agora produtividade

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 analisamos 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 tercero C=A+B)

Explorando os dados

Inicialmente, antes de apresentar o modelo, vamos tentar identificar a relação entre as variáveis que serão utilizadas para o modelo através de visualização. Usaremos produtividade, mestrados_pprof, mestrados e doutorados

p1 <- cacc %>%
    ggplot(aes(
        x = mestrados_pprof,
        y = produtividade
    )) +
    geom_point( alpha = 0.8)  +
  xlab("Número de mestrados_pprof") + ylab("Produtividade")

p2 <- cacc %>%
    ggplot(aes(
        x = mestrados,
        y = produtividade
    )) +
    geom_point( alpha = 0.8) +
  xlab("Número de mestrados") + ylab("Produtividade")

p3 <- cacc %>%
    ggplot(aes(
        x = doutorados,
        y = produtividade
    )) +
    geom_point( alpha = 0.8)  +
  xlab("Número de doutorados") + ylab("Produtividade") + geom_smooth()

grid.arrange(p1, p2, p3, ncol = 3)
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'

A partir dessas visualizações, com variáveis escolhidas aleatoriamente, podemos observar e tentar identificar uma possível correlação entre cada variável e a produtividade.

  • Proporção de professores por mestrados não aparenta ter nenhum padrão

  • Número de teses de mestrado forma quase uma reta horizontal

  • Número de teses de doutorado é a que mais se aproxima (mas ainda muito pouco) de uma reta, correlacionando com produtividade.

Para ter certeza se existe ou não, criaremos um modelo:

O Modelo

set.seed(123)
modelo = lm(produtividade ~ mestrados + doutorados + mestrados_pprof, data = cacc)

table_modelo = tidy(modelo, conf.int = TRUE, conf.level = 0.95)
table_modelo %>% kable(align = 'c') %>% 
  kable_styling(bootstrap_options = c('striped', 'hover', 'responsive'))
term estimate std.error statistic p.value conf.low conf.high
(Intercept) 2.0407991 0.2996165 6.8113717 0.0000000 1.4430806 2.6385176
mestrados -0.0030532 0.0048624 -0.6279359 0.5321188 -0.0127534 0.0066469
doutorados 0.0311052 0.0085864 3.6226280 0.0005528 0.0139759 0.0482346
mestrados_pprof 0.0245093 0.1020537 0.2401609 0.8109176 -0.1790822 0.2281008
set.seed(123)
modelo_s = glance(modelo)
modelo_s %>% kable(align = 'c') %>% 
  kable_styling(bootstrap_options = c('striped', 'hover', 'responsive'))
r.squared adj.r.squared sigma statistic p.value df logLik AIC BIC deviance df.residual
0.3566708 0.3286999 1.124415 12.75152 1e-06 4 -110.0858 230.1716 241.6239 87.23728 69

Conclusão

Regressão múltipla foi utilizada para analisar se as variáveis mestrados_pprof, doutorados e mestrados tem uma associação significativa com produtividade Os resultados da regressão indicam que um modelo com os 3 preditores no formato produtividade = 2.0407991 + 0.024 * mestrados_pprof + -0.003 * mestrados + 0.031 * doutorados explicam 35,66% da variância da variável de resposta (R2 = 0.3566708). A variável mestrados_pprof, não tem uma relação significativa com a produtividade (b = [-0.1790822 0.2281008], IC com 95%), mestrados (b = [-0.0127534; 0.0066469], IC com 95%) também não significativa, e doutorados (b = [0.0139759 0.0482346], IC com 95%), que pode ser considerada significativa. O aumento de 1 unidade de mestrados_pprof produz uma mudança de 0.024 na produtividade, já aumentando 1 unidade de doutorados, a produtividade cresce 0.031 e por último, quando aumentamos mestrados, a produtividade diminui -0.003. A partir desse modelo, procuramos entender como os fatores escolhidos influenciam na produtividade. Dentre as variáveis selecionadas, foi possível observar que a proporção de docentes por teses de mestrado e quantidade de teses de mestrado não produzem nenhuma mudança significativa na produtividade. A quantidade de teses de doutorado apresenta um coeficiente levemente maior do que mestrados_pprof, além disso podemos considerar que sua relação com produtividade seja significativa, pois seu intervalo de confiança não inclui o 0.