SAUDAÇÕES!

Seja bem vindo à página do professor Pedro Albuquerque. Para saber mais sobre meu currículo, disciplinas ministradas e interesses de pesquisa, navegue no menu disponível no topo da página.
Mostrando postagens com marcador Análise fatorial. Mostrar todas as postagens
Mostrando postagens com marcador Análise fatorial. Mostrar todas as postagens

quinta-feira, 15 de setembro de 2016

Equações Estruturais usando lavaan.shiny.


O pacote lavaan.shiny é uma ótima ferramenta para quem possui dificuldades com a programação em R, mas deseja fazer análises complexas envolvendo Equações Estruturais.

#Limpa o Workspace
rm(list=ls())
#Instalçao do pacote lavaan.shiny
install.packages("lavaan.shiny")
#Instalçao do pacote para gráficos
install.packages("DiagrammeR")
#Invoca a biblioteca
library(lavaan.shiny)
#Abre o shiny do lavaan
lavaan.shiny()

Após a execução desse código, o R apresenta uma tela mais amigável para o desenvolvimento dos modelos de Equações Estruturais, a seguir um exemplo de especificação do modelo:


O próprio lavaan.shiny já apresenta um exemplo pronto de um modelo de Análise Fatorial Confirmatória baseado no trabalho de Holzinger, K. J., & Swineford, F. (1939). A study in factor analysis: the stability of a bi-factor solution. Supplementary Educational Monographs.

Para realizar uma análise prática, o primeiro passo é a inserção do banco de dados de interesse. No final da página do lavaan.shiny você deve copiar e colocar os dados. Você pode fazer isso copiando e colando direto do Excel:


Ao continuar descendo na página há ainda outros resultados, como estatísticas descritivas, correlações, estimativas dos parâmetros e também o gráfico de caminhos:


O pacote lavaan.shiny é uma ótima opção para aqueles que desejam trabalhar com modelos como Análise Fatorial Confirmatória e Equações Estruturais sem a necessidade de programação.

A única programação necessária é a instalação do pacote e execução da função lavaan.shiny() todo o resto ocorre em um navegador na máquina do usuário.

sábado, 5 de maio de 2012

Análise Fatorial em marketing.

A análise fatorial é um método estatístico utilizado para descrever a variabilidade entre variáveis observadas e possivelmente correlacionadas em termos de um número potencialmente menor de variáveis ​​não observadas chamadas fatores.

Em outras palavras, é possível, por exemplo, que as variações de três ou quatro variáveis ​​observadas possam ser explicadas por somente um fator. Dessa forma a análise fatorial é útil em descrever um conjunto de dados utilizando para isso apenas alguns fatores. Em marketing, esses fatores podem estar associados à características do produto, clientes e até mesmo da organização.

Cuidados.
Como todo método estatístico a análise fatorial clássica exige que alguns pressupostos sejam satisfeitos, quais sejam:

  • Normalidade dos dados. Apesar desse pressuposto não ser crítico quando a estimação é realizada por mínimos quadrados ordinários, a exigência de normalidade auxilia na análise, evitando possíveis assimetrias e a presença de outliers.
  • Variáveis quantitativas medidas em escala Intervalar ou de Razão. Esse pressuposto é crítico, pois a análise deve ser realizada com variáveis quantitativas e, frequentemente, alguns estudos são realizados utilizando variáveis ordinais (as quais são qualitativas) na análise fatorial clássica (o que é errado de muitas maneiras). Para maiores detalhes consulte Jöreskog e Moustaki (2001) e Castilho (2011) - Estudo do perfil dos visitantes do zoológico de Brasília com análise fatorial: uma aplicação em marketing.

Outros pressupostos ainda podem ser exigidos dependendo do tipo de análise a ser realizada.

Cada software possui sua peculiaridade no processo de estimação dos fatores. No caso do R a análise fatorial é realizada por meio da função factanal.

Exemplo.
Como exemplo considere o seguinte banco de dados: USArrests. Este conjunto de dados contém informações sobre as prisões ocorridas nos EUA em 1973 para cada 100.000 habitantes. A proporção da população, quantidade de assaltos, assassinatos e estupros em cada um dos 50 estados dos EUA são registrados.

#Habilita o banco de dados USArrests
data(USArrests)

#Lista as variáveis presentes no banco
names(USArrests)

Nesse caso, temos quatro variáveis: "Murder", "Assault", "UrbanPop" e "Rape". A análise fatorial pode ser utilizada para reduzir esse conjunto de dados para uma dimensão menor ou igual a quantidade de variáveis disponíveis.

O primeiro passo é determinar quantos fatores devem ser utilizados. Uma abordagem bastante prática é a análise do ScreePlot. Nessa abordagem a escolha do número de fatores se dá no "cotovelo" do Screeplot (Catell, R.B. (1966)).

Essa metodologia foi criticada por Kaiser, H.F.(1970) devido a sua natureza subjetiva (ou seja, não há uma definição clara do objetivo que constitui uma queda substancial, nesse caso, descrita pelo "cotovelo" do Screeplot).

Apesar de polêmica, utilizaremos a abordagem do Screeplot nesse exemplo. Outros métodos de escolha do números de fatores podem ser obtidos nos textos Horn (1965), Humphreys e Ilgen (1969), Humphreys, Montanelli e Jr. (1975) e Ledesma e Valero-Mora (2007).

# Obtêm os autovalores observados 
#da matriz de correlações amostrais.
autovalores<- eigen(cor(USArrests))$values

#Obtêm o número de observações da base de dados.
nobservacoes <- nrow(USArrests) 

#Computa o número de variáveis.
variaveis<- length(autovalores) 

#Define o número de repetições para a estimação do número 
#de fatores por meio da análise paralela Horn (1965).
rep <- 100 

#Valor do centil para a análise fatorial.
cent <- 0.95 
A definição dos métodos para estimar o número de fatores é dado por:
#Análise paralela de Horn (1965) 
#para determinação do número de fatores.
ap <- parallel(subject=nobservacoes,var=variaveis,rep=rep,cent=cent)

#Número de fatores segundo diferentes regras
apAutovet <- ap$eigen
Os resultados são gerados e armazendados no objeto results:
#Guarda os resultados
results <- nScree(eig = autovalores,aparallel=apAutovet$qevpea) 
results

#Imprimi o Screeplot
plotnScree(results)
O método de análise gráfica do Screeplot indica a presença de um fator. Para proceder com a análise, utilizamos a função factanal. Como a estimação dos fatores pela função factanal é realizada por meio de máxima verossimilhança, o pressuposto de normalidade multivariada é exigido. Apesar dos métodos indicarem a presença de um fator, estimaremos dois fatores para apresentar como a análise gráfica pode ser utilizada nesses casos.
#Realiza a análise fatorial para dois fatores.
fit <- factanal(USArrests, 2, rotation="varimax")

#Imprimi os resultados
print(fit, digits=2, cutoff=.3, sort=TRUE)
Existem outros métodos de rotação possíveis para a análise fatorial, quais sejam: none", "varimax", "quatimax", "promax", "oblimin", "simplimax", ou "cluster". Detalhes sobre os tipos de rotações podem ser obtidos em Everitt e Hothorn (2011). Outra maneira de visualizar graficamente a análise fatorial é por meio do pacote FactoMineR:
#Mapa fatorial
library(FactoMineR)

#Gera os gráficos automaticamente
result <- PCA(USArrests) 
A função PCA do pacote FactoMineR forenece os gráficos para o mapa de fatores para as variáveis e para as observações.
O pacote FactoMineR oferece um grande número de funções adicionais para a análise fatorial exploratória. Isto inclui a utilização de variáveis ​​quantitativas e qualitativas, bem como a inclusão de variáveis ​​suplementares e observações. Além da análise fatorial exploratória (apresentada brevemente aqui) ainda existe a possibilidade da análise fatorial confirmatória cujo principal objetivo é testar se as medidas de um constructo são consistentes com a compreensão do investigador sobre a natureza do constructo (ou fator). A análise fatorial confirmatória é então utilizada para testar se os dados se encaixam no modelo de mensuração definido.