## -- Attaching packages --------------------------------------- tidyverse 1.2.1 --
## v ggplot2 3.1.1 v purrr 0.3.2
## v tibble 2.1.1 v dplyr 0.8.0.1
## v tidyr 0.8.3 v stringr 1.4.0
## v readr 1.3.1 v forcats 0.4.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
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)
## Observations: 73
## Variables: 31
## $ Instituicao <chr> "UNIVERSIDADE FEDERAL DO AMAZONAS...
## $ Programa <chr> "INFORMÁTICA (12001015012P2)", "C...
## $ Nível <int> 5, 4, 3, 3, 3, 5, 4, 3, 3, 3, 5, ...
## $ Sigla <chr> "UFAM", "UFPA", "UFMA", "UEMA", "...
## $ `Tem doutorado` <chr> "Sim", "Sim", "Não", "Não", "Não"...
## $ `Docentes colaboradores` <dbl> 0.25, 5.50, 3.00, 6.25, 1.75, 2.0...
## $ `Docentes permanentes` <dbl> 24.75, 14.00, 10.00, 14.00, 9.50,...
## $ `Docentes visitantes` <dbl> 0.00, 0.00, 0.00, 0.00, 0.00, 0.7...
## $ `Resumos em conf` <int> 20, 23, 15, 5, 4, 10, 6, 136, 0, ...
## $ `Resumos expandidos em conf` <int> 25, 24, 7, 10, 1, 68, 9, 13, 4, 6...
## $ `Artigos em conf` <int> 390, 284, 115, 73, 150, 269, 179,...
## $ Dissertacoes <int> 108, 77, 50, 25, 31, 75, 60, 129,...
## $ Teses <int> 14, 0, 0, 0, 0, 24, 5, 0, 0, 0, 2...
## $ periodicos_A1 <int> 15, 19, 5, 1, 7, 21, 21, 0, 3, 8,...
## $ periodicos_A2 <int> 19, 21, 11, 1, 4, 32, 13, 0, 9, 2...
## $ periodicos_B1 <int> 19, 38, 7, 3, 6, 26, 16, 2, 6, 4,...
## $ periodicos_B2 <int> 1, 12, 2, 6, 0, 0, 11, 0, 0, 2, 1...
## $ periodicos_B3 <int> 3, 16, 2, 2, 3, 16, 15, 0, 4, 6, ...
## $ periodicos_B4 <int> 0, 4, 0, 3, 3, 0, 1, 3, 1, 6, 0, ...
## $ periodicos_B5 <int> 10, 16, 8, 4, 12, 4, 16, 2, 6, 2,...
## $ periodicos_C <int> 9, 34, 12, 5, 2, 3, 11, 9, 5, 10,...
## $ periodicos_NA <int> 7, 15, 8, 11, 12, 6, 19, 31, 7, 1...
## $ per_comaluno_A1 <int> 4, 1, 0, 0, 1, 7, 5, 0, 1, 0, 10,...
## $ per_comaluno_A2 <int> 5, 5, 5, 0, 2, 15, 3, 0, 3, 0, 3,...
## $ per_comaluno_B1 <int> 4, 2, 5, 2, 2, 14, 6, 0, 2, 0, 17...
## $ per_comaluno_B2 <int> 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, ...
## $ per_comaluno_B3 <int> 2, 2, 0, 1, 0, 7, 9, 0, 2, 0, 4, ...
## $ per_comaluno_B4 <int> 0, 0, 0, 0, 2, 0, 1, 0, 1, 3, 0, ...
## $ per_comaluno_B5 <int> 5, 0, 4, 0, 8, 3, 6, 0, 4, 0, 4, ...
## $ per_comaluno_C <int> 6, 5, 3, 1, 2, 3, 7, 1, 2, 4, 8, ...
## $ per_comaluno_NA <int> 6, 14, 2, 2, 9, 3, 6, 4, 5, 1, 10...
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)
skimr::skim(cacc)
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)
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 ‘docentes’ (número de docentes permanentes) tem uma associação com ‘produção’ (quantidade de artigos A1,A2 e B1 produzidos pelo programa de pós graduação a qual o docente pertence). Os resultados da regressão indicam que um modelo no formato ‘produção = -41,27 + 4,81.docentes’ explicam 81,45% da variância da variável de resposta (R2 = 0,8145). O número de docentes tem uma relação positiva e forte com a produção (b = [4,26; 5,35], IC com 95%). O aumento de 1 unidade de docentes produz uma mudança de 4,81 na produção.
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?
Acredito que há dois fatores para que essa relação seja forte. O primeiro é que o docente sempre busca publicar artigos, seja por pre requisito para se manter no programa de pós ou para evoluir na carreira. O segundo é que, cada professor geralmente tem 1 ou mais orientandos, seja de mestrado ou de doutorado, e como os alunos são incentivados a publicar artigos, a produção tende a aumentar juntos com o número de alunos, como também quanto mais professores mais orientados e portanto mais produção.
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)
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)
## Observations: 120
## Variables: 5
## $ producao <dbl> 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.0000...
## $ docentes <dbl> 8.25000, 8.25000, 8.25000, 27.91667, 27.91667, 27.9...
## $ mestrados <int> 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, ...
## $ pred <dbl> 3.199123, 79.257725, 155.316327, 72.026777, 148.085...
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?
EXPLICAÇÃO: Regressão múltipla foi utilizada para analisar se ‘docentes’ (número de docentes permanentes), ‘mestrados’ (número de dissertações de mestrado) e ‘doutorados’ (número de teses de doutorado) tem uma associação com ‘producao’ (quantidade de artigos A1,A2 e B1 produzidos pelo programa de pós graduação a qual o docente pertence). Os resultados da regressão indicam que um modelo com os 3 preditores no formato ‘producao = -14,36 + 3,49.docentes + 1.doutorados - 0,19.mestrados’ explicam 87,06% da variância da variável de resposta (R2 = 0,8706). ‘docentes’, medida em unidades tem uma relação positiva e forte com a produção (b = [2,58; 4,41], IC com 95%), ‘doutorados’ medida em unidades tem uma relação positiva com produção (b = [0,63; 1,36], IC com 95%) e ‘mestrados’ medida em unidades tem uma relação negativa porém muito fraca com a produção (b = [-0,35; -0,03], IC com 95%). O aumento de 1 unidade de ‘docentes’ produz uma mudança de 3,49 na produção, um aumento de 1 unidade de ‘doutorados’ produz mudança de 1, equanto que o aumento de 1 unidade de mestrados produz mudança de -0,19 na produção. O modelo mostra que ‘doutorados’ tem mais peso que ‘mestrados’, é possível explicar essa diferença com algumas suposições. A primeira é que um doutorado leva mais tempo que um mestrado, portanto o aluno de doutorado pode produzir mais artigos. Outro fator a ser levado em consideração é que no mestrado o aluno ainda está aprendendo ‘como fazer ciência’ e portanto deve ter mais dificuldade em produzir um artigo do que um aluno de doutorado que já tem essa experiência.
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 tercero 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 = 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,
nivel = Nível
)
modelo = lm(produtividade ~ producao + docentes + tem_doutorado + nivel, data = cacc)
tidy(modelo, conf.int = TRUE, conf.level = 0.95)
glance(modelo)
EXPLICAÇÃO: Regressão múltipla foi utilizada para analisar se ‘docentes’ (número de docentes permanentes), ‘tem_doutorado’ (True se o programa tem doutorado, False caso contrário), ‘producao’ (quantidade de artigos A1,A2 e B1 produzidos pelo programa de pós graduação a qual o docente pertence) e ‘nivel’ (Nota de avaliação da capes) tem uma associaç!ao com ‘produtividade’ (proporção de produção em relação a docentes permanentes). Os resultados da regressão indicam que um modelo com os 4 preditores no formato ‘produtividade = -2,5 + 0,03.producao + 1.tem_doutorado - 0,1.docentes -0,07.nivel’ explicam 82,20% da variância da variável de resposta (R2 = 0,8220). ‘producao’, medida em unidades tem uma relação positiva com a produtividade (b = [0,024; 0,03], IC com 95%), ‘docentes’, medida em unidades tem uma relação negativa com a produtividade (b = [-0,12; -0,07], IC com 95%), ‘tem_doutorado’, medida como [1 = tem_doutorado = TRUE, 0 = tem_doutorado = FALSE] tem uma relação positiva com a produtividade (b = [0,62; 1,38], IC com 95%), e ‘nivel’, medida em unidades tem uma relação fraca com a produtividade (b = [-0,31; 0,16], IC com 95%). O aumento de 1 unidade de ‘producao’ produz uma mudança de 0,03 na produtividade, um aumento de 1 unidade de ‘docentes’ produz mudança de -0,1, o aumento de 1 unidade de ‘nivel’ produz mudança de -0,07, enquanto que ter doutorado no programa produz uma mudança de 1 na produtividade. O modelo mostra que ter doutorado no programa é a variavel mais significativa para produtividade. Também mostra que a nota de avaliação da capes tem uma baixa relação com produtividade. Portanto podemos concluir que ter o doutorado provavelmente aumenta a produtivade do programa.