## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.1     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
## 
## Anexando pacote: 'modelr'
## 
## 
## O seguinte objeto é mascarado por 'package:broom':
## 
##     bootstrap

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", "UNIV…
## $ Programa                     <chr> "INFORMÁTICA (12001015012P2)", "CIÊNCIA D…
## $ 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, 0…
## $ per_comaluno_A1              <int> 4, 1, 0, 0, 1, 7, 5, 0, 1, 0, 10, 0, 0, 2…
## $ per_comaluno_A2              <int> 5, 5, 5, 0, 2, 15, 3, 0, 3, 0, 3, 0, 0, 1…
## $ 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, 3…
## $ 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 ▇▁▁▁▁
cacc %>% 
  ggplot(aes(x = docentes)) + 
  geom_histogram(bins = 15, fill = paleta[1])

cacc %>% 
  ggplot(aes(x = producao)) + 
  geom_histogram(bins = 15, fill = paleta[2])

cacc %>% 
  ggplot(aes(x = produtividade)) + 
  geom_histogram(bins = 15, fill = paleta[3])

Se quisermos modelar o efeito do tamanho do programa em termos de docentes (permanentes) na quantidade de artigos publicados, podemos usar regressão.

Importante: sempre queremos ver os dados antes de fazermos qualquer modelo ou sumário:

cacc %>% 
  ggplot(aes(x = docentes, y = producao)) + 
  geom_point()

Parece que existe uma relação. Vamos criar um modelo então:

modelo1 = lm(producao ~ docentes, data = cacc)
tidy(modelo1, conf.int = TRUE, conf.level = 0.95)
modelo1tidy = tidy(modelo1, conf.int = TRUE, conf.level = 0.95)
glance(modelo1)
modelo1glance = glance(modelo1)

Para visualizar o modelo:

cacc_augmented = cacc %>% 
  add_predictions(modelo1) 

cacc_augmented %>% 
  ggplot(aes(x = docentes)) + 
  geom_line(aes(y = pred), colour = "brown") + 
  geom_point(aes(y = producao)) + 
  labs(y = "Produção do programa")

Se considerarmos que temos apenas uma amostra de todos os programas de pós em CC no Brasil, o que podemos inferir a partir desse modelo sobre a relação entre número de docentes permanentes e produção de artigos em programas de pós?

Normalmente reportaríamos o resultado da seguinte maneira, substituindo VarIndepX e todos os x’s e y’s pelos nomes e valores de fato:

Regressão múltipla foi utilizada para analisar se VarIndep1 e VarIndep2 tem uma associação significativa com VarDep. Os resultados da regressão indicam que um modelo com os 2 preditores no formato VarDep = XXX.VarIndep1 + YYY.VarIndep2 explicam XX,XX% da variância da variável de resposta (R2 = XX,XX). VarIndep1, medida como/em [unidade ou o que é o 0 e o que é 1] tem uma relação significativa com o erro (b = [yy,yy; zz,zz], IC com 95%), assim como VarIndep2 medida como [unidade ou o que é o 0 e o que é 1] (b = [yy,yy; zz,zz], IC com 95%). O aumento de 1 unidade de VarIndep1 produz uma mudança de xxx em VarDep, enquanto um aumento…

Produza aqui a sua versão desse texto, portanto:


Regressão Simples foi utilizada para analisar se os docentes permanentes (docentes) tem uma associação significativa com a produção de artigos A1, A2 e B1 (producao). Os resultados da regressão indicam que um modelo com 1 preditor no formato producao = -41.2730878 + 4.8133701 * docentes (\(Y = \beta_0 + \beta_1 \times X\)) explica 81.46% da variância da variável de resposta (R2 = 0.8145886). A quantidade de docentes permanentes, medida em unidade, tem uma relação significativa com o erro (b = [4.2699546; 5.3567856], IC com 95%). O aumento de 1 unidade de docentes produz uma mudança de 4.8133701 em producao.


Dito isso, o que significa a relação que você encontrou na prática para entendermos os programas de pós graduação no Brasil? E algum palpite de por que a relação que encontramos é forte?


É possível identificar que foi encontrada uma forte relação entre a quantidade de docentes permanentes com a produção de artigos nos programas de pós-graduação em ciência da computação. Apenas esta relação não é suficiente para definir que tal influência entre as variáveis ocorre em todos programas de pós graduação (por estar analisando apenas em CC) e talvez outros fatores influenciem no aumento da produção, sendo necessário analisá-los para entender se eles contribuem ou invalidam esta relação.

No entando, essa forte relação possivelmente pode ser explicada pelo fato de que docentes permanentes podem ter mais tempo para adequar seu modelo de ensino e mentoria aos alunos e a insitituição, além da possibilidade de participar ou criar projetos, de forma que esses forneçam incentivo a produção de artigos. Um corpo docente mais estruturado consegue produzir mais do que aqueles com maior variação de professores nos períodos.


Mais fatores

modelo2 = lm(producao ~ docentes + mestrados_pprof + doutorados_pprof + tem_doutorado, 
             data = cacc_md)

tidy(modelo2, conf.int = TRUE, conf.level = 0.95)
glance(modelo2)

E se considerarmos também o número de alunos?

modelo2 = lm(producao ~ docentes + mestrados + doutorados, data = cacc)

tidy(modelo2, conf.int = TRUE, conf.level = 0.95)
glance(modelo2)
modelo2tidy = tidy(modelo2, conf.int = TRUE, conf.level = 0.95)
modelo2glance = glance(modelo2)

Visualizar o modelo com muitas variáveis independentes fica mais difícil

para_plotar_modelo = cacc %>% 
  data_grid(producao = seq_range(producao, 10), # Crie um vetor de 10 valores no range
            docentes = seq_range(docentes, 4),  
            # mestrados = seq_range(mestrados, 3),
            mestrados = median(mestrados),
            doutorados = seq_range(doutorados, 3)) %>% 
  add_predictions(modelo2)

glimpse(para_plotar_modelo)
## Rows: 120
## Columns: 5
## $ producao   <dbl> 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.000…
## $ docentes   <dbl> 8.25000, 8.25000, 8.25000, 27.91667, 27.91667, 27.91667, 47…
## $ mestrados  <int> 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,…
## $ doutorados <dbl> 0, 76, 152, 0, 76, 152, 0, 76, 152, 0, 76, 152, 0, 76, 152,…
## $ pred       <dbl> 3.199123, 79.257725, 155.316327, 72.026777, 148.085378, 224…
para_plotar_modelo %>% 
  ggplot(aes(x = docentes, y = pred)) + 
  geom_line(aes(group = doutorados, colour = doutorados)) + 
  geom_point(data = cacc, aes(y = producao, colour = doutorados))

Considerando agora esses três fatores, o que podemos dizer sobre como cada um deles se relaciona com a produção de um programa de pós em CC? E sobre o modelo? Ele explica mais que o modelo 1?


Regressão múltipla foi utilizada para analisar se os docentes permanentes (docentes) e os alunos de mestrado (mestrados) e doutorado (doutorados) tem uma associação significativa com a produção de artigos A1, A2 e B1 (producao). Os resultados da regressão indicam que um modelo com 3 preditores no formato producao = -14.3663077 + 3.4997112 * docentes+ -0.1949515 * mestrados + 1.0007711 * doutorados (\(Y = \beta_0 + \beta_1 \times X_1 + \beta_2 \times X_2 + \beta_3 \times X_3\)) explica 87.07% da variância da variável de resposta (R2 = 0.8706642).

Para isto, segue as análises de relação:


Com esta análise é possivel identificar que cada uma das variáveis produz um efeito diferente sobre a produção de artigos, sendo as mais significativas para o aumento a quantidade de docentes e de doutorados. É possível indicar que a relação com os docentes observada no modelo 1 provavelmente esteja certa, dado que em ambas as análises a relação foi forte. Quanto a relação com os doutorados, apesar de não ser tanta quanto a relação com os docentes, possui uma certa significancia. Talvez esta relação positiva exista devido ao fato de que a produção de artigos para a modalidade Doutorado em específico é maior, uma vez que a produção ajuda a validar a pesquisa do doutorado e também por conceder mais fatores para a conclusão dos alunos no programa. Por outro lado, a quantidade de mestrados não influencia positivamente na produção de artigos. Este fator pode se dar por vários motivos. Uma suposição é que devido ao tempo do programa nesta modalidade ser mais curto, o foco dos alunos não é na produção de diversos artigos, e sim na produção e defesa de sua pesquisa. Além disso, a experiência em pesquisa encontrada no mestrado pode ser menor, o que também afeta no nível de produção.

Desta forma, o modelo 2 pode sim explicar alguns pontos melhor que o modelo 1, adicionando também mais um fator para acreditar na hipotese de que a quantidade de docentes permanentes possui uma relação real com a produção de artigos. No entanto, é necessário observar que o p-valor de algumas das variaveis ainda é consideravelmente alto, com todos sendo acima de 1, o que pode acabar indicando que talvez o modelo não seja tão significativo. Devido a isso, é necessário revisar o modelo ou propor outro mais eficiente.

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 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

  1. o modelo, tal como os que fizemos antes

  2. as implicações - o que aprendemos sobre como funcionam programas de pós no brasil?.

Como o motivo principal é analisar a produtividade, será necessário identificar quais possíveis variaveis podem ter relação com a mesma. Como identificado na análise anterior que a variável docentes possui uma relação mais significativa com a produção, talvez a mesma também possua relação com a produtividade. Além disso, também foi possível identificar que o doutorado possui uma certa influência sobre a produção, portanto, o mesmo será testado com relação a produtividade. Para isso, será considerado se o programa possui doutorado ou não avaliando a variável tem_doutorado e também a quantidade de doutorandos por docente com a variável doutorados_pprof. Para facilitar, a variável tem_doutorado foi transformada em numérica.

cacc_num <- cacc %>%
  mutate(tem_doutorado = as.numeric(tem_doutorado))

modelo3 = lm(produtividade ~ docentes+tem_doutorado+doutorados_pprof, data = cacc_num)

tidy(modelo3, conf.int = TRUE, conf.level = 0.95)
glance(modelo3)
modelo3tidy = tidy(modelo3, conf.int = TRUE, conf.level = 0.95)
modelo3glance = glance(modelo3)

Regressão múltipla foi utilizada para analisar se os docentes permanentes (docentes), a quantidade de alunos de doutorado por docente (doutorados_pprof) e se o programa possuir a modalidade doutorado (tem_doutorado) tem uma associação significativa com a produtividade (produtividade). Os resultados da regressão indicam que um modelo com 3 preditores no formato produtividade = 1.3334503 + 0.0143582 * docentes+ 1.0265203 * tem_doutorado + 0.5988837 * doutorados_pprof (\(Y = \beta_0 + \beta_1 \times X_1 + \beta_2 \times X_2 + \beta_3 \times X_3\)) explica 52.11% da variância da variável de resposta (R2 = 0.5210673).

Para isto, segue as análises de relação:

A partir disto, é possível identificar que a relação entre produtividade e docentes não é forte, indicando que mesmo que existam mais docentes permanentes, a produtividade não é tão afetada. No entando, ao analisar a segunda hipotese de que talvez o fator doutorado pudesse impactar na produtividade assim como também na produção, identificamos uma relação mais forte. Já é possível identificar uma relação mais consideravel só do programa possuir o doutorado. Talvez, isso se dê pelo fato citado nas análises anteriores sobre experiência. Uma vez que aqueles que iniciam o doutorado possuem mais experiência na pesquisa, estes conseguem uma maior produtividade em seus artigos. Além disso, o fato de ser um doutorado talvez traga maior credibilidade aos artigos produzidos, que são validados posteriormente pela tese.

Quanto ao fator de quantidade de doutorandos por professor, apesar de não ser uma relação tão forte, ainda há um certo indicativo de que quantidade de doutorandos por docente influencia na produtividade.

No geral, é possível entender que no contexto de CC, a produtividade dos cursos de pós graduação é levemente influenciada por estes possuírem a modalidade de doutorado.