I have implemented a confirmatory factor analysis using the lavaan package in R. The code I wrote produces the following error:
Could someone kindly give me some help, please?
##PACKAGES
library(lavaan)
library(semTools)
library(semPlot)
library(readxl)
library(dplyr)
##DATASET
dataset_ita <- read_excel("dataset_ita.xlsx", col_types = "numeric")
dataset_eng <- read_excel("dataset_eng.xlsx", col_types = "numeric")
dataset <- rbind(dataset_ita, dataset_eng)
##CONFIRMATORY FACTOR ANALYSIS
model <- '
WinePurchaseBehaviour =~ X5+X6+X7+X8+X9+X10+X11
WineConsumptionBehaviour =~ X12+X13+X14+X15+X16+X17+X18+X19+X20+X21+X22+X23+X24+X25
WineClubInterest =~ X26+X27+X28+X29+X30+X31+X64+X65+X66+X67
WineInvolvement =~ WinePurchaseBehaviour+WineConsumptionBehaviour+WineClubInterest
GeneralInvolvement =~ X32+X33+X34+X35+X36+X37+X38+X39+X40
FeatureInvolvement =~ X44+X46+X47+X48+X49
RitualInvolvement =~ X41+X42+X43+X45+X50
AppExperience =~ X51+X52+X53+X54+X55+X56+X57+X58
SensoryExperience =~ X59+X60+X61+X62+X63
ProductInvolvement =~ GeneralInvolvement+FeatureInvolvement+AppExperience+SensoryExperience
Purchase =~ X68+X69+X70+X71+X72+X73
Purchase =~ WineInvolvement+ProductInvolvement'
analysis <- cfa(model, data = dataset, se = "robust.sem")
summary(analysis, fit.measures=TRUE)
I took a quick look at the data and it seems that RitualInvolvement
factor just doesn't work - it doesn't work on its own even. The FeatureInolvement
factor worked better using X47
as the coefficient set to 1, so use that first in the list. The model below, without estimating the RitualInvolvement
factor estimates and converges for me.
model <- '
WinePurchaseBehaviour =~ X5+X6+X7+X8+X9+X10+X11
WineConsumptionBehaviour =~ X12+X13+X14+X15+X16+X17+X18+X19+X20+X21+X22+X23+X24+X25
WineClubInterest =~ X26+X27+X28+X29+X30+X31+X64+X65+X66+X67
WineInvolvement =~ WinePurchaseBehaviour+WineConsumptionBehaviour+WineClubInterest
GeneralInvolvement =~ X32+X33+X34+X35+X36+X37+X38+X39+X40
FeatureInvolvement =~ X47+X46+X44+X48+X49
# RitualInvolvement =~ X41+X42+X43+X45+X50
AppExperience =~ X51+X52+X53+X54+X55+X56+X57+X58
SensoryExperience =~ X59+X60+X61+X62+X63
ProductInvolvement =~ GeneralInvolvement+FeatureInvolvement+AppExperience+SensoryExperience
Purchase =~ X68+X69+X70+X71+X72+X73
Purchase =~ WineInvolvement+ProductInvolvement'
analysis <- cfa(model, data = dataset, se = "robust.sem")