• Nenhum resultado encontrado

Spatial spillovers and European Union regional innovation activities

No documento PRODUÇÃO DE CONHECIMENTO (páginas 154-162)

Hipótese 11: O número de patentes indústrias da região está positivamente relacionado com o número de EBTs.

27 Spatial spillovers and European Union regional innovation activities

Central European Journal of Operations Research (FURKOVÁ, 2019) Europa 2008-2012

Este artigo explora o papel dos spillovers espaciais nos processos de inovação regiões da União Européia (UE). Modelou-se o comportamento da atividade inovadora no nível regional com base em um modelo de produção regional ampliado de conhecimento. A produção de conhecimento parece ser afetada por repercussões espaciais devido a atividades inovadoras realizadas em outras áreas. As estatísticas globais de auto correlação espacial confirmaram a suposição de que o processo de inovação regional (representado por pedidos de patente) não é um processo espacialmente isolado, mas também é influenciado por atividades inovadoras nas regiões vizinhas.

O modelo econométrico espacial (duas versões) foi aplicado como a ferramenta de validação de hipóteses e indicou a relevância dos insumos internos de inovação (gastos em P&D e recursos humanos em ciência e tecnologia). Os modelos serão usados para quantificar e testar a significância estatística dos impactos diretos, indiretos e totais dos insumos inovadores selecionados.

28

Location determinants of green technological entry: evidence from European regions

Small Business

Economics (CORRADINI, 2019) Europa

1992- 2000

Achados mostram que a distribuição geográfica da entrada tecnológica verde nas regiões europeias não é distribuída uniformemente, oferecendo evidências de dependência do caminho espacial. De acordo com isso, encontrou-se evidências de um papel significativo desempenhado pelas características do sistema regional de inovação. Os novos inovadores ecológicos são mais propensos a desenvolver regiões definidas por níveis mais altos de atividade tecnológica subjacentes a transbordamentos de conhecimento e mais dinamismo na entrada tecnológica. Além disso, as descobertas apontam para uma relação U invertida entre relacionamento tecnológico regional e entrada tecnológica verde.

Usando um conjunto de dados de painel , conclusões apoiam fortemente a contribuição significativa do próprio conhecimento tecnológico e capital humano do estado na produção de novas invenções no nível estadual

Apêndice 2 – Scripts do R

Exemplo de Script usado na captura dos dados do MCTIC

#===============Script para coletar dados do MCTIC, gravar arquivos e gerar DF=============== options(stringsAsFactors = FALSE)

#INSTALANDO PACKAGES

install.packages("beepr") install.packages("rvest") install.packages("dplyr") install.packages("tm") install.packages("ROAuth") install.packages("httr") install.packages("wordcloud") install.packages("tm") inslall.packages("ggplot2") install.packages("SnowballC") install.packages("readxl")

install.packages("plyr") install.packages("ggplot2", dependencies = TRUE, repos = "http://cran.rstudio.com/") library(stringr) library(beepr) library(tm) library(rvest) library(dplyr) library(stringr) library(ROAuth) library(httr) library(wordcloud) library(tm) library(ggplot2) library(SnowballC) library(readxl) library(plyr) library(RCurl) library(read_html)

#definindo diretorio

setwd ("C:/Users/lecap/Documents/LETICIA/ARQUIVOS LETICIA backup/2 ACADEMICO/DOUTORADO/Tese/Arquivos") ########################################################################### ###

#ROTINA PARA RASPAR DADOS DO MCTIIC

url_base <- "http://www.mctic.gov.br/mctic/opencms/indicadores/indicadores_cti.html" pagina_base <- read_html(url_base)

links_categorias <- pagina_base %>%

html_nodes(xpath = "//div[@class = 'boxCategoria changeSize']/a") %>% html_attr(name = "href") %>% paste0("http://www.mctic.gov.br", .) t_links_tabelas <-data.frame() tt_links_tabelas <- data.frame() for(i in 1:length(links_categorias)){ print(paste("==================== Categoria",i)) link = links_categorias[i] pagina_categoria <- read_html(link) links_tabelas <- pagina_categoria %>%

html_nodes(xpath = "//td[@class = 'nomeArquivo pull-left']/a") %>% html_attr(name = "href") %>%

paste0("http://www.mctic.gov.br", .)

t_links_tabelas <- data.frame(links_tabelas)

tt_links_tabelas <- rbind(tt_links_tabelas, t_links_tabelas) for(link_tabela in links_tabelas){ pagina_tabela <- read_html(link_tabela) links_pag_tabela <- pagina_tabela %>% html_nodes(xpath = "//a") %>% html_attr(name = "href")

link_xls <- links_pag_tabela[grep(x = links_pag_tabela, pattern = "xls")] link_xls <- paste0("http://www.mctic.gov.br", link_xls)

nome_arquivo <- basename(link_xls) print(nome_arquivo)

#download.file(url = link_xls, destfile = nome_arquivo, mode = "wb") }

Scripts do Modelo I

#--- # installing/loading the package:

if(!require(installr)) {

install.packages("installr"); require(installr)} #load / install+load installr # using the package:

updateR() # this will start the updating process of your R installation. #It will check for newer versions, and if one is available,

#will guide you through the decisions you'd need to make.

#--- Pacotes --- if(!require(ggplot2)) {install.packages("ggplot2"); library(ggplot2)}

if(!require(gridExtra)) {install.packages("gridExtra"); library(gridExtra)} if(!require(lavaan)) {install.packages("lavaan"); library(lavaan)} if(!require(car)) {install.packages("car"); library(car)} if(!require(hnp)) {install.packages("hnp"); library(hnp)}

#--- Leitura do banco --- setwd("C:/Users/lecap/Documents/LETICIA/ARQUIVOS LETICIA backup/2 ACADEMICO/DOUTORADO/Tese") dados <- data.frame()

dadosMeso<-read.csv('EBTs MesoRegiao _10_11.csv',dec=',',encoding = 'UTF-8') #incluindo deflator e ou IPCA

deflator <- read.csv("Deflator.csv", header = TRUE, sep = ";", dec = ",") str(deflator)

df_dadosmeso <- data.frame(dadosMeso) deflator_ <- deflator[,-2]

deflator_ <- deflator_[,-4]

dadosMeso_IPCA <- merge(df_dadosmeso, deflator_, by="Ano", all = T) dadosMeso_IPCA1 <- cbind(dadosMeso_IPCA, dadosMeso_IPCA$PIB*(1-dadosMeso_IPCA$Deflator.do.pib/100), dadosMeso_IPCA$PIB*(1-dadosMeso_IPCA$IPCA/100)) dadosMeso_IPCA1 <- cbind(dadosMeso_IPCA, dadosMeso_IPCA$PIB*(1-dadosMeso_IPCA$IPCA/100)) names(dadosMeso_IPCA1)[14] = "PIBR" names(dadosMeso_IPCA1)[15] = "PIBIP" # Incluindo PIB real no dadosMeso dadosMeso$PIBR<-dadosMeso_IPCA1$PIBR dadosMeso <- dadosMeso_IPCA1 #renomeando dadosMeso <- dados names(dadosMeso)=names(dados) names(dadosMeso)[12] = "Deflator" names(dadosMeso)[13] = "IPCA" names(dadosMeso)[14] = "PIBR" names(dadosMeso)[15] = "PIBIP"

#Log EBT por Meso

ggplot(dadosMeso,aes(x=Meso,y=log(EBT)))+geom_boxplot()+theme_bw() #Log EBT por Ano

ggplot(dadosMeso,aes(x=Ano,y=log(EBT)))+geom_line()+theme_bw()+facet_grid(cols=vars(Meso)) # Patente ggplot(dadosMeso,aes(x=Pat,y=log(EBT)))+geom_point()+facet_grid(cols=vars(Meso))+ theme_bw() # Publicaçoes ggplot(dadosMeso,aes(x=Pub,y=log(EBT)))+geom_point()+facet_grid(cols=vars(Meso))+ theme_bw() # Pesquisadores ggplot(dadosMeso,aes(x=Pesq,y=log(EBT)))+geom_point()+facet_grid(cols=vars(Meso))+ theme_bw() # Discentes ggplot(dadosMeso,aes(x=Disc,y=log(EBT)))+geom_point()+facet_grid(cols=vars(Meso))+ theme_bw() # Bolsas ggplot(dadosMeso,aes(x=Bolsa,y=log(EBT)))+geom_point()+theme_bw() #PiB dadosMeso$PIBPer<-dadosMeso$PIB/dadosMeso$Pop ggplot(dadosMeso,aes(x=PIBPer,y=log(EBT)))+geom_point()+ theme_bw() #adicionando o PIB real

dadosMeso$PIBR_Per<-dadosMeso$PIBR/dadosMeso$Pop

ggplot(dadosMeso,aes(x=PIBR_Per,y=log(EBT)))+geom_point()+ theme_bw() dadosMeso$PIBR_IP<-dadosMeso$PIBIP/dadosMeso$Pop

ggplot(dadosMeso,aes(x=PIBIR_IP,y=log(EBT)))+geom_point()+ theme_bw() # Bolsas por pesquisadores

ggplot(dadosMeso,aes(x=Bolsa/Pesq,y=log(EBT)))+geom_point()+ theme_bw() # pesquisador por Discente

ggplot(dadosMeso,aes(x=Pesq/Disc,y=log(EBT)))+geom_point()+ theme_bw() # Patentes por publicações

ggplot(dadosMeso,aes(x=Pat/Pub,y=log(EBT)))+geom_point()+ theme_bw()

#--- Modelagem Poisson --- #Variável tempo

dadosMeso$Tempo<-dadosMeso$Ano-2000

# Modelo com todas as covariáveis

mod0<-glm(EBT~Meso+Pat+Pesq+Disc+Bolsa+Pub+PIBPer,dadosMeso,family = poisson) summary(mod0)

vif(mod0) #verifica a multicolineraridade

crPlots(mod0) # verifica a necessidade de alguma transformação nas covariáveis #com o PIB Real

modA<-glm(EBT~Meso+Pat+Pesq+Disc+Bolsa+Pub+PIBR_Per,dadosMeso,family = poisson) summary(modA)

vif(modA) #verifica a multicolineraridade

crPlots(modA) # verifica a necessidade de alguma transformação nas covariáveis #Melhor ajuste

mod1<-glm(EBT~Meso+I((Pat/Pub*100))+I((Bolsa/Pesq*10))+ I((Pesq/Disc*10)) +I(Tempo), dadosMeso,family = poisson)

summary(mod1) # tempo sem o PIB (deflacionado ou nao) é significativo vif(mod1)

crPlots(mod1) avPlots(mod1) hnp(mod1) mod1$deviance

phiest<-sum((fit$y-fit$fitted)^2/(fit$fitted))/fit$df.res

psfit <- glm(EBT~Meso+I((Pat/Pub*100))+I((Bolsa/Pesq*10))+I((Pesq/Disc*10)) +I(Tempo),

dadosMeso,weights = rep(1/phiest,length(fit$y)),family=poisson) #psfit é o modelo Poisson com ajuste de sobredispersão

#rsq.v(psfit) summary(psfit) library(rsq)

rsq.v(psfit,adj=TRUE) # Use o psudo-R2 ajustado hnp(psfit)

vif(psfit) psfit$deviance

############ Testando a autocorrelação temporal tct<-function(mod){ res=residuals(mod) par(mfrow=c(1,3)) ts.plot(res) acf(res) pacf(res) a<-list(shapiro.test(res),Box.test(res,lag=1),

Box.test(res,lag=1), Box.test(res,lag=2), Box.test(res,lag=3), Box.test(res,lag=4), Box.test(res,lag=5), Box.test(res,lag=8), Box.test(res,lag=13), Box.test(res,lag=16), Box.test(res,lag=18)) print(a)

par(mfrow=c(1,1)) }

tct(psfit) # resíduos não correlacionados com o tempo ### Teste de correlação espacial

library(readr) library(spdep) matriz<-matrix(0,nrow = 88,ncol=88) dadosMeso$MesoNum<-dadosMeso$Meso levels(dadosMeso$MesoNum)<-1:6 matriz<-matrix(0,nrow = 88,ncol=88) for(i in 1:88){ for(j in 1:88){ matriz[i,j]=paste(dadosMeso$MesoNum[i],dadosMeso$MesoNum[j],sep='') if(any(matriz[i,j]==c('11','22','33','44','55','66','12','14','16','21','26', '31','33','41','45','46','54','61','62','64','66'))){ matriz[i,j]=1 } else{matriz[i,j]=0} } } dadosMeso$Res<-mod1.1$residuals dadosMeso$Res<-mod1$residuals mod1 list<-mat2listw(matriz) moran.test(dadosMeso$Res, list,

Scripts do Modelo II

### =============================== ### Instalando e Carregando pacotes ### =============================== if(!require(dplyr)){install.packages("dplyr"); require(dplyr)}

if(!require(chemometrics)){ install.packages("chemometrics"); require(chemometrics) } if(!require(Hmisc)){ install.packages("Hmisc"); require(Hmisc) }

if(!require(plspm)){ install.packages("plspm"); require(plspm) } if(!require(psych)){ install.packages("psych"); require(psych) } if(!require(psy)){ install.packages("psy"); require(psy) }

if(!require(nFactors)){ install.packages("nFactors"); require(nFactors) } if(!require(corrplot)){ install.packages("corrplot"); require(corrplot) } if(!require(fmsb)){ install.packages("fmsb"); require(fmsb) } if(!require(lavaan)){ install.packages("lavaan"); require(lavaan) } ### ======= ### Funções ### ======= inv <- function(x){ y <- (max(x) + min(x)) - x y }

cont.na <- function(data, perc_na, inicio_aux, fim_aux){

data$ContNA <- apply(data[,c(inicio_aux:fim_aux)], 1, function(x) sum(is.na(x))) data$PercNA <- round((data$ContNA/length(inicio_aux:fim_aux))*100) data$Delete <- ifelse(data$PercNA > perc_na, 1, 0)

return(data) }

mean2 <- function(x) mean(x, na.rm=TRUE) fa1 <- function(x){

Mat<- cbind(principal(x,1, rotate="varimax")$loadings ,principal(x,1, rotate="varimax")$communality ,principal(x,1, rotate="varimax")$weights) Mat1<- Mat colnames(Mat1)<- c("C.F.","Com.","Peso") Mat1 } ### ===================== ### Leitura base de dados ### =====================

dados1 <- read.csv2("dt_ebt_final_S.csv",dec=",",sep=";") dados <- scale(dados1)

### Organizando data frame ### ====================== cordt<-cor(dados) dados_L <- dados names(dados_L)[2] <- "EBT" names(dados_L)[3] <- "DEFL" names(dados_L)[4] <- "xU5" #Bolsa names(dados_L)[5] <- "xU2" #Disc names(dados_L)[6] <- "xU1" #Pesq names(dados_L)[7] <- "xU3" #Pub names(dados_L)[8] <- "xU4" #Pat_U names(dados_L)[9] <- "xG2" #$ACTC MINAS names(dados_L)[10] <- "xG1" # $P&D MINAS

names(dados_L)[11] <- "CT_GMG" #$Ciencia e Tecnologia MINAS names(dados_L)[12] <- "Capes_G" #$bolsa Capes

names(dados_L)[13] <- "xG3" #$Gov. Federal para Minas names(dados_L)[14] <- "Fat_E" #Faturamento industria da Fiemg names(dados_L)[15] <- "xE5" # P&D industria com % do PIB names(dados_L)[16] <- "xE4" # Patentes industrias

names(dados_L)[17] <- "VA_E" #Valor adicionado bruto de Minas Gerais names(dados_L)[18] <- "xE1" #Valor adicionado bruto (Agro) de MG names(dados_L)[19] <- "xE2" #Valor adicionado bruto (ind) de MG names(dados_L)[20] <- "xE3" #Valor adicionado bruto (Serviços) de MG attach(dados_L)

### ===================== ### Contructo tese

### ===================== uni <- cbind(xU1, xU2, xU3, xU4, xU5) gov <- cbind(xG1, xG2, xG3) emp <- cbind(xE1, xE2, xE3, xE4, xE5) ebt <- EBT dt <- cbind(uni,gov,emp,ebt) ### ====================== ### Modelo Tese ### ====================== model_tese <-"

uni =~ xU1 + xU2 + xU3 + xU4 + xU5 gov =~ xG1 + xG2 + xG3

emp =~ xE1 + xE2 + xE3 + xE4 + xE5 ebt ~ uni + gov + emp"

### ====================== ####RESULTADOS

### ======================

fit_final <- sem(model_tese, data=dt, estimator="MLM")

Est_final <- parameterEstimates(fit_final, ci = FALSE, standardized = TRUE,rsq=TRUE) # Carga fatoria (coluna std.all), peso (coluna est)

Est_Aux_final <- Est_finalT %>% filter(op == "=~") Est_Aux_final %>% arrange(std.all)

# Coeficientes do modelo - FINAL

summary(fit_final, standardized=TRUE, rsq=T, fit.measures = TRUE) modindices(fit_finalT, minimum.value = 10, sort = TRUE)# o que significa isto fitMeasures(fit_finalT, c("chisq", "df", "cfi.scaled", "tli.scaled", "gfi", "rmsea.scaled", "rmsea.ci.lower.scaled", "rmsea.ci.upper.scaled"))

# Residuals: resid(fit_finalT) library(psych) library(dplyr)

# calculate cronbach's alpha... alpha(universidade) alpha(governo) alpha(empresa) # confiabilidade composta sl <- standardizedSolution(fit_finalT) sl <- sl$est.std[sl$op == "=~"] names(sl) <- names(dtF) re_U <- 1 - sl[1:5]^2

CC_U <- sum(sl[1:5])^2 / (sum(sl[1:5])^2 + sum(re_U)) re_G <- 1 - sl[6:8]^2

CC_G <- sum(sl[6:8])^2 / (sum(sl[6:8])^2 + sum(re_G)) re_E <- 1 - sl[9:13]^2

CC_E <- sum(sl[9:13])^2 / (sum(sl[9:13])^2 + sum(re_E)) #Desenhando o caminho do modelo

install.packages("lavaan.shiny") install.packages("slfm") library(lavaan.shiny) library(semPlot) library(slfm)

semPaths(fit_finalT, "std", title = TRUE) #melhor desing

semPaths(fit_finalT, "est", edge.label.cex = 0.9, node.label.cex=5, color = list(lat = rgb(245, 253, 118, maxColorValue = 255), man = rgb(155, 253, 175, maxColorValue = 255)), mar = c(3, 1, 3, 1), fade=FALSE)

No documento PRODUÇÃO DE CONHECIMENTO (páginas 154-162)