Title: | Network Structural Equation Modeling |
---|---|
Description: | The network structural equation modeling conducts a network statistical analysis on a data frame of coincident observations of multiple continuous variables [1]. It builds a pathway model by exploring a pool of domain knowledge guided candidate statistical relationships between each of the variable pairs, selecting the 'best fit' on the basis of a specific criteria such as adjusted r-squared value. This material is based upon work supported by the U.S. National Science Foundation Award EEC-2052776 and EEC-2052662 for the MDS-Rely IUCRC Center, under the NSF Solicitation: NSF 20-570 Industry-University Cooperative Research Centers Program [1] Bruckman, Laura S., Nicholas R. Wheeler, Junheng Ma, Ethan Wang, Carl K. Wang, Ivan Chou, Jiayang Sun, and Roger H. French. (2013) <doi:10.1109/ACCESS.2013.2267611>. |
Authors: | Wei-Heng Huang [aut] , Nicholas R. Wheeler [aut] , Addison G. Klinke [aut] , Yifan Xu [aut] , Wenyu Du [aut] , Amit K. Verma [aut] , Abdulkerim Gok [aut] , Devin A. Gordon [ctb] , Yu Wang [ctb] , Sameera Nalin Venkat [ctb] , HeinHtet Aung [ctb] , Yeajin Jo [ctb] , Xuanji Yu [ctb] , Kemal Ozdemirli [ctb], Jonathan Gordon [ctb] , Jayvic Cristian Jimenez [ctb] , Jiqi Liu [ctb] , Alan J. Curran [ctb] , Justin S. Fada [ctb] , Xuan Ma [ctb] , Jennifer L. Braid [ctb] , Jennifer L. W. Carter [ctb] , Laura S. Bruckman [aut, cre] , Roger H. French [aut, cph] |
Maintainer: | Laura S. Bruckman <[email protected]> |
License: | GPL (>= 2) |
Version: | 0.6.2 |
Built: | 2024-11-13 04:44:32 UTC |
Source: | https://github.com/cran/netSEM |
This data set is from a study of photodegradation of acrylic polymer. In this work, polymeric samples were exposed to different levels of light exposures and resulting optical changes were determined through optical spectroscopy. *IrradTot* (total applied irradiance) is the main exogenous variable and *YI* (yellowness index) is the endogenous variable (response). The other columns in the data set (*IAD1*, *IAD2*, *IAD2p*, and *IAD3*) are induced absorbance to dose values extracted from optical absorbance spectra as single metrics and used as intermediate unit level endogenous (response) variables in the netSEM analysis. Photodegradation in a stress and response framework: poly(methyl methacrylate) for solar mirrors and lens. Doi: 10.1117/1.JPE.2.022004
data(acrylic)
data(acrylic)
A 357 by 6 data frame of continuous variables
Yellowness index of acrylic sample
Total applied solar irradiance
Induced Absorbance to Dose of the Fundamental Absorption Edge - Optical absorbance at 275 nm
Induced Absorbance to Dose of the Tinuvin light stabilizer doublet peak at 298 nm
Induced Absorbance to Dose of the Tinuvin light stabilizer doublet peak at 339 nm
Induced Absorbance to Dose in the yellowing region, at 440 nm
Myles P. Murray, Laura S. Bruckman, Roger H. French
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
A backsheet is a mulit-layer polymer laminate used as the back surface of a crystalline silicon photovoltaic (PV) module that is designed to protect the inner components of the PV module. Typical backsheets consist of three layers of polymers to control diffusion of water and oxygen, as well as to protect human beings from electrical shock. It is critical that your PV module solar panel has a backsheet that is of high quality and can withstand various environmental elements for its 25 year expected product lifetime. Poly(ethylene-terephthalate) (PET) is an important material, and it mainly used as the core (middle) layer of a backsheets to provide mechanical stability and electrical isolation. It is sometimes also used as the outer, or air side, layer of a backsheet. However, Backsheets using PET air side layers are highly susceptible to moisture and ultraviolet (UV) irradiance. Degradation of PV module backsheets can cause severe safety issues and economic losses. Indoor accelerated exposures are used to study backsheets degradation using higher irradiance and shorter exposure times so as to predict the performance of backsheets exposed to the real world conditions.
data(backsheet)
data(backsheet)
A data frame with 110 rows and 5 variables:
Yellowness index of PET outer layer measured at every exposure step
Exposure time of PET in Damp Heat condition
Formation of conjugated structures in the polymer during oxidation (FTIR peak at 1552 cm-1)
Formation of acid and alcohol structures during hydrolysis (FTIR peak 2900 - 3300 cm-1)
Crystallinity calculated as the ratio of FTIR peak at 1340 cm-1 to 1370 cm-1
PV module backsheet degradation can be characterized by changes in the yellowness index (YI), which represents the color change of polymer and is associated with chemical change due to irradiance, high temperature and other process. The YI value of a PV backsheet also relates to the module efficiency. In addition, the Fourier-transform infrared spectroscopy (FTIR) is an effective method to study the chemical change of polymers. This non-destructive FTIR measurement enables researchers to obtain qualitative information about polymer functional groups and the relative contribution of each group in the sample to degradation.
In this example, a dataset containing the YI of PET based backsheets (PET/PET/EVA) exposed to 1,500 hours of Damp Heat with no irradiance and a relative humidity (RH) of 85% and a chamber temperature of 85 degree celsius. The PET samples were removed from the exposure chamber every 500 hours and the YI measurement was conducted at every time step. The stress variable is exposure time with unit of hours. Mechanistic variables from FTIR are included to track chemical changes in the materials related to polymer chain scission due to hydrolysis, crystallinity change and oxidation.
Yu Wang, Wei-heng Huang, Laura S. Bruckman, Roger H. French
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
A dataset containing the average normalized crack depth for photovoltaic backsheets with inner layers of either ethylene-vinyl acetate or polyethylene exposed to 4,000 hours of continuous UVA irradiance with an intensity of 1.55 w/m2 at 340 nm and a chamber temperature of 70 deg C. Mechanistic variables from Fourier transform infrared spectroscopy are included to track chemical changes in the materials related to cracking. See the journal article titled 'A Non-Destructive Method for Crack Quantification in Photovoltaic Backsheets Under Accelerated and Real-World Exposures' in Polymer Degradation and Stability for more details. Doi: 10.1016/j.polymdegradstab.2018.05.008
data(crack)
data(crack)
A data frame with 97 rows and 5 variables:
Average crack depth normalized by the backsheet's inner layer thickness
Integrated, cumulative photodose for all wavelengths less than 360 nm
Percent crystallinity calculated from the ratio of CH2 rocking peaks at 731 and 720 cm-1
Ketone carbonyl index calculated as the ratio of intensities at 1715 and 2851 cm-1
1st principal component score from the carbonyl region (1500-1800 cm-1)
Addison G. Klinke, Abdulkerim Gok, Laura S. Bruckman, Roger H. French
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
Generate multiple initial vectors for the nls function in netSEM().
genInit(bounds = list(a1 = c(-3, 3), a2 = c(-3, 3), a3 = c(-3, 3)), k = 50)
genInit(bounds = list(a1 = c(-3, 3), a2 = c(-3, 3), a3 = c(-3, 3)), k = 50)
bounds |
a list of three vectors of length = 2. Each vector gives the upper and lower limits of an interval from which the initial values are randomly generated. The default values list(a1 = c(-3, 3), a2 = c(-3, 3), a3 = c(-3, 3)) sets limits of all three initial values to be (-3, 3). |
k |
a positive integer (default = 50). The number of initial vectors to generate. |
Currently the non-linearizable function included in netSEM() is y = a + b * exp(c * x), where a, b and c are coefficients to be estimated. Thus an initial vector contains three values. The random initial values are generated by a uniform distribution between the bounds.
a data frame. Each column corresponds to a coefficient. Each row corresponds to a random initial vector.
genInit(list(a1 = c(0,2), a2 = c(4,5), a3 = c(-1, -0.5)), k = 20 )
genInit(list(a1 = c(0,2), a2 = c(4,5), a3 = c(-1, -0.5)), k = 20 )
The dataset contains current-voltage (I-V) curve scans and the I-V features data obtained by the I-V features extraction algorithm of the ddiv R package. These extracted I-V features are for the brand A photovoltaic (PV) modules exposed to damp heat indoor accelerated test conditions of 85 degrees C and 85 The measurement step-wise through time at 500 hour time intervals. The raw data is provided by the SunEdison company. The I-V features include max power (Pmp), short circuit current (Isc), current at max power(Imp), fill factor (FF), series resistance (Rs), shunt resistance (Rsh), open circuit voltage (Voc), and voltage at max power (Vmp). The shunt resistance (Rsh) is too noisy to use for netSEM modeling. After checking the correlation between Isc, Imp, Voc, Vmp, FF, Rs. FF, Rs, Vmp are highly correlated, so we randomly select one to be contained in the model. Here we choose Isc, Imp, Rs and Voc to be contained in the model and these four I-V features show no indication of high correlation. The trend of the I-V features are related to the mechanisms of PV degradation. The variable 'dy' is time that has been converted into decimal year in which 1 means 1 year. We would use this dataet to buit <S|M|R> models with time as the stressor, and four I-V features as tracking variables of the degradation mechanisms and max power as the reponse.
data(IVfeature)
data(IVfeature)
A data frame with 20 rows and 9 variables:
max power at the measurement step
the exposure time after been converted into decimal year
short circuit current
current at max power
series resistance
open circuit voltage
Jiqi Liu, Alan Curran, Justin S. Fada, Xuan Ma, Wei-Heng Huang, Jennifer L. Braid, Roger H. French
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
Functional graded materials (FGM) are a class of materials with engineered continuous compositional gradients through the plate thickness. This work applies the netSEM approach on an aluminum FGM, produced via sequential alloy casting using planar solidification, to quantify the < Processing | Microstructure | Performance > relationships. The material has a continuous gradient in zinc (Zn) and magnesium (Mg) concentrations through the plate thickness. This subsequently produces a gradient in strengthening mechanisms from a dominant precipitate-strengthened aluminum alloy (AA) (Zn-based AA-7055) to a dominant strain-hardenable aluminum alloy (Mg-based AA-5456). Therefore, the material is simultaneously strengthened via solid solution strengthening and precipitation strengthening.
data(metal)
data(metal)
A data frame with 72 rows and 6 variables:
Vickers hardness
the compositional gradient (z-direction)
the element Zinc
the element Magnesium
the alloy
Mg-excess
Amit K. Verma, Roger H. French, Jennifer L. W. Carter
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
This function carries out netSEM using principle 1
netSEMp1( x, exogenous = NULL, endogenous = NULL, nlsInits = data.frame(a1 = 1, a2 = 1, a3 = 1), str = FALSE )
netSEMp1( x, exogenous = NULL, endogenous = NULL, nlsInits = data.frame(a1 = 1, a2 = 1, a3 = 1), str = FALSE )
x |
A dataframe. By default it considers all columns as exogenous variables, except the first column which stores the system's endogenous variable. |
exogenous |
by defult it considers all columns as exogenous variables except column number 1, which is the main endogenous response. |
endogenous |
A character string of the column name of the main endogenous OR a numeric number indexing the column of the main endogenous. |
nlsInits |
a data frame of initial vectors for nls. Each column corresponds to a coefficient. The data frame can be generated by the genInit() function. Each row is one initial vector. Currently the only nls function included is y = a + b * exp(c * x). |
str |
A boolean, whether or not this is a 'strength' type problem |
netSEM builds a network model of multiple continuous variables using principle 1. Principle 1 determines the univariate relationships in the spirit of the Markovian process. In this case, the relationship between each pair of system variables, including predictors and the system level response is determined with the Markovian property that assumes the value of the current predictor is sufficient in relating to the next level variable, i.e., the relationship is independent of the specific value of the preceding-level variable to the current predictor, given the current value. Each pair of variables is tested for sensible (in the domain knowledge sense) paring relation chosen from 7 pre-selected common functional forms in linear regression settings. Adjusted R-squared is used for model selection for every pair.
P-values reported in the "res.print" field of the return list contains the P-values of estimators of linear regression coefficients. The P-values are ordered in the common order of coefficients, i.e. in the order of increasing exponents. For example, in the quadratic functional form y ~ b0 + b1x + b2x^2, the three P-values correspond two those of \hatb0, \hatb1 and \hatb2, respectively. If there are less than 3 coefficients to estimate, the extra P-value field is filled with NA's.
An object of class netSEM, which is a list of the following items:
"table": A matrix. For each row, first column is the endogenous variable, second column is the predictor, the other columns show corresponding summary information: Best functional form, R-squared, adj-R-squared, P-value1, P-value2 and P-value3. The P-values correspond to those of estimators of linear regression coefficients. See details.
"bestModels": A matrix. First dimension indicates predictors. The second dimension indicates endogenous variables. The i-jth cell of the matrix stores the name of the best functional form corresponding to the j-th endogenous variable regressed on the i-th predictor.
"allModels": A three dimensional list. The first dimension indicates predictors. The second dimension indicates endogenous variables. Third dimension indicates the fitting results of all 6 functional forms. The i-j-k-th cell of the list stores a "lm" object, corresponding to the j-th endogenous, i-th predictor and the k-th functional form.
The object has two added attributes:
"attr(res.best, "Step")": A vector. For each variable, it shows in which step it is choosen to be significantly related to endogenous variable.
"attr(res.best, "diag.Step")": A matrix. First dimension is predictors; second dimension is endogenous variables. Each cell shows in which step the pairwise relation is being fitted.
## Not run: ## Load the sample acrylic data set data(acrylic) ## Run netSEM ans <- netSEMp1(acrylic) ## End(Not run)
## Not run: ## Load the sample acrylic data set data(acrylic) ## Run netSEM ans <- netSEMp1(acrylic) ## End(Not run)
This function builds an netSEM model using principle 2.
netSEMp2( x, exogenous = NULL, endogenous = NULL, str = FALSE, criterion = "AIC" )
netSEMp2( x, exogenous = NULL, endogenous = NULL, str = FALSE, criterion = "AIC" )
x |
A dataframe. By default it considers all columns as exogenous variables, except the first column which stores the system endogenous variable. |
exogenous |
by default it consideres all columns as exogenous variables except column number 1, which is the main endogenous response. |
endogenous |
A character string of the column name of the main endogenous OR a numeric number indexing the column of the main endogenous. |
str |
A boolean, whether or not this is a 'strength' type problem. |
criterion |
By default uses AIC to identify best model. Alternative choice is BIC. |
Principle 2 resembles the multiple regression principle in the way multiple predictors are considered simultaneously. Specifically, the first-level predictors to the system level variable, such as, Time and unit level variables, acted on the system level variable collectively by an additive model. This collective additive model can be found with a generalized stepwise variable selection (using the stepAIC() function in R, which performs variable selection on the basis of AIC or BIC) and this proceeds iteratively.
Data is analysed first using Principle 1 to find the best models. If needed, transformations based on the best models are applied to the predictors. Starting from the system response variable, each variable is regressed on all other variables except for the system response in an additive multiple regression model, which is reduced by a stepwise selection using stepAIC(). Then, for each selected variable, fitted regression for 6 selected functional forms (8 if strength type problem) and pick the best.
A list of the following items:
"res.print": A matrix. For each row, first column is the endogenous variable, second column is the exogenous variable, the other columns show corresponding summary information.
## Not run: # Using AIC criterion data(acrylic) ans <- netSEMp2(acrylic, criterion = "AIC") # Using AIC criterion ans <- netSEMp2(acrylic, criterion = "BIC") # Using simulated data s <- runif(100,0,2) m3 <- 1+2.5*s+rnorm(100,0,0.5) m1 <- runif(100,1,4) m2 <- -1-m1+m3+rnorm(100,0,0.3) y <- 2+2*exp(m1/3)+(m2-1)^2-m3+rnorm(100,0,0.5) # Check the pairwise plot sim <- data.frame(cbind(y,s,m1,m2,m3)) pairs(sim) ans <- netSEMp2(sim) ## End(Not run)
## Not run: # Using AIC criterion data(acrylic) ans <- netSEMp2(acrylic, criterion = "AIC") # Using AIC criterion ans <- netSEMp2(acrylic, criterion = "BIC") # Using simulated data s <- runif(100,0,2) m3 <- 1+2.5*s+rnorm(100,0,0.5) m1 <- runif(100,1,4) m2 <- -1-m1+m3+rnorm(100,0,0.3) y <- 2+2*exp(m1/3)+(m2-1)^2-m3+rnorm(100,0,0.5) # Check the pairwise plot sim <- data.frame(cbind(y,s,m1,m2,m3)) pairs(sim) ans <- netSEMp2(sim) ## End(Not run)
Extract and display an equation of a pairwise path between two variables.
path(x, from, to, round = 3)
path(x, from, to, round = 3)
x |
object of class "netSEM", which is the return value of function |
from |
character string. Name of the predictor. |
to |
character string. Name of the endogenous variable. |
round |
a positive integer. The coefficients are rounded to this decimal place. |
Extract the "best" model from principle 1 between any two variables. The model name and the model equation are printed on screen. The model coefficients, as well as the model R object are also returned.
a list of the following items:
"model": the best fitted model.
"model.print": a character string of the model equation.
## Not run: ## Load the sample acrylic data set data(acrylic) # Run netSEM principle one ans <- netSEMp1(acrylic) # Extract relations between IrradTot and IAD2 cf <- path(ans, from = "IrradTot", to = "IAD2") print(cf) ## End(Not run)
## Not run: ## Load the sample acrylic data set data(acrylic) # Run netSEM principle one ans <- netSEMp1(acrylic) # Extract relations between IrradTot and IAD2 cf <- path(ans, from = "IrradTot", to = "IAD2") print(cf) ## End(Not run)
Predict response variable values along a pathway in principle 1.
pathwayPredict(x, path, newdata = NULL)
pathwayPredict(x, path, newdata = NULL)
x |
An object of class "netSEM", the returned list from |
path |
A string form for a pathway, the default output format from pathwayRMSE. |
newdata |
A data frame of the stress variable. The default is NULL. |
An object of class pathway, which is a list of the following items:
"pathway": A string form that shows the pathway.
"RMSE": A value of the root mean squared error.
"Resp": A matrix. The first column is the observed response values and the second is the predicted response values.
## Not run: # Load the sample acrylic data set data(acrylic) ans <- netSEMp1(acrylic) paths <- pathwayRMSE(ans,maxlen=3) response <- pathwayPredict(ans, paths[10,2]) response ## End(Not run)
## Not run: # Load the sample acrylic data set data(acrylic) ans <- netSEMp1(acrylic) paths <- pathwayRMSE(ans,maxlen=3) response <- pathwayPredict(ans, paths[10,2]) response ## End(Not run)
Summarize root mean square error (RMSE) for direct and indirect pathway from netSEMp1 result.
pathwayRMSE(x, maxlen = 2, ...)
pathwayRMSE(x, maxlen = 2, ...)
x |
An object of class "netSEM", the returned list from netSEMm(). |
maxlen |
The maximum length of chosen mechanism. |
... |
A S3 generic/method consistency. |
pathwayRMSE gives a summary about RMSE.
A data frame of result. A summary of RMSE results for all of pathways.
## Not run: data(acrylic) ans <- netSEMp1(acrylic) pathwayRMSE(ans,maxlen=2) ## End(Not run)
## Not run: data(acrylic) ans <- netSEMp1(acrylic) pathwayRMSE(ans,maxlen=2) ## End(Not run)
The data set is a study of photolysis and hydrolysis of poly(ethylene-terephthalate) films that contain an ultraviolet stabilizer additive. In this work, polymeric samples were exposed to UV light and moisture according to ASTM G-154 Cycle 4 standard accelerated weathering conditions. Resulting optical chemical changes were determined through optical and infrared (IR) spectroscopy. *Time* is the main exogenous variable and *YI* (yellowness index) is the endogenous variable (response). The other columns in the data set (*AbsEdge*, *UV.Stab.Bleaching*, *Crystallization*, and *ChainScission*) are values extracted from optical and IR absorbance spectra as single metrics and used as intermediate unit level endogenous (response) variables in the netSEM analysis.
data(pet)
data(pet)
A 37 by 6 data frame of continuous variables:
Yellowness index of PET film
Time exposed to ASTM G-154 Cycle 4 conditions
Fundamental Absorption Edge - Optical absorbance at 312 nm
Ultraviolet Stabilizer Bleaching - Optical absorbance at 340 nm
IR spectropscopy peak of relative crystallinity - IR absorbance at 975 wavenumber
IR carbonyl peak - IR absorbance at 1711 wavenumber
Devin A. Gordon, Wei-Heng Huang, Roger H. French, Laura S. Bruckman
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
Plot netSEMp1 result plot.netSEMp1 plots a network structural equation network model diagram, fitted under principle 1, based on best functional form for each selected pairwise variable.
## S3 method for class 'netSEMp1' plot( x, cutoff = c(0.2, 0.5, 0.8), latent = NULL, plot.save = FALSE, filename = NULL, style = TRUE, ... )
## S3 method for class 'netSEMp1' plot( x, cutoff = c(0.2, 0.5, 0.8), latent = NULL, plot.save = FALSE, filename = NULL, style = TRUE, ... )
x |
An object of class "netSEMp1", the returned list from |
cutoff |
A threshold value for adjusted R-squared. The maximum number of cutoff is 3. |
latent |
The latent variable that corresponds to the mechanic variable. The default is NULL. |
plot.save |
True/False, it saves the network diagram plot as a png file. The default is false. |
filename |
A character string naming a file to save as a png file. |
style |
True/False, it plots the first interval in the network diagram with dotted weak line. The default is True. |
... |
A S3 generic/method consistency. |
An html style plot of pairwise relationship pathway diagram between exogenous variables and an endogenous variable. Arrows show relationships between each variable with given statistical relations along the connection lines.
# Load acrylic data set data(acrylic) # Build a netSEM model ans <- netSEMp1(acrylic) # Plot the network model plot(ans,cutoff = c(0.3,0.6,0.8)) # Plot the network diagram with latent argument labels plot(ans, cutoff = c(0.3, 0.6, 0.8), latent = c('IAD1' = 'FundAbsEdge', 'IAD2' = 'UVStab', 'IAD2p' = 'UVStab', 'IAD3' = 'YelMet')) # Drop relationships lower than minimum cutoff value plot(ans, cutoff = c(0.3,0.6,0.8), style = FALSE) ## Not run: # Save plot plot(ans, cutoff = c(0.3, 0.6, 0.8), plot.save = TRUE, filename = 'acrylic-netSEMp1') ## End(Not run)
# Load acrylic data set data(acrylic) # Build a netSEM model ans <- netSEMp1(acrylic) # Plot the network model plot(ans,cutoff = c(0.3,0.6,0.8)) # Plot the network diagram with latent argument labels plot(ans, cutoff = c(0.3, 0.6, 0.8), latent = c('IAD1' = 'FundAbsEdge', 'IAD2' = 'UVStab', 'IAD2p' = 'UVStab', 'IAD3' = 'YelMet')) # Drop relationships lower than minimum cutoff value plot(ans, cutoff = c(0.3,0.6,0.8), style = FALSE) ## Not run: # Save plot plot(ans, cutoff = c(0.3, 0.6, 0.8), plot.save = TRUE, filename = 'acrylic-netSEMp1') ## End(Not run)
Plot netSEMp2 result plot.netSEMp2 plots a network structural equation model diagram, fitted under principle 2, based on best functional form for each selected pairwise variable.
## S3 method for class 'netSEMp2' plot( x, cutoff = c(0.3, 0.6, 0.8), latent = NULL, plot.save = FALSE, filename = NULL, style = TRUE, ... )
## S3 method for class 'netSEMp2' plot( x, cutoff = c(0.3, 0.6, 0.8), latent = NULL, plot.save = FALSE, filename = NULL, style = TRUE, ... )
x |
An object of class "netSEMp2", the returned list from |
cutoff |
A threshold value for adjusted R-squared. The maximum number of cutoff is 3. |
latent |
The latent variable that corresponds to the mechanic variable. The default is NULL. |
plot.save |
True/False, it saves the network diagram plot as png file. The default is false. |
filename |
A character string naming a file to save as a png file. |
style |
True/False, it plots the first interval in the network diagram with dotted weak line. The default is True. |
... |
A S3 generic/method consistency. |
An html style plot of multiple regression relationship pathway diagram between exogenous variables and an endogenous variable. Arrows show relationships between each variable with given statistical relations along the connection lines.
## Not run: # Load acrylic data set data(acrylic) # Build a netSEMp2 model ans2 <- netSEMp2(acrylic, criterion = "AIC") ans2_BIC <- netSEMp2(acrylic, criterion = "BIC") # Plot the network model plot(ans2, cutoff = c(0.3,0.6,0.8)) plot(ans2_BIC , cutoff = c(0.3,0.6,0.8)) # Drop Relationship lower than minimum cutoff plot(ans2, cutoff = c(0.3,0.6,0.8), style = FALSE) # plot network model with latent argument labels plot(ans2, cutoff = c(0.3, 0.6, 0.8), latent = c('IAD1' = 'FundAbsEdge', 'IAD2' = 'UVStab', 'IAD2p' = 'UVStab', 'IAD3' = 'YelMet')) # plot the network diagram and save file #plot(ans, cutoff = c(0.3,0.6,0.8), plot.save = TRUE, filename = "acrylic-netSEMp2")) ## End(Not run)
## Not run: # Load acrylic data set data(acrylic) # Build a netSEMp2 model ans2 <- netSEMp2(acrylic, criterion = "AIC") ans2_BIC <- netSEMp2(acrylic, criterion = "BIC") # Plot the network model plot(ans2, cutoff = c(0.3,0.6,0.8)) plot(ans2_BIC , cutoff = c(0.3,0.6,0.8)) # Drop Relationship lower than minimum cutoff plot(ans2, cutoff = c(0.3,0.6,0.8), style = FALSE) # plot network model with latent argument labels plot(ans2, cutoff = c(0.3, 0.6, 0.8), latent = c('IAD1' = 'FundAbsEdge', 'IAD2' = 'UVStab', 'IAD2p' = 'UVStab', 'IAD3' = 'YelMet')) # plot the network diagram and save file #plot(ans, cutoff = c(0.3,0.6,0.8), plot.save = TRUE, filename = "acrylic-netSEMp2")) ## End(Not run)
In this example, full size PV modules were exposed to damp heat conditions (relative humidity of 85% and a chamber temperature of 85 deg C) for 4000 hours and the degradation in PV power output was measured at specific time intervals, or time steps. In addition, some modules were withdrawn from the study at these time steps, to produce a retained sample library with samples available for each time step. These retained samples were dismantled destructively in order to determine the changes occurred in the module materials. In the resulting netSEM model, time was used as a proxy for damp heat exposure stress (S) variable and $P_max$ (maximum power generated by the modules) was used as the performance level response ($R$) variable, several mechanistic variables ($M$) were obtained through chemical evaluation methods, including FTIR and TGA on EVA encapsulant. This example also demonstrate how to add latent variables.
data(PVmodule)
data(PVmodule)
A 16 by 4 data frame of continuous variables
Maximum power generated by PV modules
Time in decimal years for exposure of PV modules to damp heat conditions
Infrared signal measurement that tracks hydrolysis of EVA encapsulant
Thermogravimetric analysis of PV module to track formation of acetic acid
Menghong Wang, Abdulkerim Gok, Roger H. French
Solar Durability and Lifetime Extension (SDLE) Research Center, Case Western Reserve University
summarize netSEMp1 result
## S3 method for class 'netSEMp1' summary(object, ...)
## S3 method for class 'netSEMp1' summary(object, ...)
object |
An object of class "netSEM", the returned list from netSEMp1(). |
... |
A S3 generic/method consistency. |
summary.netSEMp1 gives a summary about the netSEMp1 analysis.
NULL. A summary of data and fitting result is printed on screen.
data(acrylic) ans <- netSEMp1(acrylic) summary(ans)
data(acrylic) ans <- netSEMp1(acrylic) summary(ans)
summarize netSEM result
## S3 method for class 'netSEMp2' summary(object, ...)
## S3 method for class 'netSEMp2' summary(object, ...)
object |
An object of class "netSEMp2", the returned list from netSEMp2(). |
... |
A S3 generic/method consistency. |
summary.netSEMp2 gives a breif summary about the netSEM Principle 2 analysis.
NULL. A summary of data and fitting result is printed on screen.
data(acrylic) ans <- netSEMp2(acrylic) summary(ans)
data(acrylic) ans <- netSEMp2(acrylic) summary(ans)