Dear Anne, > -----Original Message----- > From: Anne Mimet [mailto:ami...@mnhn.fr] > Sent: August-26-10 7:45 AM > To: John Fox > Cc: r-help@r-project.org > Subject: RE: [R] SEM : Warning : Could not compute QR decomposition of > Hessian > > Dear John, > > Thank a lot for your answer. Indeed, i misunderstood the place of > indicator variables in the path diagram, i thank they were considered > as exogeneous variables. Thanks for your answer, i changed variances > of latente variables to NA, and remove indicator variables from > fixed.x argument. Unfortunately, it doesn't change the warning message. > I place the path diagram of the model here : http://yfrog.com/n7pathdiagj > > Because of the diagram complexity, i used some colors for the > different paths : > - green for environnental variable > - brown for landscape variables > - orange for municipalities variables > - blue for inter-municipalitie variables > - red for departemental variable > - grey for landuse variables > - and in dark the relations between indicator and latente variables, > errors, variances and covariances. > > There must be other mistakes in the model, i can't find them.
You haven't sent me your updated R code, so I'm just going by the path diagram, but, yes, I think that there are more problems. I assume that the circles represent error variables, which in the RAM formulation used by sem() would appear as self-directed double-headed arrows. If that's the case, why do observed exogenous variables like dist.protect have an error component? As well, if the absence of double-headed arrows between pairs of exogenous variables implies that they are uncorrelated, then your model has many such constraints. Did you really intend that? I'm also not convinced that the model is identified -- there are, I believe, just 6 exogenous variables -- but the (possibly inadvertent) constraints placed on error correlations may indentify it. Just to be clear, there is no guarantee that sem() will be able to estimate your model even if it is specified as you intend and even if it is identified. At this point, I'd make two suggestions: First, if you want to continue to try to use the sem package, and if you haven't already done so, I'd suggest that you read my 2006 article "Structural equation modeling with the sem package in R", Structural Equation Modeling, 13:465486, which is referenced in ?sem. Second, there are apparently sufficient problems here that you would do well to find someone to talk to about the formulation of your model. Regards, John > > Thanks again, > > Regards, > > Anne > > > > John Fox <j...@mcmaster.ca> a écrit : > > > Dear Anne, > > > > I started to diagram your model but stopped when I noticed some problems: > > (1) Some variables, such as pays_alti, are clearly endogenous, since they > > have arrows pointing to them, yet are declared as fixed exogenous > variables; > > that clearly doesn't make sense. (2) You've placed conflicting constraints > > on factor loadings and the variances of latent variables, for example > > setting both the path from the factor type_paysage to the indicator > > pays_alti and the variance of type_paysage to 1; again, that doesn't make > > sense. > > > > Do you have a path diagram for the model that you're trying to fit? It > would > > in particular be helpful to have a diagram of the structural part of the > > model. > > > > Regards, > > John > > > > -------------------------------- > > John Fox > > Senator William McMaster > > Professor of Social Statistics > > Department of Sociology > > McMaster University > > Hamilton, Ontario, Canada > > web: socserv.mcmaster.ca/jfox > > > > > >> -----Original Message----- > >> From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] > > On > >> Behalf Of Anne Mimet > >> Sent: August-25-10 10:27 AM > >> To: r-help@r-project.org > >> Subject: [R] SEM : Warning : Could not compute QR decomposition of Hessian > >> > >> Hi useRs, > >> > >> I'm trying for the first time to use a sem. The model finally runs, > >> but gives a warning saying : > >> "In sem.default(ram = ram, S = S, N = N, param.names = pars, var.names > >> = vars, : Could not compute QR decomposition of Hessian. > >> Optimization probably did not converge. " > >> > >> I found in R-help some posts on this warning, but my attemps to modify > >> the code didn't change the warning message (i tried to give an error > >> of 1 to the latente variables). I can't figure what the problem is. > >> Here is the code : > >> > >> > >> tab<-read.table("F:/Mes documents/stats/sem/donnees_corr.txt", > >> header=T, sep="",na.strings = "NA") > >> > >> tab[,46]<-as.factor(tab[,46]) > >> tab[,24]<-as.factor(tab[,24]) > >> tab[,40]<-as.factor(tab[,40]) > >> > >> fct_cor<-hetcor(tab, ML=T) > >> cor_tab<- fct_cor$correlations > >> > >> moment_tab<-read.moments(diag=F, names=c('c1','c2', 'c3','c4','c5', > >> 'c6','c7', 'c8', 'c9', 'ind_plando', 'long_sup15', 'long_inf15', > >> 'pente', 'est', 'sud','ouest', 'nord' ,'reg_hydriq', 'prof_sol', > >> 'pierro', 'efferv', 'struct','drainage','texture', 'route1_pond', > >> 'route2_pond', > >> 'pourcactif', 'tx_chomage', 'pourcagric', 'pourc_jeunes', 'pop99', > >> 'rev_imp_foyer','eq_CONC', 'eq_sante', 'eq_edu', 'sold_nat', > >> 'sold_mig', 'tps_dom_emp','TXEMPLOI','ORIECO','dist_paris','axe1', > >> 'axe2', 'axe3', 'dist_protect','urbanisation','pays_incli','pays_alti')) > >> # after comes the moment matrix (triangular) > >> > >> ram_tab<-specify.model() > >> type_paysage->pays_alti,NA,1 > >> type_paysage->pays_incli, pays2, NA > >> pedo->reg_hydriq, NA, 1 > >> pedo->prof_sol, ped8, NA > >> pedo->pierro, ped9, NA > >> pedo->efferv, ped10, NA > >> pedo->struct, ped11, NA > >> pedo->drainage, ped12, NA > >> pedo->texture, ped13, NA > >> adj_99->c1, NA,1 > >> adj_99->c2, adj2,NA > >> adj_99->c3, adj3,NA > >> adj_99->c4, adj4,NA > >> adj_99->c5, adj5,NA > >> adj_99->c6, adj6,NA > >> adj_99->c7, adj7,NA > >> adj_99->c8, adj8,NA > >> adj_99->c9, adj9,NA > >> etat_hexa->axe1, NA, 1 > >> etat_hexa->axe2, et2, NA > >> etat_hexa->axe3, et3, NA > >> socioBV->sold_mig, BV1, NA > >> socioBV->sold_nat, BV2, NA > >> socioBV->TXEMPLOI, BV3, NA > >> socioBV->ORIECO, BV4, NA > >> socioBV->tps_dom_emp, NA, 1 > >> eqBV->eq_CONC, NA, 1 > >> eqBV->eq_sante, eq2, NA > >> eqBV->eq_edu, eq3, NA > >> socio_com->pourcactif , NA, 1 > >> socio_com->tx_chomage, com2, NA > >> socio_com->pourcagric, com3, NA > >> socio_com->pourc_jeunes, com4, NA > >> socio_com->pop99, com5, NA > >> socio_com->rev_imp_foyer, com7, NA > >> access_hexa->route1_pond, NA, 1 > >> access_hexa->route2_pond, acc2, NA > >> hydro->ind_plando, NA, 1 > >> hydro->long_sup15, eau2, NA > >> hydro->long_inf15, eau3, NA > >> topog->pente, NA, 1 > >> topog->est, top2, NA > >> topog->sud, top3, NA > >> topog->nord, top4, NA > >> topog->ouest, top5, NA > >> dist_protect-> urbanisation, cor1,NA > >> dist_protect-> adj_99, cor2, NA > >> dist_protect-> etat_hexa, cor3, NA > >> topog-> urbanisation, cor4, NA > >> topog-> adj_99, cor5, NA > >> topog-> etat_hexa, cor6, NA > >> topog-> access_hexa, cor7, NA > >> topog<->hydro, cor8, NA > >> topog<->pedo, cor9, NA > >> pedo-> urbanisation, cor10, NA > >> pedo-> adj_99, cor11, NA > >> pedo-> etat_hexa, cor12, NA > >> pedo<->hydro, cor1, NA > >> hydro-> urbanisation, cor13, NA > >> hydro-> adj_99, cor14, NA > >> hydro-> etat_hexa, cor15, NA > >> access_hexa-> urbanisation, cor16, NA > >> access_hexa-> etat_hexa, cor17, NA > >> socio_com-> etat_hexa, cor18, NA > >> socio_com-> adj_99, cor19, NA > >> socio_com-> urbanisation, cor20, NA > >> dist_paris-> socio_com, cor21, NA > >> dist_paris-> access_hexa, cor22, NA > >> dist_paris-> adj_99, cor23, NA > >> dist_paris-> etat_hexa, cor24, NA > >> dist_paris-> urbanisation, cor25, NA > >> dist_paris-> socioBV, cor26, NA > >> socioBV-> eqBV, cor27, NA > >> socioBV-> urbanisation, cor28, NA > >> socioBV-> adj_99, cor29, NA > >> socioBV-> etat_hexa, cor30, NA > >> eqBV-> etat_hexa, cor31, NA > >> eqBV-> adj_99, cor32, NA > >> eqBV-> urbanisation, cor33, NA > >> etat_hexa-> urbanisation, cor34, NA > >> etat_hexa<-> adj_99, cor35, NA > >> adj_99-> urbanisation, cor36, NA > >> type_paysage-> urbanisation, cor37, NA > >> type_paysage-> adj_99, cor38, NA > >> type_paysage-> etat_hexa, cor39, NA > >> dist_paris<->dist_paris, auto1, NA > >> dist_protect<->dist_protect, auto2, NA > >> c1 <-> c1, auto4, NA > >> c2 <-> c2 , auto5, NA > >> c3 <-> c3 , auto6, NA > >> c4 <-> c4 , auto7, NA > >> c5 <-> c5 , auto8, NA > >> c6 <-> c6 , auto9, NA > >> c7 <-> c7 , auto10, NA > >> c8 <-> c8 , auto11, NA > >> c9 <-> c9 , auto12, NA > >> ind_plando <-> ind_plando, auto13, NA > >> long_sup15 <-> long_sup15 , auto14, NA > >> long_inf15 <-> long_inf15 , auto15, NA > >> pente <-> pente , auto16, NA > >> est<-> est , auto17, NA > >> sud <-> sud , auto18, NA > >> ouest<-> ouest , auto19, NA > >> nord <-> nord , auto20, NA > >> reg_hydriq <-> reg_hydriq , auto21, NA > >> prof_sol<-> prof_sol , auto22, NA > >> pierro <-> pierro , auto23, NA > >> efferv <-> efferv , auto24, NA > >> struct <-> struct , auto25, NA > >> drainage <-> drainage, auto26, NA > >> texture <-> texture , auto27, NA > >> route1_pond <->route1_pond , auto30, NA > >> route2_pond <-> route2_pond , auto31, NA > >> pourcactif <-> pourcactif , auto32, NA > >> tx_chomage <-> tx_chomage, auto33, NA > >> pourcagric <-> pourcagric , auto34, NA > >> pourc_jeunes<-> pourc_jeunes , auto36, NA > >> pop99<-> pop99 , auto36, NA > >> rev_imp_foyer <-> rev_imp_foyer , auto38, NA > >> eq_CONC <-> eq_CONC, auto39, NA > >> eq_sante <->eq_sante , auto40, NA > >> eq_edu<->eq_edu , auto41, NA > >> sold_nat<-> sold_nat , auto42, NA > >> sold_mig <-> sold_mig , auto43, NA > >> tps_dom_emp <-> tps_dom_emp , auto44, NA > >> TXEMPLOI <-> TXEMPLOI , auto45, NA > >> ORIECO <-> ORIECO , auto46, NA > >> axe1 <-> axe1 , auto47, NA > >> axe2 <-> axe2 , auto48, NA > >> axe3 <-> axe3 , auto49, NA > >> pays_incli<->pays_incli, auto70, NA > >> pays_alti<->pays_alti, auto71, NA > >> urbanisation<-> urbanisation , auto50, NA > >> type_paysage <-> type_paysage , NA,1 > >> adj_99 <-> adj_99 , NA ,1 > >> socioBV <-> socioBV , NA,1 > >> eqBV <-> eqBV , NA ,1 > >> socio_com <-> socio_com , NA,1 > >> access_hexa <-> access_hexa , NA,1 > >> hydro <-> hydro , NA ,1 > >> topog <-> topog , NA ,1 > >> pedo <-> pedo , NA ,1 > >> eqBV <-> eqBV , NA ,1 > >> etat_hexa<->etat_hexa, NA ,1 > >> > >> sem_dyn<-sem(ram_tab, moment_tab, N=1176, raw=T, > >> fixed.x=c("pays_alti","reg_hydriq", "c1","axe1", "tps_dom_emp", > >> "pourcactif", > >> "route1_pond","ind_plando","pente"), par.size="ones") > >> > >> > >> Any help would be greatly appreciate. > >> > >> Thank you, > >> > >> Anne > >> > >> ______________________________________________ > >> R-help@r-project.org mailing list > >> https://stat.ethz.ch/mailman/listinfo/r-help > >> PLEASE do read the posting guide > > http://www.R-project.org/posting-guide.html > >> and provide commented, minimal, self-contained, reproducible code. > > > > > > > > > > Anne Mimet > Chargée d'étude, CERSP, MNHN > Doctorante LADYSS > LADYSS, 2, rue valette, 75005 paris > 06 62 31 44 71 > > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.