Cálculo de Estudante em Tempo Integral (FTE)

Para sabermos o total de indivíduos em uma instituição, a simples contagem é uma medida pobre, pois não considera que alguns dos indivíduos trabalham/estudam em tempo parcial. Isto torna a contagem artificialmente elevada, superestimando custos, etc.

A principal medida adotada para contornar este problema é padronizar os dados para que seja fornecido o número de indivíduos em relação a um referencial, a saber, um estudante ou funcionário em tempo integral. De acordo com o relatório do THE:

1.0 FTE may be thought of as one person working full time for a year, while an FTE of 0.5 means half of a full work or study load. The FTE for a student or staff member could be calculated as the total number of hours worked (or modules studied) during the year, divided by the number of working hours or modules of a full time person.

Em relação aos docentes e técnicos administrativos, a medida é simples de ser adotada, pois as cargas horárias são bem definidas. Por exemplo, toma-se o técnico administrativo em tempo integral como aquele que trabalha 40 horas/semana. Desta forma, um técnico em regime de 30 horas é equivalente a \(30/40 = 0.75\) vezes um técnico em tempo integral.

A complexidade aumenta quando tratamos de estudantes, pelos seguintes motivos:

  1. Não há uma definição clara da carga horária de um estudante full-time. Para um aluno sem reprovações, espera-se que ele cumpra a carga horária relativo ao semestre que se encontra.
  2. Mesmo que um aluno não tenha reprovações, a carga horária pode variar dependendo do semestre que ele se encontra.
  3. Alunos com reprovações estão matriculados em disciplinas de diferentes semestres, a depender dos pré-requisitos, podem ter carga horária elevada ou reduzida em relação ao estudante equivalente ( full-time ).
  4. As disciplinas são ofertadas semestralmente, de modo que entre os dois semetres que constituem o ano, há entrada e saída de estudantes. Os estudantes que colam grau ou desistem entre os semestres, ou ainda, os estudantes que iniciam o curso no segundo semestre devem ter carga horária comparada á do estudante em tempo integral ou a meio estudante em tempo integral?

Dados da Ufersa:

Temos dois conjuntos de dados correspondendo aos estudantes matriculados no primeiro e segundo semestres de 2017. Vamos definir a carga horária de um estudante em tempo integral como \(N \times H\), em que \(N\) é o número de disciplinas e \(H\) é o número de horas de cada disciplina, considerando um semestre. Assim, o aluno em tempo integral no período de um ano deve ter carga horária de \(2 \times N \times H\). Considerando \(N= 6\) e \(H = 60\), temos 720 horas de carga horária anual a ser cumprida pelo Estudante em Tempo Integral.

library(dplyr)

# Numero de disciplinas N com H horas: (padrão estabelecido)
N = 6
H = 60

# diretório
setwd("C:/Users/aline/Desktop/THE_rankings/Impact Ranking/")

# Abrir conjunto de dados dos alunos 2017.1
alunos_1 = read.csv("./Lista de todos os alunos matriculados em cursos de graduação em 2017.1(com ch_total).csv", sep=";", header = TRUE)

# Abrir conjunto de dados dos alunos 2017.2
alunos_2 = read.csv("./Lista de todos os alunos matriculados em cursos de graduação em 2017.2(com ch_total).csv", sep=";", header = TRUE)

O formato das planilhas é mostrado abaixo (nomes e cpf’s omitidos):

head(data.frame(matricula = alunos_1$matricula, CH = alunos_1$carga_horaria_total))
##    matricula  CH
## 1 2015000280 120
## 2 2014020138 300
## 3 2016011295 270
## 4 2014011066 300
## 5 2013020277 150
## 6 2016010062 450

Nos dados, alguns dos estudantes das engenharias apresentam carga horária acima de 2 mil horas. A carga horária computada no semestre acumulou os créditos obtidos durante o ciclo básico das engenharias.

Assim, para os estudantes com carga horária acima de 2400 horas, subtraímos este valor para obter uma aproximação da carga horária atual. O valor 2400 refere-se à carga horária mínima para do Bacharelado em Ciência e Tecnologia (ciclo básico das engenharias).

A função abaixo subtrai a carga horária do BCT dos alunos com mais de 2400 horas.
# Se a carga horaria for maior que 2400 horas, subtraia...

alunos_1$carga_horaria_total =  ifelse(alunos_1$carga_horaria_total >= 2400, alunos_1$carga_horaria_total-2400, alunos_1$carga_horaria_total)

alunos_2$carga_horaria_total =  ifelse(alunos_2$carga_horaria_total >= 2400, alunos_2$carga_horaria_total-2400, alunos_2$carga_horaria_total)

DÚVIDA:

Alguns alunos parecem sair do ciclo básico com menos de 2400 horas… Como tratar isto? Abaixo temos as 200 maiores cargas horárias encontradas depois da subtração, ainda encontramos valores absurdos:

data.frame(matricula = alunos_1$matricula, 
           CH = alunos_1$carga_horaria_total) %>% top_n(., 200, CH) %>% arrange(., desc(CH))
##      matricula   CH
## 1   2017001992 2385
## 2   2017003137 2385
## 3   2017003440 2370
## 4   2017002560 2370
## 5   2017001750 2370
## 6   2017001731 2370
## 7   2017001740 2340
## 8   2017002185 2340
## 9   2017003478 2340
## 10  2017002200 2340
## 11  2017003610 2325
## 12  2017002265 2310
## 13  2017001197 2310
## 14  2017003244 2310
## 15  2017003217 2310
## 16  2017004706 2310
## 17  2017001268 2310
## 18  2017001230 2280
## 19  2017003629 2280
## 20  2017003656 2265
## 21  2017002990 2265
## 22  2017002944 2250
## 23  2017001858 2250
## 24  2017001016 2250
## 25  2017002363 2250
## 26  2017002149 2250
## 27  2017001938 2250
## 28  2017001482 2250
## 29  2017003235 2250
## 30  2017002434 2250
## 31  2017003351 2220
## 32  2017001034 2220
## 33  2017003487 2220
## 34  2017001375 2220
## 35  2017000350 2220
## 36  2017003155 2190
## 37  2017001713 2190
## 38  2017002630 2190
## 39  2017001025 2175
## 40  2017001894 2160
## 41  2017002686 2160
## 42  2017001132 2160
## 43  2017002470 2160
## 44  2017003585 2145
## 45  2017003128 2130
## 46  2017010705 2130
## 47  2017001007 2130
## 48  2017002480 2130
## 49  2017002407 2130
## 50  2017001787 2130
## 51  2017001286 2130
## 52  2017003594 2130
## 53  2017000995 2100
## 54  2017000940 2100
## 55  2017001052 2100
## 56  2017010885 2100
## 57  2017003422 2100
## 58  2017003084 2070
## 59  2017003164 2070
## 60  2017003370 2070
## 61  2017001141 2070
## 62  2017001310 2070
## 63  2017003173 2070
## 64  2017003549 2070
## 65  2017000645 2040
## 66  2017010868 2010
## 67  2017001606 2010
## 68  2017001670 2010
## 69  2017001114 2010
## 70  2017000780 1980
## 71  2017010258 1950
## 72  2017010261 1950
## 73  2017002597 1950
## 74  2017000627 1935
## 75  2017003093 1890
## 76  2017002846 1890
## 77  2017003709 1890
## 78  2017000903 1890
## 79  2017003736 1890
## 80  2017011000 1860
## 81  2017010960 1860
## 82  2017003057 1830
## 83  2017003511 1830
## 84  2017002309 1830
## 85  2017010419 1800
## 86  2017003727 1770
## 87  2017011410 1770
## 88  2017010495 1770
## 89  2017011040 1770
## 90  2017010951 1770
## 91  2017010971 1695
## 92  2017000832 1665
## 93  2017010663 1665
## 94  2017010215 1650
## 95  2017011253 1650
## 96  2017003745 1630
## 97  2017010497 1620
## 98  2017010319 1620
## 99  2017002238 1590
## 100 2017010759 1590
## 101 2017000242 1575
## 102 2017010443 1560
## 103 2017010392 1560
## 104 2017000144 1560
## 105 2017010884 1530
## 106 2017010919 1500
## 107 2017011140 1410
## 108 2017010453 1380
## 109 2017000494 1365
## 110 2017003182 1350
## 111 2017003530 1290
## 112 2017000850 1290
## 113 2017011204 1290
## 114 2017010363 1260
## 115 2017000369 1230
## 116 2017010075 1230
## 117 2017010546 1185
## 118 2017001535 1170
## 119 2017000117 1170
## 120 2017010378 1170
## 121 2017011026 1140
## 122 2017000251 1140
## 123 2017010381 1140
## 124 2017010479 1110
## 125 2017010229 1110
## 126 2017010760 1080
## 127 2017010585 1080
## 128 2017011239 1080
## 129 2017010467 1050
## 130 2017011170 1050
## 131 2017010359 1050
## 132 2017000091 1035
## 133 2017011351 1035
## 134 2017010300 1020
## 135 2017010125 1020
## 136 2011211865 1010
## 137 2016004022 1000
## 138 2017003754  990
## 139 2017010989  990
## 140 2017003066  990
## 141 2017000879  990
## 142 2015000931  960
## 143 2017000215  960
## 144 2016002396  940
## 145 2017011208  930
## 146 2016006027  930
## 147 2017010923  930
## 148 2014008971  930
## 149 2017010764  930
## 150 2017010938  930
## 151 2017010485  930
## 152 2017010482  930
## 153 2017011017  930
## 154 2017010894  930
## 155 2015003951  915
## 156 2017011318  900
## 157 2017010472  900
## 158 2017000153  900
## 159 2017010518  900
## 160 2017010582  900
## 161 2017001437  900
## 162 2014020618  885
## 163 2016003867  880
## 164 2016002897  880
## 165 2016002547  880
## 166 2016002940  880
## 167 2016002761  880
## 168 2017011472  870
## 169 2017000420  870
## 170 2017001651  855
## 171 2017010662  855
## 172 2013020034  840
## 173 2013020006  840
## 174 2017002381  840
## 175 2016002135  840
## 176 2017011191  840
## 177 2013010955  830
## 178 2014007938  825
## 179 2016002743  820
## 180 2015005491  820
## 181 2015005464  820
## 182 2017010556  810
## 183 2017003665  810
## 184 2014008069  810
## 185 2017003576  810
## 186 2017000028  810
## 187 2017004018  810
## 188 2017000799  795
## 189 2017010154  780
## 190 2017010610  780
## 191 2017001689  780
## 192 2017001099  780
## 193 2016008747  780
## 194 2017011028  780
## 195 2016008792  780
## 196 2017000681  780
## 197 2017010428  780
## 198 2016007365  780
## 199 2017000823  780
## 200 2017010111  765

Separamos os alunos em 3 grupos:

  1. O primeiro grupo contém os estudantes que estão listados nos dois semestres, ou seja, não são colaram grau no primeiro semestre e não abandonaram; Computamos cada estudante de acordo com o equivalente em tempo integral. Devido às inconsistências encontradas nas cargas horárias apresentadas anteriormente, os valores de equivalentes que ficaram acima de 1 foram truncados em 1. Na prática, estamos considerando alunos com carga horária anual maior do que \(2 \times N \times H\) como 1 estudante equivalente. Caso isto não seja feito, o número de estudantes equivalentes será maior do que a contagem de estudantes, o que seria absurdo. o total de alunos matriculados nos dois semetres é apresentado abaixo.
# Conjunto dos alunos que estudaram o primeiro e segundo semestres:
alunos_em_comum = intersect(alunos_1$matricula, alunos_2$matricula)

# Dados destes alunos no semestre 1:
alunos_em_comum_1 = alunos_1 %>% 
  filter(., alunos_1$matricula %in% alunos_em_comum) %>% arrange(., nome)

# Dados destes alunos no semestre 2:
alunos_em_comum_2 = alunos_2 %>% 
  filter(., alunos_2$matricula %in% alunos_em_comum) %>% arrange(., nome) 

nrow(alunos_em_comum_1)
## [1] 5734

Seguindo a metodologia apresentada acima, temos que o número de alunos equivalentes, para o grupo matriculado nos dois semestres é de \(4288.25\). Este valor representa aproximadamente \(4288.25/5734 = 74.78\%\) do total.

# Finalmente, calculamos o FTE para os alunos do ano inteiro.
# Isto é feito somando a carga horária do primeiro com o segundo semestre
# e dividindo pelo número de horas esperadas de carga horária:
FTE_12 = (alunos_em_comum_1$carga_horaria_total + alunos_em_comum_2$carga_horaria_total)/(2*N*H)

# Considerando aqueles alunos com FTE_12 acima de 1 como 1, temos:
FTE_12 = ifelse(FTE_12 > 1, 1, FTE_12)

# Finalmente, o número de alunos em tempo integral que estudaram 
# os dois semestres é dado pela soma:
sum(FTE_12)
## [1] 4288.25
  1. O segundo grupo é composto pelos estudantes que estão listados apenas no primeiro semestre. Optou-se por dividir a carga horária total dos estudantes pela carga horária anual do estudante equivalente.

Utilizando a mesma metodologia, temos que o total de alunos matriculados apenas no primeiro semestre foi de \(1673\). O número de estudantes equivalentes é de \(641,2639\).

# Alunos matriculados apenas no primeiro semestre
alunos_so_1 = alunos_1 %>% 
  filter(., !(alunos_1$matricula %in% alunos_em_comum)) %>% arrange(., nome)

nrow(alunos_so_1)
## [1] 1673
FTE_1 = (alunos_so_1$carga_horaria_total/(2*N*H))
FTE_1 = ifelse(FTE_1 > 1, 1, FTE_1)

sum(FTE_1)
## [1] 641.2639
  1. O último grupo é formado por estudantes listados apenas no segundo semestre composto por 1659 estudantes. Da mesma forma, computamos o número de estudantes equivalente neste grupo, obtendo o valor de \(648.8472\).
# Alunos matriculados apenas no segundo semestre
alunos_so_2 = alunos_2 %>% 
  filter(., !(alunos_2$matricula %in% alunos_em_comum)) %>% arrange(., nome)

nrow(alunos_so_2)
## [1] 1659
FTE_2 = (alunos_so_2$carga_horaria_total/(2*N*H))
FTE_2 = ifelse(FTE_2 > 1, 1, FTE_2)

sum(FTE_2)
## [1] 648.8472
Finalmente, a estimativa do total de estudantes equivalentes a um estudante em tempo integral, considerando a carga horária de 720 horas/ano, é resultante da soma dos três grupos:
# Finalmente, o número de FULL TIME STUDENTS é
sum(FTE_1) + sum(FTE_2) + sum(FTE_12) 
## [1] 5578.361

Este número corresponde aproximadamente a \(5578.361/7400 = 75.3\%\) da contagem média de alunos nos dois semestres de 2017. Pela metodologia do TCU, o número de Alunos de Graduação em Tempo Integral (AGTI) na Ufersa é de \(6956\), segundo o relatório de gestão 2017, Anexo 1.