causal-learn icon indicating copy to clipboard operation
causal-learn copied to clipboard

Mixed data example

Open sailinz opened this issue 2 years ago • 7 comments

May I know if there are any examples of causal-learn usage on mixed data (categorical and continuous/ordinal)? This is supported in tetrad. Many thanks!

sailinz avatar Jun 03 '22 08:06 sailinz

Hi @sailinz-- as you probably know we have two methods in Java Tetrad for the mixed discrete/Gaussian case:

(1) Conditional Gaussian

(2) Degenerate Gaussian

Here are the papers for them, respectively:

Andrews, B., Ramsey, J., & Cooper, G. F. (2018). Scoring Bayesian networks of mixed variables. International journal of data science and analytics, 6(1), 3-18.

Andrews, B., Ramsey, J., & Cooper, G. F. (2019, July). Learning high-dimensional directed acyclic graphs with mixed data-types. In The 2019 ACM SIGKDD Workshop on Causal Discovery (pp. 4-21). PMLR.

Our colleague Bryan Andrews (first author on these papers) is a great Python programmer and has the degenerate Gaussian score (I think also test?) coded up in Python, which he is willing to contribute. If all goes well we'll have that in causal-learn in the near future. He doesn't have a Python version of conditional Gaussian, but perhaps we could code that up separately.

Anyway we'll start these conversations with the causal-learn programmers soon.

jdramsey avatar Jun 04 '22 01:06 jdramsey

Hi @jdramsey and @bja43, after discussed with Kun, we think this is really needed and a great feature we should support. I am wondering whether @bja43 can contribute your code to our causal-learn library to support mixed data? :)

tofuwen avatar Jul 05 '22 15:07 tofuwen

Hi, I sent Bryan's code to Yujia and Wei, but I neglected to cc you--maybe you can get it from them? They were going to adapt it to causal-learn. It's working code. Bryan is a bit overworked at the moment, as am I, unfortunately. :( It's the code for degenerate Gaussian.

jdramsey avatar Jul 05 '22 15:07 jdramsey

Also, I'm not sure precisely what your real-world name is :)

jdramsey avatar Jul 05 '22 15:07 jdramsey

Maybe you can send me an email :)

jdramsey avatar Jul 05 '22 15:07 jdramsey

haha, thanks @jdramsey ! :)

I am Yewen Fan :)

tofuwen avatar Jul 05 '22 16:07 tofuwen

Related to: https://github.com/py-why/causal-learn/issues/139 and I would also mention this paper:

Raghu VK, Poon A, Benos PV. Evaluation of Causal Structure Learning Methods on Mixed Data Types. Proc Mach Learn Res. 2018 Aug;92:48-65. PMID: 31080946; PMCID: PMC6510516.

From: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6510516/

priamai avatar Oct 08 '23 11:10 priamai