Main Page | Directories | File List | File Members | Related Pages

Classes.c

Go to the documentation of this file.
00001 
00009 #include "party.h"
00010 
00011 SEXP 
00012     PL2_expectationSym,
00013     PL2_covarianceSym,
00014     PL2_linearstatisticSym,
00015     PL2_expcovinfSym,
00016     PL2_expcovinfssSym,
00017     PL2_sumweightsSym,
00018     PL2_dimensionSym,
00019     PL2_MPinvSym,  
00020     PL2_rankSym,
00021     PL2_svdSym,
00022     PL2_svdmemSym,
00023     PL2_methodSym,
00024     PL2_jobuSym, 
00025     PL2_jobvSym, 
00026     PL2_uSym,
00027     PL2_vSym,
00028     PL2_sSym,
00029     PL2_pSym,
00030     PL2_teststatSym,
00031     PL2_pvalueSym,
00032     PL2_tolSym,
00033     PL2_maxptsSym,
00034     PL2_absepsSym,
00035     PL2_relepsSym,
00036     PL2_minprobSym,
00037     PL2_minsplitSym,
00038     PL2_minbucketSym,
00039     PL2_variablesSym, 
00040     PL2_transformationsSym, 
00041     PL2_is_nominalSym, 
00042     PL2_is_ordinalSym, 
00043     PL2_is_censoredSym, 
00044     PL2_orderingSym, 
00045     PL2_levelsSym, 
00046     PL2_scoresSym, 
00047     PL2_has_missingsSym, 
00048     PL2_whichNASym, 
00049     PL2_jointtransfSym, 
00050     PL2_nobsSym, 
00051     PL2_ninputsSym,
00052     PL2_linexpcov2sampleSym, 
00053     PL2_weightsSym, 
00054     PL2_varmemorySym,
00055     PL2_splitstatisticsSym,
00056     PL2_savesplitstatsSym,
00057     PL2_responsesSym, 
00058     PL2_inputsSym,
00059     PL2_testtypeSym, 
00060     PL2_nresampleSym,
00061     PL2_varctrlSym, 
00062     PL2_splitctrlSym, 
00063     PL2_gtctrlSym,
00064     PL2_mincriterionSym,
00065     PL2_maxsurrogateSym,
00066     PL2_randomsplitsSym,
00067     PL2_mtrySym,
00068     PL2_dontuseSym,
00069     PL2_dontusetmpSym,
00070     PL2_stumpSym,
00071     PL2_maxdepthSym,
00072     PL2_tgctrlSym,
00073     PL2_ntreeSym,
00074     PL2_replaceSym,
00075     PL2_fractionSym;
00076 
00077 SEXP party_init(void) {
00078     PL2_expectationSym = install("expectation");
00079     PL2_covarianceSym = install("covariance");
00080     PL2_linearstatisticSym = install("linearstatistic");
00081     PL2_expcovinfSym = install("expcovinf");
00082     PL2_expcovinfssSym = install("expcovinfss");
00083     PL2_sumweightsSym = install("sumweights");
00084     PL2_dimensionSym = install("dimension");
00085     PL2_MPinvSym = install("MPinv");
00086     PL2_rankSym = install("rank");
00087     PL2_svdSym = install("svd");
00088     PL2_svdmemSym = install("svdmem");
00089     PL2_methodSym = install("method");
00090     PL2_jobuSym = install("jobu");
00091     PL2_jobvSym = install("jobv");
00092     PL2_uSym = install("u");
00093     PL2_vSym = install("v");
00094     PL2_sSym = install("s");
00095     PL2_pSym = install("p"); 
00096     PL2_teststatSym = install("teststat");
00097     PL2_pvalueSym = install("pvalue");
00098     PL2_tolSym = install("tol");
00099     PL2_maxptsSym = install("maxpts");
00100     PL2_absepsSym = install("abseps");
00101     PL2_relepsSym = install("releps");
00102     PL2_minsplitSym = install("minsplit");
00103     PL2_minprobSym = install("minprob");
00104     PL2_minbucketSym = install("minbucket");
00105     PL2_variablesSym = install("variables"); 
00106     PL2_transformationsSym = install("transformations"); 
00107     PL2_is_nominalSym = install("is_nominal"); 
00108     PL2_is_ordinalSym = install("is_ordinal"); 
00109     PL2_is_censoredSym = install("is_censored"); 
00110     PL2_orderingSym = install("ordering"); 
00111     PL2_levelsSym = install("levels"); 
00112     PL2_scoresSym = install("scores"); 
00113     PL2_has_missingsSym = install("has_missings"); 
00114     PL2_whichNASym = install("whichNA"); 
00115     PL2_jointtransfSym = install("jointtransf"); 
00116     PL2_nobsSym = install("nobs"); 
00117     PL2_ninputsSym = install("ninputs"); 
00118     PL2_linexpcov2sampleSym = install("linexpcov2sample"); 
00119     PL2_weightsSym = install("weights"); 
00120     PL2_varmemorySym = install("varmemory"); 
00121     PL2_splitstatisticsSym = install("splitstatistics");
00122     PL2_savesplitstatsSym = install("savesplitstats");
00123     PL2_responsesSym = install("responses"); 
00124     PL2_inputsSym = install("inputs"); 
00125     PL2_testtypeSym = install("testtype"); 
00126     PL2_nresampleSym = install("nresample"); 
00127     PL2_varctrlSym = install("varctrl"); 
00128     PL2_splitctrlSym = install("splitctrl"); 
00129     PL2_gtctrlSym = install("gtctrl"); 
00130     PL2_mincriterionSym = install("mincriterion"); 
00131     PL2_maxsurrogateSym = install("maxsurrogate"); 
00132     PL2_randomsplitsSym = install("randomsplits"); 
00133     PL2_mtrySym = install("mtry"); 
00134     PL2_dontuseSym = install("dontuse"); 
00135     PL2_dontusetmpSym = install("dontusetmp"); 
00136     PL2_stumpSym = install("stump"); 
00137     PL2_maxdepthSym = install("maxdepth"); 
00138     PL2_tgctrlSym = install("tgctrl"); 
00139     PL2_ntreeSym = install("ntree"),
00140     PL2_replaceSym = install("replace"),
00141     PL2_fractionSym = install("fraction");
00142     return(R_NilValue);
00143 }
00144 
00145 /* accessor functions */
00146 
00147 int get_dimension(SEXP object) {
00148     return(INTEGER(GET_SLOT(object, PL2_dimensionSym))[0]);
00149 }
00150 
00151 int get_teststat(SEXP object) {
00152     return(INTEGER(GET_SLOT(object, PL2_teststatSym))[0]);
00153 }
00154 
00155 int get_pvalue(SEXP object) {
00156     return(INTEGER(GET_SLOT(object, PL2_pvalueSym))[0]);
00157 }
00158 
00159 double get_tol(SEXP object) {
00160     return(REAL(GET_SLOT(object, PL2_tolSym))[0]);
00161 }
00162 
00163 int get_maxpts(SEXP object) {
00164     return(INTEGER(GET_SLOT(object, PL2_maxptsSym))[0]);
00165 }
00166 
00167 double get_abseps(SEXP object) {
00168     return(REAL(GET_SLOT(object, PL2_absepsSym))[0]);
00169 }
00170 
00171 double get_releps(SEXP object) {
00172     return(REAL(GET_SLOT(object, PL2_relepsSym))[0]);
00173 }
00174 
00175 double get_minsplit(SEXP object) {
00176     return(REAL(GET_SLOT(object, PL2_minsplitSym))[0]);
00177 }
00178 
00179 double get_minprob(SEXP object) {
00180     return(REAL(GET_SLOT(object, PL2_minprobSym))[0]);
00181 }
00182 
00183 double get_minbucket(SEXP object) {
00184     return(REAL(GET_SLOT(object, PL2_minbucketSym))[0]);
00185 }
00186 
00187 SEXP get_transformation(SEXP object, int variable) {
00188     return(VECTOR_ELT(
00189                GET_SLOT(object, PL2_transformationsSym), 
00190                variable - 1));
00191 }
00192 
00193 SEXP get_jointtransf(SEXP object) {
00194     return(GET_SLOT(object, PL2_jointtransfSym));
00195 }
00196 
00197 SEXP get_variable(SEXP object, int variable) {
00198     return(VECTOR_ELT(
00199                GET_SLOT(object, PL2_variablesSym), 
00200                variable - 1));
00201 }
00202 
00203 int is_nominal(SEXP object, int variable) {
00204     return(INTEGER(GET_SLOT(object, PL2_is_nominalSym))[variable - 1]);
00205 }
00206 
00207 int is_ordinal(SEXP object, int variable) {
00208     return(INTEGER(GET_SLOT(object, PL2_is_ordinalSym))[variable - 1]);
00209 }
00210 
00211 int is_censored(SEXP object, int variable) {
00212     return(INTEGER(GET_SLOT(object, PL2_is_censoredSym))[variable - 1]);
00213 }
00214 
00215 int has_missings(SEXP object, int variable) {
00216     return(INTEGER(GET_SLOT(object, PL2_has_missingsSym))[variable - 1]);
00217 }
00218 
00219 SEXP get_ordering(SEXP object, int variable) {
00220     if (!is_nominal(object, variable)) {
00221         return(VECTOR_ELT(
00222                GET_SLOT(object, PL2_orderingSym), 
00223                variable - 1));
00224     } else {
00225         error("Variable %d is not ordered", variable);
00226         return(R_NilValue);
00227     }
00228 }
00229 
00230 SEXP get_levels(SEXP object, int variable) {
00231     if (is_nominal(object, variable) || 
00232         is_ordinal(object, variable)) {
00233         return(VECTOR_ELT(
00234                GET_SLOT(object, PL2_levelsSym), 
00235                variable - 1));
00236     } else {
00237         error("Variable %d is not an (ordered) factor", variable);
00238         return(R_NilValue);
00239     }
00240 }
00241 
00242 SEXP get_scores(SEXP object, int variable) {
00243     if (is_ordinal(object, variable)) {
00244         return(VECTOR_ELT(
00245                GET_SLOT(object, PL2_scoresSym), 
00246                variable - 1));
00247     } else {
00248         error("Variable %d is not an ordered factor", variable);
00249         return(R_NilValue);
00250     }
00251 }
00252 
00253 SEXP get_missings(SEXP object, int variable) {
00254     if (has_missings(object, variable)) {
00255         return(VECTOR_ELT(
00256                GET_SLOT(object, PL2_whichNASym), 
00257                variable - 1));
00258     } else {
00259         error("Variable %d has no missing values", variable);
00260         return(R_NilValue);
00261     }
00262 }
00263 
00264 SEXP get_varmemory(SEXP object, int variable) {
00265     return(VECTOR_ELT(GET_SLOT(object, PL2_varmemorySym), 
00266                       variable - 1));
00267 }
00268 
00269 int get_savesplitstats(SEXP object) {
00270     return(INTEGER(GET_SLOT(object, PL2_savesplitstatsSym))[0]);
00271 }
00272 
00273 SEXP get_splitstatistics(SEXP object) {
00274     return(GET_SLOT(object, PL2_splitstatisticsSym));
00275 }
00276 
00277 int get_nobs(SEXP object) {
00278     return(INTEGER(GET_SLOT(object, PL2_nobsSym))[0]);
00279 }
00280 
00281 int get_ninputs(SEXP object) {
00282     return(INTEGER(GET_SLOT(object, PL2_ninputsSym))[0]);
00283 }
00284 
00285 SEXP get_weights(SEXP object, int variable) {
00286     return(VECTOR_ELT(GET_SLOT(object, PL2_weightsSym), variable - 1));
00287 }
00288 
00289 int get_testtype(SEXP object) {
00290     return(INTEGER(GET_SLOT(object, PL2_testtypeSym))[0]);
00291 }
00292 
00293 int get_nresample(SEXP object) {
00294     return(INTEGER(GET_SLOT(object, PL2_nresampleSym))[0]);
00295 }
00296 
00297 SEXP get_varctrl(SEXP object) {
00298     return(GET_SLOT(object, PL2_varctrlSym));
00299 }
00300 
00301 SEXP get_splitctrl(SEXP object) {
00302     return(GET_SLOT(object, PL2_splitctrlSym));
00303 }
00304 
00305 SEXP get_gtctrl(SEXP object) {
00306     return(GET_SLOT(object, PL2_gtctrlSym));
00307 }
00308 
00309 SEXP get_tgctrl(SEXP object) {
00310     return(GET_SLOT(object, PL2_tgctrlSym));
00311 }
00312 
00313 double get_mincriterion(SEXP object) {
00314     return(REAL(GET_SLOT(object, PL2_mincriterionSym))[0]);
00315 }
00316 
00317 int get_maxsurrogate(SEXP object) {
00318     return(INTEGER(GET_SLOT(object, PL2_maxsurrogateSym))[0]);
00319 }
00320 
00321 int get_randomsplits(SEXP object) {
00322     return(INTEGER(GET_SLOT(object, PL2_randomsplitsSym))[0]);
00323 }
00324 
00325 int get_mtry(SEXP object) {
00326     return(INTEGER(GET_SLOT(object, PL2_mtrySym))[0]);
00327 }
00328 
00329 SEXP get_dontuse(SEXP object) {
00330     return(GET_SLOT(object, PL2_dontuseSym));
00331 }
00332 
00333 SEXP get_dontusetmp(SEXP object) {
00334     return(GET_SLOT(object, PL2_dontusetmpSym));
00335 }
00336 
00337 int get_stump(SEXP object) {
00338     return(INTEGER(GET_SLOT(object, PL2_stumpSym))[0]);
00339 }
00340 
00341 int check_depth(SEXP object, int depth) {
00342     int maxdepth;
00343     maxdepth = INTEGER(GET_SLOT(object, PL2_maxdepthSym))[0];
00344     if (maxdepth == 0) return(1);
00345     if (maxdepth < 1) error("maxdepth is less than one");
00346     return(depth <= maxdepth);
00347 }
00348 
00349 int get_ntree(SEXP object) {
00350     return(INTEGER(GET_SLOT(object, PL2_ntreeSym))[0]);
00351 }
00352 
00353 int get_replace(SEXP object) {
00354     return(INTEGER(GET_SLOT(object, PL2_replaceSym))[0]);
00355 }
00356 
00357 double get_fraction(SEXP object) {
00358     return(REAL(GET_SLOT(object, PL2_fractionSym))[0]);
00359 }

Generated on Fri Aug 25 14:30:00 2006 for party by  doxygen 1.4.4