library(rattle)
library(caret)
library(rpart)
library(rpart.plot)
library(corrplot)
library(randomForest)
library(RColorBrewer)
library(dplyr)
library(plotly)
library(ggplot2)
library(tidyr)
library(magrittr)
library(plotrix)
library(rgl)
library(lubridate)
library(ggplot2)
library(GGally)
library(corrplot)
library(corrgram)
library(ppcor)
library(readr)
library(ggvis)
library(gganimate)
library(gifski)
library(av)
library(magick)
library(viridis)
library(hrbrthemes)
library(caret)
library(readxl)

setwd("~/Exploratory_Analisys")

IMI_e_IPT <- read_excel("IMI e IPT.xlsx")


Descricao <- read_excel("Programas PPG 2016.xlsx")

IMI_e_IPT<- IMI_e_IPT %>% 
  mutate_all(replace_na, 0)

Completo <- merge(IMI_e_IPT, Descricao, by.x="CD_PROGRAMA_IES", by.y="CD_PROGRAMA_IES", all.x = TRUE)

outliers <- boxplot(IMI_e_IPT$IPT, plot=FALSE)$out

Parana <- Completo %>%
        filter(SG_UF_PROGRAMA == "PR") %>%
        mutate(Programas = 1, Tecnologias = SPPP + SPPPr + SAPP, Patentes = SPPP, Produtos = SPPPr, Aplicativos = SAPP, Professores = QPPP, Conceito = CONCEITO)

Brasil <- Completo %>%
        mutate(Programas = n_distinct(CD_PROGRAMA_IES), Tecnologias = SPPP + SPPPr + SAPP, Patentes = SPPP, Produtos = SPPPr, Aplicativos = SAPP, Professores = QPPP, Conceito = CONCEITO)
        
names(Parana)
##  [1] "CD_PROGRAMA_IES"               "...1"                         
##  [3] "AREAAVALIACAO"                 "SGAREA"                       
##  [5] "STATUSJURIDICO"                "DEPENDENCIAADM"               
##  [7] "ANOINICIO"                     "MODALIDADE"                   
##  [9] "CONCEITO"                      "NM_REGIAO.x"                  
## [11] "UFPROGRAMA"                    "SGIES"                        
## [13] "NMPROGRAMA"                    "NMGRAU"                       
## [15] "FCDo"                          "FCDi"                         
## [17] "CC"                            "CP"                           
## [19] "IMI"                           "QPPP"                         
## [21] "SPPP"                          "SPPPr"                        
## [23] "SAPP"                          "IPT"                          
## [25] "AN_BASE"                       "NM_GRANDE_AREA_CONHECIMENTO"  
## [27] "NM_AREA_CONHECIMENTO"          "NM_SUBAREA_CONHECIMENTO"      
## [29] "NM_ESPECIALIDADE"              "CD_AREA_AVALIACAO"            
## [31] "NM_AREA_AVALIACAO"             "SG_ENTIDADE_ENSINO"           
## [33] "NM_ENTIDADE_ENSINO"            "CS_STATUS_JURIDICO"           
## [35] "DS_DEPENDENCIA_ADMINISTRATIVA" "DS_ORGANIZACAO_ACADEMICA"     
## [37] "NM_REGIAO.y"                   "NM_MUNICIPIO_PROGRAMA_IES"    
## [39] "NM_MODALIDADE_PROGRAMA"        "NM_PROGRAMA_IES"              
## [41] "NM_PROGRAMA_IDIOMA"            "SG_UF_PROGRAMA"               
## [43] "NM_GRAU_PROGRAMA"              "CD_CONCEITO_PROGRAMA"         
## [45] "ANO_INICIO_PROGRAMA"           "AN_INICIO_CURSO"              
## [47] "IN_REDE"                       "SG_ENTIDADE_ENSINO_REDE"      
## [49] "DS_SITUACAO_PROGRAMA"          "DT_SITUACAO_PROGRAMA"         
## [51] "ID_ADD_FOTO_PROGRAMA_IES"      "ID_ADD_FOTO_PROGRAMA"         
## [53] "DS_CLIENTELA_QUADRIENAL_2017"  "Programas"                    
## [55] "Tecnologias"                   "Patentes"                     
## [57] "Produtos"                      "Aplicativos"                  
## [59] "Professores"                   "Conceito"
dim(Parana)
## [1] 258  60

1 Exploração dos dados

1.1 Contexto Local

by_cidade <- Parana %>% 
  group_by(NM_MUNICIPIO_PROGRAMA_IES) %>% 
  summarise(Professores = sum(Professores),
            Programas = sum(Programas),
            Patentes = sum(Patentes), 
            Produtos = sum(Produtos), 
            Aplicativos = sum(Aplicativos), 
            Tecnologias = sum(Tecnologias)) 
           
  DT::datatable(by_cidade)
par(mfrow=c(2,2))
  
ggplot(Parana, aes(fill=STATUSJURIDICO, y=NM_MUNICIPIO_PROGRAMA_IES, x=Professores))+ theme(legend.position = "bottom")  + geom_bar(position="fill", stat="identity") + ggtitle("Professores por cidade e status jurídico")

  ggplot(Parana, aes(fill=STATUSJURIDICO, y=NM_MUNICIPIO_PROGRAMA_IES, x=Patentes)) + theme(legend.position = "bottom") + geom_bar(position="fill", stat="identity") + ggtitle("Patentes por cidade e status jurídico") 
## Warning: Removed 13 rows containing missing values (geom_bar).

ggplot(Parana, aes(fill=STATUSJURIDICO, y=NM_MUNICIPIO_PROGRAMA_IES, x=Produtos))  + theme(legend.position = "bottom") + geom_bar(position="fill", stat="identity") + ggtitle("Produtos por cidade e status jurídico") 
## Warning: Removed 25 rows containing missing values (geom_bar).

ggplot(Parana, aes(fill=STATUSJURIDICO, y=NM_MUNICIPIO_PROGRAMA_IES, x=Aplicativos)) + theme(legend.position = "bottom") + 
    geom_bar(position="fill", stat="identity") + ggtitle("Aplicativos por cidade e status jurídico") 
## Warning: Removed 16 rows containing missing values (geom_bar).

1.2 Análise multivariada

1.2.0.1 Árvore de decisão

Uma árvore de decisão é uma ferramenta de suporte à tomada de decisão que usa um gráfico no formato de árvore e demonstra visualmente as condições e as probabilidades para se chegar a resultados. O algoritmo utilizado para chegar na representação visual da árvore pertence ao grupo de aprendizado de máquina supervisionado, e funciona tanto para regressão quanto para classificação. Neste caso usaremos regressão para prever investimentos na área de inovação.

1.2.1 Ajuste do modelo

Professores Tecnologias predito_teste
70 1 2.694167
24 17 14.993347
16 0 2.750053
23 0 2.750053
28 2 2.694167
21 1 2.750053

1.2.2 Arvore do Parana

Na árvore é possível ver que a média de produção de tecnologias (produtos, patentes e aplicativos) por professor no Estado do Paraná é de 3.6.

Se o programa que o professor participa tem conceito igual a 3, 4 ou 5 a média de produção de tecnologias por professor fica em 3.3, em 96% dos dados. Se for um professor de programa com conceito 3, a média fica em 2.3, em 46% dos dados. Se for diferente do conceito 3, a média de produção fica em 4.1 em 50% dos dados. Dessas ainda, se a instituição for estadual ou particular, a media vai para 4.5 por professor, e se for federal cai para 2.6.

Curiosamente, nos programas com conceito 3, com quantidade de professores acima ou igual a 14, a produção de tecnologias diminui para 3.4 a média. Já em programas com menos de 14 professores, com conceito 3, a média de produção de tecnologias vai para 6.4, por professor. Neste caso ainda, se a instituição for estadual ou federal a média sobe ainda mais, para 11 contra 4 de programas em instituições particulares.

Os programas mais produtivos no Paraná são os que tem conceito 6 e 7, independente de ser estadual, federal ou particular. Nesses programas a média de produção de tecnologia por professor vai para 12, e isso somente ocorre em 4% dos dados.

arvore <- rpart(Patentes + Produtos + Aplicativos ~ Professores +  as.factor(CONCEITO) + as.factor(STATUSJURIDICO), data=Parana)

Parana$predito_Parana <- predict(arvore,newdata = Parana)

Parana %>% dplyr::select(Professores, Tecnologias, predito_Parana) %>% head() %>% knitr::kable()
Professores Tecnologias predito_Parana
70 1 3.423077
24 17 12.300000
16 0 2.330509
23 0 3.423077
28 2 3.423077
21 1 3.423077
plotcp(arvore)

rpart.plot(arvore)

1.3 Conclusões

Uma árvore de decisão é uma forma intuitiva de visualizar os dados, a qua permite aos gestores públicos observar em detalhes o funcionamento do sistema estadual de ciência, tecnologia e inovação.

Com esse recurso foi possível compreender que deve-se investir na qualidade dos programas de pós-graduação, para que eles alcancem o Conceito 6 ou 7 (última folha da árvore), pois essa faixa é a que mais produz tecnologias com potencial para inovação.

Também foi possível observar que deve-se começar o investimento a partir dos programas com conceito 3, de instituições estaduais e particulares, que possuem menos de 17 professores (terceira folha da árvore), pois este perfil de programa é o que possui a mais baixa média de produção de tecnologia por professor, somente 0.86.

Assim, a ciência de dados pode ajudar os gestores na criação de políticas públicas e direcionamento de recursos de forma precisa, tendo em vista alcançar mais desenvolvimento por meio da inovação, no Estado do Paraná.

2 Agradecimentos

Ao Instituto Stela, à UFSC, à CAPES e ao CNPq.

3 Referências

Checking normality for parametric tests in R https://www.sheffield.ac.uk/polopoly_fs/1.579191!/file/stcp-karadimitriou-normalR.pdf

Normality Test in R https://www.datanovia.com/en/lessons/normality-test-in-r/

Como realizar teste de normalidade no R ? https://rpubs.com/paternogbc/46768

Fazendo os testes de Kolmogorov-Smirnov e de Shapiro-Wilk para normalidade http://www.dpi.ufv.br/~peternelli/tutoriaisR/tutoriaisRempdf/tutorial.KS.SW.normalidade.11112004.pdf

BIOESTATÍSTICA USANDO R https://cran.r-project.org/doc/contrib/Beasley-BioestatisticaUsandoR.pdf

Delineamentos Experimentais https://smolski.github.io/livroavancado/analisf.html

Regression Models in R Multicollinearity in R https://datascienceplus.com/multicollinearity-in-r/

https://ibape-nacional.com.br/biblioteca/wp-content/uploads/2020/02/AO-27-Aplica%C3%A7%C3%A3o-do-Teste-de-Farrar-Glauber-para-An%C3%A1lise.pdf

Multicollinearity in R https://www.rpubs.com/dudubiologico/545528

Ajuste de Modelos Não Lineares http://www.leg.ufpr.br/~walmes/cursoR/mgest/3reg-nao-linear.html

Tutorial — Ajuste e Interpretação de Regressão Linear com R https://medium.com/data-hackers/tutorial-ajuste-e-interpreta%C3%A7%C3%A3o-de-regress%C3%A3o-linear-com-r-5b23c4ddb72

Atendimento de criterios de modelo linear https://rpubs.com/andrehofreire/LinearRegressionR

CURSO - Modelos de regressão não linear https://www.ime.unicamp.br/~cnaber/cursomodelosnaolinearesR.pdf

Aplicação de modelos de regressão linear e não linear em ciências agrárias http://www.leg.ufpr.br/~walmes/cursoR/cnpaf3/cnpaf02trailer.html

Recursos Computacionais Utilizando R http://www.dex.ufla.br/~danielff/meusarquivospdf/RRC0.pdf

Arvores https://www.dcc.fc.up.pt/~ltorgo/SebentaR/HTML/node26.html

Modelos Não Lineares e suas Aplicações https://www.ufjf.br/cursoestatistica/files/2014/04/Modelos-N%c3%a3o-Lineares-e-suas-Aplica%c3%a7%c3%b5es.pdf

Modeloagem - Aprendizado Estatístico http://material.curso-r.com/modelos/

Como treinar árvore de decisão em R https://pt.stackoverflow.com/questions/364044/como-treinar-uma-%C3%A1rvore-de-decis%C3%A3o-no-r

MODELOS DE REGRESSÃO- com apoio computacional https://www.ime.unicamp.br/~cnaber/Livro_MLG.pdf

MODELOS DE REGRESSÃO LINEARES PARA ESTIMATIVA DE PRODUTIVIDADE DA SOJA NO OESTE DO PARANÁ, UTILIZANDO DADOS ESPECTRAIS https://www.scielo.br/pdf/eagri/v30n3/14.pdf

Aplicação do Teste de Farrar-Glauber para Análise de Multicolinearidade Em Regressões Lineares https://ibape-nacional.com.br/biblioteca/wp-content/uploads/2020/02/AO-27-Aplica%C3%A7%C3%A3o-do-Teste-de-Farrar-Glauber-para-An%C3%A1lise.pdf

Regressão Logística: O método estatístico mais utilizado para modelar variáveis categóricas. https://matheusfacure.github.io/2017/02/25/regr-log/

Linear Regression http://rstudio-pubs-static.s3.amazonaws.com/428179_4d1959eb7bda4ed1b9ae5bb86004eae3.html

Regression http://www.mat.ufrgs.br/~giacomo/Softwares/R/Crawley/Crawley%20-%20The%20Book%20R/ch10.pdf

Regressão de Poisson https://smolski.github.io/livroavancado/regressao-de-poisson.html

Tutorial — Ajuste e Interpretação de Regressão Linear com R https://medium.com/data-hackers/tutorial-ajuste-e-interpreta%C3%A7%C3%A3o-de-regress%C3%A3o-linear-com-r-5b23c4ddb72

Estatística Prática para Docentes e Pós-Graduandos de Geraldo Maia Campos 11. Aditividade e homogeneidade http://www.forp.usp.br/restauradora/gmc/gmc_livro/gmc_livro_cap11.html

TESTES DE NORMALIDADE EM ANÁLISES ESTATÍSTICAS: UMA ORIENTAÇÃO PARA PRATICANTES EM CIÊNCIAS DA SAÚDE E ATIVIDADE FÍSICA file:///C:/Users/Jacob/Documents/R/6583-Texto%20do%20artigo-43438-1-10-20171008.pdf

regressão logística https://www.rpubs.com/dudubiologico/545528

O que é árvore de decisão (decision tree)? Exemplos em R https://www.wrprates.com/o-que-e-arvore-de-decisao-decision-tree-linguagem-r/

Teste para normalidade e homocedasticidade https://biostatistics-uem.github.io/Bio/aula8/teste_normalidade_homocedasticidade.html#:~:text=Em%20an%C3%A1lise%20de%20vari%C3%A2ncia(ANOVA,que%20a%20ANOVA%20tenha%20validade.