Title: | Pathmox Approach Segmentation Tree Analysis |
---|---|
Description: | It provides an interesting solution for handling a high number of segmentation variables in partial least squares structural equation modeling. The package implements the "Pathmox" algorithm (Lamberti, Sanchez, and Aluja,(2016)<doi:10.1002/asmb.2168>) including the F-coefficient test (Lamberti, Sanchez, and Aluja,(2017)<doi:10.1002/asmb.2270>) to detect the path coefficients responsible for the identified differences). The package also allows running the hybrid multi-group approach (Lamberti (2021) <doi:10.1007/s11135-021-01096-9>). |
Authors: | Giuseppe Lamberti [aut, cre] |
Maintainer: | Giuseppe Lamberti <[email protected]> |
License: | GPL-3 |
Version: | 1.1 |
Built: | 2025-02-26 05:01:09 UTC |
Source: | https://github.com/cran/genpathmox |
"bar_impvar"
returns a bar plot to visualize the ranking
of variables by importance in obtaining the terminal nodes of Pathmox.
bar_impvar(x, .cex.names = 1, .cex.axis = 1.2, .cex.main = 1, ...)
bar_impvar(x, .cex.names = 1, .cex.axis = 1.2, .cex.main = 1, ...)
x |
An object of the class |
.cex.names |
Expansion factor for axis names (bar labels) |
.cex.axis |
Expansion factor for numeric axis labels |
.cex.main |
Allows fixing the size of the main. Equal to 1 to default |
... |
Further arguments are ignored |
The importance of each variable is determined by adding the F-statistic calculated for the variable in each split node of Pathmox.
Giuseppe Lamberti
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
summary.plstree
, print.plstree
, pls.pathmox
,
bar_terminal
, and plot.plstree
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform age and education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) bar_impvar(csi.pathmox) ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform age and education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) bar_impvar(csi.pathmox) ## End(Not run)
bar_terminal
returns the path coefficient bar plots of the Pathmox terminal
nodes.
bar_terminal( x, .LV, .bycoef = FALSE, .cex.names = 1, .cex.axis = 1.2, .cex.main = 1, ... )
bar_terminal( x, .LV, .bycoef = FALSE, .cex.names = 1, .cex.axis = 1.2, .cex.main = 1, ... )
x |
An object of the class |
.LV |
A string indicating the name of the dependent latent variable. The label must be the same as used to define the structural model in the (lavaan syntax). |
.bycoef |
Logical value indicating if the comparison is done by nodes or by path
coefficients. By default, |
.cex.names |
Expansion factor for axis names (bar labels). |
.cex.axis |
Expansion factor for numeric axis labels. |
.cex.main |
Allows fixing the size of the main. It is equal to 1 to default. |
... |
Further arguments are ignored. |
This function aims to visualize, using bar plots, the path coefficients of the dependnet latent construct associated with the terminal nodes. The user indicates the dependnet latent construct they want to visualize. This is done using the same label as used in the structural model definition (lavaan syntax). The comparison is done by analyzing the path coefficient values for each node, or the values estimated in each node for each path coefficient. In the former, the plot also returns the R^2. In the latter, the bar corresponding to the node with the highest path coefficient value shows in a different color. By default the comparison is done by analyzing the path coefficient values for each node.
Giuseppe Lamberti
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
summary.plstree
, print.plstree
, pls.pathmox
,
plot.plstree
, and bar_impvar
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the bar plot by comparing the nodes bar_terminal(csi.pathmox.age, .LV = "SAT") # Visualize the bar plot by comparing path coefficients bar_terminal(csi.pathmox.age, .LV = "SAT", .bycoef = TRUE) ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the bar plot by comparing the nodes bar_terminal(csi.pathmox.age, .LV = "SAT") # Visualize the bar plot by comparing path coefficients bar_terminal(csi.pathmox.age, .LV = "SAT", .bycoef = TRUE) ## End(Not run)
climate
climate
climate
climate data refers to the younger emplyees (<=30) of an international bank organizational study. It consists of 32 variables for 669 employees divided into 3 qualitative variables and 29 indicator (or manifest) variables. The 3 categorical variables, reflecting specific employee characteristics as potential observed sources of heterogeneity, gender, job level, and seniority. The 31 indicator (or manifest) variables were loyalty (3 indicators), satisfaction (6 indicators), and the 5 work climate constructs of empowerment (5 indicators), company reputation (3 indicators), pay (4 indicators), work conditions (3 indicators), leadership (5 indicators)
Latent variable description
Loyalty
: Employee commitment to the organization
Satisfaction
: Employee contentedness with their job and aspects such as kind of work, supervision, etc
Empowerment
: Employee perceptions of management vision (vertical or horizontal)
Reputation
: Employee perceptions of the company’s reputation
Leadership
: Employee perceptions of leadership practices such as feedback and appraisal
Pay
: Employee perceptions of pay and of its equity
Conditions
: Employee perceptions regarding the conditions in which they perform their work
Manifest variables description
Emp1
: Employee treatment as responsible
Emp2
: Teamwork is empowered
Emp3
: Autonomy is favored
Emp4
: Confidence in performed tasks
Emp5
: Creativity and initiative are endorsed
Imag1
: Organization’s reputation
Imag2
: Organization’s values
Imag3
: Organization’s customer relationships
Pay1
: Salary
Pay2
: Social benefits
Pay3
: My salary corresponds to my duties
Pay4
: My salary corresponds to my effort
Work1
: Enough personnel in the office
Work2
: Enough time to perform the tasks
Work3
: Conditions and tools for work
Lead1
: Agenda and planning
Lead2
: Receptiveness
Lead3
: Encouraging
Lead4
: Communication
Lead5
: Celebrating success
Sat1
: Overall rating of satisfaction
Sat2
: Tasks in accordance with capabilities
Sat3
: Possibility to know efficiency
Sat4
: Possibility to learn new things
Sat5
: Usefulness of performed job
Sat6
: Fulfilment of expectations
Loy1
: I am unwilling to leave in case of not finding alternative
Loy2
: I am committed to the institution
Loy3
: I trust in the proper direction of the management
Segmentation variables description
Gender
: Gender of the employees, a factor with levels: male
and female
Level
: Level of the employees, a factor with levels: low
, medium
, and high
Seniority
: Time working in the bank, a factor with levels: <5y
and 15-5y
Lamberti, G., Aluja Banet, T., & Rialp Criado, J. (2020). Work climate drivers and employee heterogeneity. The International Journal of Human Resource Management, 1-33. doi: 10.1080/09585192.2020.1711798.
Lamberti, G. (2021). Hybrid multigroup partial least squares structural equation modelling: an application to bank employee satisfaction and loyalty. Quality and Quantity, doi: 10.1007/s11135-021-01096-9.
csibank
csibank
csibank
csibank data refers to a 2008 marketing research study of a leading Spanish firm providing retail financial services. For confidentiality reasons, the complete details of the survey-based study will not be provided, only a description of the variables. The data include a total of 32 variables, measured for 1707 clients. The 32 variables are divided into two groups: a group formed of 27 indicator variables for the structural model, and a group formed of 5 categorical variables. Each block of indicators refers to a specific construct.
Latent variable description:
IMAG
: Includes variables such as reputation, trustworthiness, seriousness, solidness, and caring about customer's needs
EXPE
: Includes variables such as products and services provided, customer service, solution provision, and expectations for overall quality
QUAL
: Includes variables such as reliable products and services, range of products and services, personal advice, and overall perceived quality
VAL
: Includes variables such as beneficial services and products, valuable investments, quality relative to price, and price relative to quality
SAT
: Includes variables such as overall satisfaction rating, fulfillment of expectations, satisfaction relative to other banks, and performance relative to an ideal bank
LOY
: Includes variables such as likelihood of choosing the same bank again, likelihood of switching to another bank, intention to recommend the bank to friends, and feeling of loyalty
Manifest variables description:
imag1
: Bank's reputation
imag2
: Trustworthiness
imag3
: Bank's solidity
imag4
: Innovation and forward looking
imag5
: Bank's emphasis on public affairs
imag6
: Caring about the customer’s needs
expe1
: Providing products and services to meet the customer's needs
expe2
: Providing customer service
expe3
: Providing solutions to daily banking needs
expe4
: Expectations of overall quality
qual1
: Reliable products and services
qual2
: Range of products and services
qual3
: Degree to which customer feels well informed
qual4
: Personal advice
qual5
: Customer service
qual6
: Overall rating of perceived quality
qual7
: Overall rating of satisfaction
val1
: Beneficial services and products
val2
: Valuable investments
val3
: Quality relative to price
val4
: Price relative to quality
sat1
: Overall rating of satisfaction
sat2
: Fulfillment of expectations
sat3
: Rating the performance relative to customer's ideal bank
loy1
: Propensity to choose the same bank if the customer had to choose again
loy2
: Propensity to switch to other banks if they offered better terms
loy3
: Customer's intention to recommend the bank to friends or colleagues
Categorical variables description:
Gender
: Gender of the customers, a factor with levels: Female
and Male
Age
: Age of the customers, a factor with levels: <=25
, 26-35
, 36-45
, 46-55
, 56-65
, and >=66
Education
: Education of the customers, a factor with levels: Elementary
, Graduated
, Highschool
, Undergrad
, and Unfinished
Occupation
: Occupation of the customers, a factor with levels: Manager
, MediumEmplo
, Notemploy
, OwnFreelan
, and Retired
Region
: Region of residence of the customers, a factor with levels: Center
, East
, North
Laboratory of Information Analysis and Modeling (LIAM). Facultat de Informatica de Barcelona, Universitat Politecnica de Catalunya.
Lamberti, G. et al. (2017). The Pathmox approach for PLS path modeling: discovering which constructs differentiate segments.Applied Stochastic Models in Business and Industry, doi: 10.1002/asmb.2270.
Lamberti, G. (2014) Modeling with Heterogeneity. PhD Dissertation.
footdata
footdata
footdata
footdata data refers to a marketing research study from 2018 concerning the experience of watching a football match in the stadium of a top Spanish football club. For confidentiality reasons, the complete details of the survey-based study will not be provided. Only the description of the variables is given. The data consist of a total of 20 variables, measured for 362 spectators. The 20 variables are divided into two groups. One group is formed of 15 indicator variables for the structural model, and the other group is formed of 5 categorical variables. Each block of indicator refers to a specific construct.
Latent variable description
QUA
: Spectators’ perception of service performance, based on evaluations of service dimensions
IMA
: Spectators’ perception of the attributes, players, management and condition of the club
SAT
: Spectators’ evaluation of the perceived benefits of attending a match
LOY
: Spectators’ deeply held commitment to repeat and recommend assisting a match
Manifest variables description
QUA1
: Tickets (availability, information, and staff attitudes)
QUA2
: Accessibility (accessibility, signposting, queue safety, and admission organization)
QUA3
: Facilities (shops, restrooms, seating, restaurants)
QUA4
: Stadium (loudspeakers, appearance, staff competence, cleanliness, Security/safety)
IMA1
: It is a great club
IMA2
: It has a good team
IMA3
: It is an ambitious club
IMA4
: It is a heroic club
SAT1
: The stadium experience was satisfactory
SAT2
: The time spent at the stadium was worth it
SAT3
: The money spent at the stadium was worth it
SAT4
: The experience met all my expectations
SAT5
: Overall satisfaction
LOY1
: I would recommend the experience at this stadium
LOY2
: I intend to repeat the experience at this stadium
Categorical Variables description
gender
: Gender of the spectators, a factor with levels: FEMALE
and MALE
age
: Age of the spectators, a factor with levels <=30
, 31-45
, and >=46
tourist
: Whether the spectator was a tourist or not, a factor with levels: YES
or NO
companion
: Who Accompanying the spectator, a factor with levels: FRIENDS
, FAMILY
, and OTHERS
Involvement
: Degree of involvement, a factor with levels: FAN
, MEMBER
, and OTHERS
Universitat Autonoma of Barcelona . Business departament, Universitat Autonoma de Barcelona.
Lamberti, G., Rialp, J., and Simon, A. (2021). Antecedents of satisfaction and loyalty in different spectator tribes in a football context. International Journal of Sports Marketing and Sponsorship, doi: 10.1108/IJSMS-12-2020-0210;
The function plot.plstree
allows to drow PATHMOX tree
## S3 method for class 'plstree' plot( x, .root.col = "#CCFFFF", .node.col = "#99CCCC", .leaf.col = "#009999", .shadow.size = 0.003, .node.shadow = "#669999", .leaf.shadow = "#006666", .cex = 0.7, .seg.col = "#003333", .lwd = 1, .show.pval = TRUE, .pval.col = "#009999", .main = NULL, .cex.main = 1, ... )
## S3 method for class 'plstree' plot( x, .root.col = "#CCFFFF", .node.col = "#99CCCC", .leaf.col = "#009999", .shadow.size = 0.003, .node.shadow = "#669999", .leaf.shadow = "#006666", .cex = 0.7, .seg.col = "#003333", .lwd = 1, .show.pval = TRUE, .pval.col = "#009999", .main = NULL, .cex.main = 1, ... )
x |
An object of the class |
.root.col |
Fill color of root node. |
.node.col |
Fill color of child nodes. |
.leaf.col |
Fill color of leaf. |
.shadow.size |
Relative size of shadows. |
.node.shadow |
Color of shadow of child nodes. |
.leaf.shadow |
Color of shadow of leaf nodes. |
.cex |
A numerical value indicating the magnification to be used for plotting text. |
.seg.col |
The color to be used for the labels of the segmentation variables. |
.lwd |
The line width, a positive number, defaulting to 1. |
.show.pval |
Logical value indicating whether the p-values should be plotted. |
.pval.col |
The color to be used for the labels of the p-values. |
.main |
A main title for the plot. |
.cex.main |
The magnification to be used for the main title. |
... |
Further arguments passed on to |
Giuseppe Lamberti
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
summary.plstree
, print.plstree
, pls.pathmox
,
bar_terminal
, and bar_impvar
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform age and education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) Visualize the tree plot(csi.pathmox) ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the lavaan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform age and education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) Visualize the tree plot(csi.pathmox) ## End(Not run)
pls.pathmox
calculates a binary segmentation tree in the context
of partial least squares structural equation modeling (PLS-SEM) following the
PATHMOX algorithm. It detects heterogeneity
in PLS-SEM models when the segmentation variables (categorical
variables), external to the model, are available, and when the objective
of the research is exploratory. pls.pathmox
function returns the
most significant different models associated with the terminal nodes of the
tree. It also returns a ranking according to importance of the categorical
variables used in the split process. pls.pathmox
also enables
the hybrid multigroup analysis (Lamberti, 2021) to be run. In fact, the function
returns an object, .hybrid
, containing the datasets associated
with the terminal nodes prepared to be treated with the cSEM
package
(Rademaker and Schuberth, 2020). It thus enables the MICOM and MGA procedures to be run
(Hair et al., 2017; Henseler et al., 2016; Henseler et al., 2009).
pls.pathmox( .model, .data, .catvar, .scheme = "path", .consistent = TRUE, .alpha = 0.05, .deep = 2, .size = 0.1, .size_candidate = 50, .tree = TRUE )
pls.pathmox( .model, .data, .catvar, .scheme = "path", .consistent = TRUE, .alpha = 0.05, .deep = 2, .size = 0.1, .size_candidate = 50, .tree = TRUE )
.model |
A description of the user-specified model. The model is described using the lavaan syntax. Structural and measurement models are defined by enclosure between double quotes. The directional link between constructs is defined using the ("~") operator. On the left-hand side of the operator is the dependent construct and on the right-hand side are the explanatory constructs, separated by the ("+") operator. As for the outer model, constructs are defined by listing their corresponding MVs after the operator ("=~") if latent variable is modelled as a common factor, or the operator("<~") if latent variable is modelled as a composite. On the left-hand side of the operator, is the construct and on the right-hand side are the MVs separated by the ("+") operator. Variable labels cannot contain ("."). |
.data |
A matrix or dataframe containing the manifest variables. |
.catvar |
A single factor or set of factors organized as a dataframe containing the categorical variables used as sources of heterogeneity. |
.scheme |
A string indicating the type of inner weighting scheme. Possible
values are |
.consistent |
Logical. Should composite/proxy correlations be disattenuated to yield consistent loadings and path estimates if at least one of the construct is modeled as a common factor. Defaults to TRUE. |
.alpha |
A decimal value indicating the minimum threshold significance
for the partitioning algorithm. By default |
.deep |
An integer indicating the maximum tree depth. Must be an integer equal to or
greater than 1. By default |
.size |
A decimal value indicating the minimum admissible sample size for a node. It is equal to 0.10 by default meaning that the minimum sample size of the node is equal to the 10$ of the total number of observations. |
.size_candidate |
An integer indicating the minimum admissible sample size for a candidate
node. It is equal to |
.tree |
A string indicating if the tree plot must be shown. By default, it is equal to
|
pls.pathmox
uses the classical lavaan syntax to define inner and outer
models and mode. The user can choose to perform the analysis for a
single categorical variable or a set of factors. In the latter case, categorical
variables must be organized as a dataframe. Scheme is equal to path
by
default following other PLS-SEM softwares (SMART-PLS (Ringle at al., 2015),
cSEM R package (Rademaker and Schuberth, 2020)), but can be modified by the user to
"centroid"
or "factorial"
. Stops parameters (.alpha
(threshold
significance for the partitioning algorithm), .deep
(maximum tree depth),
and .size
(minimum admissible sample size for a node)) are fixed respectively to
.alpha
= 0.05, .deep
= 2, and .size
= 0.10 according to Lamberti et al. (2016).
However, again the user can modify these parameters according to the specific
objectives of the analysis. pls.pathmox
also defines a minimum
admissible size for a candidate node that restricts the search of the optimal split
to that partitions that produce nodes with an adequate number of observations.
This parameter (.size_candidate
) is fixed to 50 observations by default.
PLS-SEM model coefficients used in the split process are estimated by applying the
consistent PLS-SEM algorithm proposed by Dijkstra and Henseler (2015). However, the user can choose
to run the analysis by using the classical algorithm by setting to FASLE the paramenter
.consistent
. pls.pathmox
also returns an object containing the datasets associated with
the terminal nodes (object$hybrid
) prepared to be treated with the cSEM
package
(Rademaker and Schuberth, 2020). This means that, once the pathmox finalizes the search for
the most significant different groups associated with the most significant different PLS-SEM models,
the user can perform a detailed analysis for each group using the cSEM
package, or can
run the MICOM and MGA procedures (Hair et al. 2017; Henseler et al. 2016) on the terminal nodes.
An object of class "plstree"
. This is a list with the
following results:
MOX |
dataframe containing the results of the segmentation tree. |
terminal_paths |
dataframe containing PLS-SEM model terminal nodes (path coeff. & R^2). |
var_imp |
dataframe containing the categorical variable ranking by importance. |
Fg.r |
dataframe containing the results of the F-global test for each node partition. |
Fc.r |
list of dataframes containing the results of the F-coefficient test for each node. |
hybrid |
list of datasets associated with the terminal node prepared for MGA with cSEM R package. |
other |
Other parameters and results. |
Giuseppe Lamberti
Klesel, M., Schuberth, F., Niehaves, B., and Henseler, J. (2022). Multigroup analysis in information systems research using PLS-PM: A systematic investigation of approaches. ACM SIGMIS Database: the DATABASE for Advances in Information Systems, 53(3), 26-48. doi:10.1145/3551783.3551787
Hair, J. F., Risher, J. J., Sarstedt, M., and Ringle, C. M. (2019). When to use and how to report the results of PLS-SEM. European business review, 31(1), 2-24. doi:10.1108/EBR-11-2018-0203
Hair, J. F., Sarstedt, M., Ringle, C. M., and Gudergan, S. P. (2017). Advanced issues in partial least squares structural equation modeling. SAGE publications: Los Angeles
Henseler, J., Ringle, C. M., and Sarstedt, M. (2016). Testing measurement invariance of composites using partial least squares. International marketing review, 33(3), 405-431. doi:10.1108/IMR-09-2014-0304
Ringle, C. M., and Sinkovics, R. R. (2009). The use of partial least squares path modeling in international marketing. Advances in International Marketing, 20, 277-319. doi:10.1108/S1474-7979(2009)0000020014
Dijkstra, T. K., and Henseler, J. (2015). Consistent partial least squares path modeling. MIS quarterly, 39(2), 297-316. doi:10.25300/MISQ/2015/39.2.02
Lamberti, G. (2021). Hybrid multigroup partial least squares structural equation modelling: an application to bank employee satisfaction and loyalty. Quality and Quantity, doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2017). The Pathmox approach for PLS path modeling: Discovering which constructs differentiate segments. Applied Stochastic Models in Business and Industry, 33(6), 674-689. doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Rademaker, M. E., and Schuberth, F. (2020). cSEM: Composite-Based Structural Equation Modeling. Available at https://CRAN.R-project.org/package=cSEM.
Ringle, C.M., Wende, S. and Becker, J.M. (2015). SmartPLS 3. Boenningstedt: SmartPLS. Retrieved from https://www.smartpls.com.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
Sanchez, G., and Aluja, T. B. (2006). PATHMOX: A PLS-PM Segmentation Algorithm, in Proceedings of the IASC Symposium on Knowledge Extraction by Modelling, International Association for Statistical Computing Island of Capri, Italy 4-6 September.
print.plstree
, summary.plstree
,
bar_terminal
, bar_impvar
and plot.plstree
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # Load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas that define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables # in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform Age and Education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) # Visualize results by summary # summary(csi.pathmox) # Run pathmox on one single variable age = csibank[,2] #' # Transform Age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Run hybrid multigroup analysis (Lamberti, 2021) using # the cSEM package (Rademaker and Schuberth, 2020) # Install and load cSEM library # Install.packages("cSEM") # library(cSEM) # Run cSEM Model for Pathmox terminal nodes csilocalmodel = csem( .model = CSImodel, .data = csi.pathmox.age$hybrid) # Check invariance and run MGA analysis (Hair et al., 2019) testMICOM(csilocalmodel, .R = 60) to_compare <- " #' # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT " testMGD(csilocalmodel, .parameters_to_compare = to_compare, .R_bootstrap = 60,.approach_mgd = "Henseler") ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # Load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas that define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Identify the categorical variable to be used as input variables # in the split process CSIcatvar = csibank[,1:5] # Check if variables are well specified (they have to be factors # and/or ordered factors) str(CSIcatvar) # Transform Age and Education into ordered factors CSIcatvar$Age = factor(CSIcatvar$Age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) CSIcatvar$Education = factor(CSIcatvar$Education, levels = c("Unfinished","Elementary", "Highschool", "Undergrad", "Graduated"),ordered = T) # Run Pathmox analysis (Lamberti et al., 2016; 2017) csi.pathmox = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= CSIcatvar, .alpha = 0.05, .deep = 2 ) # Visualize results by summary # summary(csi.pathmox) # Run pathmox on one single variable age = csibank[,2] #' # Transform Age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Run hybrid multigroup analysis (Lamberti, 2021) using # the cSEM package (Rademaker and Schuberth, 2020) # Install and load cSEM library # Install.packages("cSEM") # library(cSEM) # Run cSEM Model for Pathmox terminal nodes csilocalmodel = csem( .model = CSImodel, .data = csi.pathmox.age$hybrid) # Check invariance and run MGA analysis (Hair et al., 2019) testMICOM(csilocalmodel, .R = 60) to_compare <- " #' # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT " testMGD(csilocalmodel, .parameters_to_compare = to_compare, .R_bootstrap = 60,.approach_mgd = "Henseler") ## End(Not run)
The function print.plstree
returns the pls.pathmox
results.
## S3 method for class 'plstree' print(x, ...)
## S3 method for class 'plstree' print(x, ...)
x |
An object of class |
... |
Further arguments are ignored. |
Giuseppe Lamberti
Lamberti, G. (2021). Hybrid multigroup partial least squares structural equation modelling: an application to bank employee satisfaction and loyalty. Quality and Quantity, doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2017). The Pathmox approach for PLS path modeling: Discovering which constructs differentiate segments. Applied Stochastic Models in Business and Industry, 33(6), 674-689. doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
summary.plstree
, pls.pathmox
,
bar_terminal
, bar_impvar
and plot.plstree
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the Pathmox results print(csi.pathmox.age) ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # Common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the Pathmox results print(csi.pathmox.age) ## End(Not run)
The function summary.plstrees
returns the most important results obtained
by the function pls.pathmox
. In order, it provides the parameters of the algorithm
(threshold significance, node size limit, tree depth level and the method used for the
split partition), the basic characteristics of the tree (depth and number of terminal
nodes), the split results (F-global and F-coefficient). It also returns a ranking of the
categorical variables by importance and the terminal node results (path coefficients and R^2).
## S3 method for class 'plstree' summary(object, ...)
## S3 method for class 'plstree' summary(object, ...)
object |
An object of class |
... |
Further arguments are ignored. |
Giuseppe Lamberti
Lamberti, G. (2021). Hybrid multigroup partial least squares structural equation modelling: an application to bank employee satisfaction and loyalty. Quality and Quantity, doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2017). The Pathmox approach for PLS path modeling: Discovering which constructs differentiate segments. Applied Stochastic Models in Business and Industry, 33(6), 674-689. doi:10.1007/s11135-021-01096-9
Lamberti, G., Aluja, T. B., and Sanchez, G. (2016). The Pathmox approach for PLS path modeling segmentation. Applied Stochastic Models in Business and Industry, 32(4), 453-468. doi:10.1002/asmb.2168
Lamberti, G. (2015). Modeling with Heterogeneity, PhD Dissertation.
Sanchez, G. (2009). PATHMOX Approach: Segmentation Trees in Partial Least Squares Path Modeling, PhD Dissertation.
print.plstree
, pls.pathmox
,
bar_terminal
, bar_impvar
and plot.plstree
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the Pathmox results summary(csi.pathmox.age) ## End(Not run)
## Not run: # Example of PATHMOX approach in customer satisfaction analysis # (Spanish financial company). # Model with 5 LVs (4 common factor: Image (IMAG), Value (VAL), # Satisfaction (SAT), and Loyalty (LOY); and 1 composite construct: # Quality (QUAL) # load library and dataset csibank library(genpathmx) data("csibank") # Define the model using the laavan syntax. Use a set of regression formulas to define # first the structural model and then the measurement model CSImodel <- " # Structural model VAL ~ QUAL SAT ~ IMAG + QUAL + VAL LOY ~ IMAG + SAT # Measurement model # Composite QUAL <~ qual1 + qual2 + qual3 + qual4 + qual5 + qual6 + qual7 # common factor IMAG =~ imag1 + imag2 + imag3 + imag4 + imag5 + imag6 VAL =~ val1 + val2 + val3 + val4 SAT =~ sat1 + sat2 + sat3 LOY =~ loy1 + loy2 + loy3 " # Run pathmox on one single variable age = csibank[,2] # Transform age into an ordered factor age = factor(age, levels = c("<=25", "26-35", "36-45", "46-55", "56-65", ">=66"),ordered = T) csi.pathmox.age = pls.pathmox( .model = CSImodel , .data = csibank, .catvar= age, .alpha = 0.05, .deep = 1 ) # Visualize the Pathmox results summary(csi.pathmox.age) ## End(Not run)