You are here

FIML Estimation

4 posts / 0 new
Last post
siti nur azizah's picture
Offline
Joined: 03/12/2014 - 13:01
FIML Estimation
AttachmentSize
Plain text icon kodingan DATA BARU YogyaPabar.txt4.8 KB

I want to ask you.
actually, I have a problem with my data. My new data is incomplete (missing data). I read on the web if no data is lost then using FIML function, but I am confused what to put where and what. I have tried but I always fail. please help me.
other than that, is there any basis we determine the value? I tried to try to change the value of 0.25-1 and outcome affect the output Standard error of estimate.
thank you.

mhunter's picture
Offline
Joined: 07/31/2009 - 15:26
Hi, To use FIML, simply

Hi,

To use FIML, simply create a model with raw data.

aModel <- mxModel(name="Example with FIML",
    mxData(aRawDataSet, type="raw"),
    # other paths, matrices, and algebras
)

Cheers,
Mike Hunter

siti nur azizah's picture
Offline
Joined: 03/12/2014 - 13:01
Great. Thank You for your

Great. Thank You for your answer. it's a helpful.

tbates's picture
Offline
Joined: 07/31/2009 - 14:25
example FIML model

OpenMx works well with missing data using FIML as you say.

All you need to do is include your raw data in the mxData() line, and use the FIML objective.
Here's an example:

data(myFADataRaw, package="OpenMx")
manifests = names(myFADataRaw)
myFADataRaw = myFADataRaw[, manifests]
latents   = c("G")
m1 <- mxModel("m1", type="RAM",
    manifestVars = manifests,
    latentVars   = latents,
    # Factor loadings
    mxPath(from = latents, to = manifests),
 
    # residuals and variances
    mxPath(from = manifests, arrows = 2), # manifest residuals 
    mxPath(from = latents, arrows = 2, free = F, values = 1), # latents fixed@1
    mxPath(from = c("x1", "x2"), to = "x3", arrows = 1), # manifest causes
    mxPath(from = "one", to = manifests, arrows = 1), # manifest means
    mxData(myFADataRaw, type = "raw")
)
m1 = umxRun(m1, setLabels = T, setStart = T)
umxSummary(m1)