Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request]: Exploratory Structural Equation Modeling (ESEM) #1866

Open
areeq1 opened this issue Oct 20, 2022 · 16 comments · May be fixed by jasp-stats/jaspSem#137
Open

[Feature Request]: Exploratory Structural Equation Modeling (ESEM) #1866

areeq1 opened this issue Oct 20, 2022 · 16 comments · May be fixed by jasp-stats/jaspSem#137

Comments

@areeq1
Copy link

areeq1 commented Oct 20, 2022

Description

ESEM could be included

Purpose

ESEM integrates the best of CFA and EFA in one analytical framework

Use-case

No response

Is your feature request related to a problem?

No

Describe the solution you would like

No response

Describe alternatives that you have considered

No response

Additional context

Thank you for the quick and positive reply!
If I may ask for an additional thing, we would love to see the application of Exploratory Structural Equation Modeling (ESEM). It is simply an EFA being executed through SEM.
See the two papers below

Marsh 2014 ESEM introduction.pdf

Asparouhov Muthén 2009 ESEM.pdf

There is already an R package that facilitates the method. We wonder if this package could be implemented into JASP. That will be FANTASTIC!

@Kucharssim
Copy link
Member

It seems to me that lavaan knows how to do this: https://lavaan.ugent.be/tutorial/efa.html

I just tried the example from the lavaan website in JASP and it does work: esem.zip

I am not familiar enough with this analysis, but it seems there are some additional options needed (like rotation) for better flexibility of the approach. I am not sure whether it makes sense to implement this as a stand-alone analysis with a custom GUI to specify the SEM and EFA parts of the model separately, or whether it's sufficient to just add more options to the SEM analysis. Any thoughts @JuliusPf, @LSLindeloo?

@areeq1
Copy link
Author

areeq1 commented Oct 20, 2022

Thank you for the quick answer, Kucharssim. I would like to provide my suggestion as a user. ESEM may be implemented in a sperate analysis. It could included in the EFA modul but users might not be aware of that possbility. But since ESEM takes EFA into the SEM domain, one can specifies regresson (same in the example you attached). In this way, it deseves a stand-alone analysis. The field is witnessing a booming application on ESEM. Just do a google scholar search to see how much is appreciated. JASP can be the leading software in implenting this analysis.
THANK YOU!!

For the moment, we will use the SEM syntax funtionality to run ESEM.

@juliuspfadt
Copy link
Contributor

From reading through the abstracts I also get the feeling this should be located in the SEM module with its own analysis. The issue I see with only adding extra options to the standard SEM is that some of these options only make sense when the specified syntax mirrors ESEM, for instance, rotations. In that case we would need to check the syntax before, or we would always throw an error... As its own analysis this is obviously way more work, even if most of the code from SEM can just be copied.

@areeq1
Copy link
Author

areeq1 commented Oct 21, 2022

Sorry for getting into this while being a user, not a developer. But I guess that the ESEM module can be very similar to the CFA module. So, the ESEM module could be created by duplicating the CFA and adding the ESEM options (rotations, and adding dependent variables).
I think this could be helpful to simplify the situation.

@LSLindeloo
Copy link

I agree with @JuliusPf and @areeq1 that a seperate analysis would be most appropriate. I am occupied with the power module at the moment, but after that I can start implementing ESEM!

@areeq1
Copy link
Author

areeq1 commented Nov 4, 2022

I'm sorry if this bothers you, but I have requested adding extra fit indices in the EFA (besides the current request of ESEM). So, is there an estimation of when the new version comes with this feature? Well, it would be better to have ESEM as well in the update, but at least we get more fit indices in the EFA.
Cheers!

@juliuspfadt
Copy link
Contributor

juliuspfadt commented Nov 7, 2022

The fit indices will be in the next release. When that will be is not certain yet, early next year probably. If you want to check out the fit indices in beta software, you can download the latest stable nightly https://static.jasp-stats.org/Nightlies/. This is beta software though, so be careful

@areeq1
Copy link
Author

areeq1 commented Nov 7, 2022

Great. Thanks!

@areeq1
Copy link
Author

areeq1 commented Nov 20, 2022

It seems to me that lavaan knows how to do this: https://lavaan.ugent.be/tutorial/efa.html

I just tried the example from the lavaan website in JASP and it does work: esem.zip

I am not familiar enough with this analysis, but it seems there are some additional options needed (like rotation) for better flexibility of the approach. I am not sure whether it makes sense to implement this as a stand-alone analysis with a custom GUI to specify the SEM and EFA parts of the model separately, or whether it's sufficient to just add more options to the SEM analysis. Any thoughts @JuliusPf, @LSLindeloo?

Hi Kucharssim, I would like to ask about something off the topic. How can we use the rotation in lavaan. Specifically, I'm interested in "target" rotation where we target some factor loadings to be as close as to a given value. Sorry if this is not the best avanue to ask this.

@Kucharssim
Copy link
Member

Dear @areeq1,

If you have a specific question about using lavaan in R, it's probably best to ask the package authors. See https://lavaan.ugent.be/support.html for ways how to contact them!

@areeq1
Copy link
Author

areeq1 commented Nov 22, 2022

Fair enough. For now please consider this error message when using SEM, although the analysis will run.
Screen Shot 2022-11-22 at 11 08 23 pm

@juliuspfadt
Copy link
Contributor

@areeq1, if possible, could you make a separate issue for this? So this feature request can stand on its own, and we also get a bug report for your issue?

@areeq1
Copy link
Author

areeq1 commented Dec 14, 2022

I would like to thank the team for continues development and look forward to see a "beta" of the ESEM in a night version soon :)
Thanks a lot in advance!

@areeq1
Copy link
Author

areeq1 commented Jan 2, 2023

Happy new year to the team. Looking forward to seeing ESEM implemented in JASP in 2023! 😊

@LSLindeloo LSLindeloo linked a pull request Jan 18, 2023 that will close this issue
@areeq1
Copy link
Author

areeq1 commented Jan 27, 2023

I still hope to see the analysis appears soon in JASP. Thanks in advance

@areeq1
Copy link
Author

areeq1 commented May 1, 2023

Hope that there is a progress on this matter :)

@tomtomme tomtomme assigned juliuspfadt and unassigned LSLindeloo Feb 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants