Análise Fatorial Exploratória em R

Publicados: 2017-02-16
Índice mostrar
O que é análise fatorial exploratória em R?
1. Os Dados
2. Importando WebData
3. Instalação do Pacote
4. Número de Fatores
Análise Fatorial
Teste de adequação
Nomeando os Fatores
Conclusão

O que é análise fatorial exploratória em R?

A Análise Fatorial Exploratória (EFA) ou mais ou menos conhecida como análise fatorial em R é uma técnica estatística que é usada para identificar a estrutura relacional latente entre um conjunto de variáveis ​​e reduzi-la a um número menor de variáveis. Isso significa essencialmente que a variância de um grande número de variáveis ​​pode ser descrita por algumas variáveis ​​resumidas, ou seja, fatores. Aqui está uma visão geral da análise fatorial exploratória em R.

Análise Fatorial Exploratória

Como o nome sugere, a EFA é de natureza exploratória – não conhecemos realmente as variáveis ​​latentes, e as etapas são repetidas até chegarmos a um número menor de fatores. Neste tutorial, veremos o EFA usando R. Agora, vamos primeiro obter a ideia básica do conjunto de dados.

1. Os Dados

Este conjunto de dados contém 90 respostas para 14 variáveis ​​diferentes que os clientes consideram ao comprar um carro. As perguntas da pesquisa foram estruturadas usando uma escala Likert de 5 pontos, sendo 1 muito baixo e 5 muito alto. As variaveis foram as seguintes:

  • Preço
  • Segurança
  • Aparência externa
  • Espaço e conforto
  • Tecnologia
  • Serviço pós-venda
  • Valor de revenda
  • Tipo de combustível
  • Eficiência do combustível
  • Cor
  • Manutenção
  • Passeio de teste
  • Revisão de produtos
  • Depoimentos

Clique aqui para baixar o conjunto de dados codificado.

2. Importando WebData

Agora vamos ler o conjunto de dados presente no formato CSV em R e armazená-lo como uma variável.

[code language=”r”] dados <- read.csv(file.choose( ),header=TRUE) [/code]

Abrirá uma janela para escolher o arquivo CSV e a opção `header` garantirá que a primeira linha do arquivo seja considerada o cabeçalho. Digite o seguinte para ver as primeiras linhas do quadro de dados e confirme se os dados foram armazenados corretamente.

[code language=”r”] head(data) [/code]

3. Instalação do Pacote

Agora vamos instalar os pacotes necessários para realizar uma análise mais aprofundada. Esses pacotes são `psych` e `GPArotation`. No código abaixo, estamos chamando `install.packages()` para instalação.

[code language=”r”] install.packages('psych') install.packages('GPArotation') [/code]

4. Número de Fatores

Em seguida, descobriremos o número de fatores que selecionaremos para a análise fatorial. Isso é avaliado através de métodos como `Análise Paralela` e `valor próprio`, etc.

Análise paralela

Estaremos usando a função `fa.parallel` do pacote `Psych` para executar a análise paralela. Aqui especificamos o data frame e o método do fator (`minres` no nosso caso). Execute o seguinte para encontrar um número aceitável de fatores e gerar o `scree plot`:

[code language=”r”] paralelo <- fa.parallel(data, fm = 'minres', fa = 'fa') [/code]

O console mostraria o número máximo de fatores que podemos considerar. Aqui está como ficaria.

“A análise paralela sugere que o número de fatores = 5 e o número de componentes = NA“

Dado abaixo no `scree plot` gerado a partir do código acima:

Scree Plot de Análise Paralela

A linha azul mostra os autovalores dos dados reais e as duas linhas vermelhas (colocadas uma em cima da outra) mostram os dados simulados e reamostrados. Aqui, observamos as grandes quedas nos dados reais e identificamos o ponto em que ele se nivela à direita. Além disso, localizamos o ponto de inflexão – o ponto em que a lacuna entre os dados simulados e os dados reais tende a ser mínima.

Olhando para este gráfico e análise paralela, em qualquer lugar entre 2 a 5 fatores seria uma boa escolha.

Análise Fatorial

Agora que chegamos a um número provável de fatores, vamos começar com 3 como o número de fatores. Para realizar a análise fatorial, usaremos a função `psych` packages`fa(). Abaixo estão os argumentos que forneceremos:

  • r – Dados brutos ou matriz de correlação ou covariância
  • nfactors – Número de fatores para extrair
  • girar – Embora existam vários tipos de rotações, `Varimax` e `Oblimin` são os mais populares
  • fm – Uma das técnicas de extração de fatores como `Mínimo Residual (OLS)`, `Maximum Liklihood`, `Principal Axis` etc.

Neste caso, selecionaremos a rotação oblíqua (rotate = “oblimin”), pois acreditamos que existe uma correlação nos fatores. Observe que a rotação Varimax é usada sob a suposição de que os fatores são completamente não correlacionados. Usaremos a fatoração `Mínimo Quadrado Ordinário/Minres` (fm = “minres”), pois é conhecido por fornecer resultados semelhantes a `Probabilidade Máxima` sem assumir uma distribuição normal multivariada e derivar soluções por meio de autodecomposição iterativa como um eixo principal.

Execute o seguinte para iniciar a análise.

[linguagem de código=”r”] três fatores <- fa(data,nfactors = 3, girar = “oblimin”,fm=”minres”) print(threefactor) [/code]

Aqui está a saída mostrando fatores e carregamentos:

três fatores

Agora precisamos considerar as cargas de mais de 0,3 e não carregar em mais de um fator. Observe que valores negativos são aceitáveis ​​aqui. Então, vamos primeiro estabelecer o corte para melhorar a visibilidade.

[code language=”r”] print(threefactor$loadings,cutoff = 0.3) [/code]

corte de três fatores

Como você pode ver, duas variáveis ​​se tornaram insignificantes e outras duas têm carregamento duplo. A seguir, consideraremos os '4' fatores.

[linguagem de código=”r”] fourfactor <- fa(data,nfactors = 4, girar = “oblimin”,fm=”minres”) print(fourfactor$loadings,cutoff = 0.3) [/code]

quatro fatores

Podemos ver que isso resulta em apenas um único carregamento. Isso é conhecido como estrutura simples.

Clique no seguinte para ver o mapeamento de fatores.

[code language=”r”] fa.diagram(fourfactor) [/code]

Teste de adequação

Agora que alcançamos uma estrutura simples, é hora de validarmos nosso modelo. Vejamos a saída da análise fatorial para prosseguir.

Adequação do Modelo de Análise Fatorial

A raiz significa que o quadrado dos resíduos (RMSR) é 0,05. Isso é aceitável, pois esse valor deve estar mais próximo de 0. Em seguida, devemos verificar o índice RMSEA (root mean square error of approximation). Seu valor, 0,001 mostra um bom ajuste do modelo, pois está abaixo de 0,05. Por fim, o Índice Tucker-Lewis (TLI) é 0,93 – um valor aceitável considerando que está acima de 0,9.

Nomeando os Fatores

Nomeando os fatores

Após estabelecer a adequação dos fatores, é hora de nomearmos os fatores. Este é o lado teórico da análise onde formamos os fatores dependendo das cargas variáveis. Neste caso, aqui está como os fatores podem ser criados.

Conclusão

Neste tutorial para análise em r, discutimos a ideia básica da EFA (análise fatorial exploratória em R), abordamos a análise paralela e a interpretação do scree plot. Em seguida, passamos para a análise fatorial em R para obter uma estrutura simples e validar a mesma para garantir a adequação do modelo. Finalmente chegou aos nomes dos fatores das variáveis. Agora vá em frente, experimente e poste suas descobertas na seção de comentários.