Network model trees

[This article was first published on Achim Zeileis, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

The effect of covariates on correlations in psychometric networks is assessed with either model-based recursive partitioning (MOB) or conditional inference trees (CTree).


Jones PJ, Mair P, Simon T, Zeileis A (2019). “Network Model Trees”, OSF ha4cw, OSF Preprints. doi:10.31219/


In many areas of psychology, correlation-based network approaches (i.e., psychometric networks) have become a popular tool. In this paper we define a statistical model for correlation-based networks and propose an approach that recursively splits the sample based on covariates in order to detect significant differences in the network structure. We adapt model-based recursive partitioning and conditional inference tree approaches for finding covariate splits in a recursive manner. This approach is implemented in the networktree R package. The empirical power of these approaches is studied in several simulation conditions. Examples are given using real-life data from personality and clinical research.


CRAN package:
OSF project:


Network model trees are illustrated using data from the Open Source Psychometrics Project:

  1. Ten Item Personality Inventory (TIPI), a brief inventory of the Big Five personality domains (extraversion, neuroticism, conscientiousness, agreeableness, and openness to experience). Each personality domain is assessed with two items with one item measured normally and the other in reverse.
  2. Depression Anxiety and Stress Scale (DASS), a self-report instrument for measuring depression, anxiety, and tension or stress.

The TIPI network is partitioned using MOB based on three covariates: engnat (English as native language), gender, and education. Generally, the structure of the network is characterized by strong negative relationships between the normal and reverse measurements of each domain with complex relationships between separate domains. When partitioning the network interesting differences are revealed. For example, native English speakers without a university degree showed a negative relationship between agreeableness and agreeableness-reversed that was significantly weakened in non-native speakers and in native speakers with a university degree. Among native English speakers with a university degree, males and other genders showed a stronger relationship between conscientiousness and neuroticism-reversed compared to females.

TIPI network tree

In the network plots edge thicknesses are determined by the strength of regularized partial correlations between nodes. Node labels correspond to the first letter of each Big Five personality domain, with the character “r” indicating items that measure the domain in reverse.

The DASS network is partitioned using MOB based on a larger variety of covariates in a highly exploratory scenario: engnat (Engligh as native language), gender, marital status, sexual orientation, and race. Again, the primary split occurred between native and non-native English speakers. Among native English speakers, two further splits were found with the race variable. Among the non-native English speakers, a split was found by gender. These results indicate various sources of potential heterogeneity in network structure. For example, among non-native speakers, the connection between worthlife (I felt that life wasn’t worthwhile) and nohope (I could see nothing in the future to be hopeful about) was stronger compared to females and other genders. In native English speaking Asians, the connection between getgoing (I just couldn’t seem to get going) and lookforward (I felt that I had nothing to look forward to) was stronger compared to all other racial groups.

DASS network tree

To leave a comment for the author, please follow the link and comment on their blog: Achim Zeileis. offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)