##-*- mode: org -*- Emacs org: use [Tab] “all the time”
Currently, there is ./man/pcalg-internal.Rd with man \alias{}es and only few functions in “Usage”. The concept of such “internal” functions really predates the use of NAMESPACEs and is now obsolete.
Many of these should be removed for the .Rdany of these should be *removed for the .Rd page *and from NAMESPACE. The others (few?) would be kept, but then also “well” documented, i.e., on a different *.Rd file.
whereas dag2pag() does return more than just an adj.matrix. Change BEFORE release
–> file:/u/maechler/R/MM/Pkg-ex/pcalg/Borsboom_mail.R is an example where he explicitly calls an other package just to get sensible labeled plots.
- returns the adjacency matrix “@ amat” (among other things),
a simple matrix with entries in {0,1,2,3}.
It would be nice to allow sparse matrices here,
e.g., by using the “Matrix” class from the Matrix package.
This makes sense mostly if it’s realistic to have quite sparse and relatively large sets of variables.
instead of all methods (plot, summary) for both pcAlgo and fciAlgo
instead of lm() twice, use lm.fit once (multivariate regression). This will probably be much faster.
which was hidden in the code previously. Have you ever tried larger/smaller?
- returns a P-value but not the test statistic. Should really return an object of (standard S3 class) “htest” (which contains P-value, test statistic, …). But they have been documented to do what they do, and so we keep them.
and the 10 rules at the very end. Better: verbose in { 0,1,2 (, 3) } and verbose=1 should give much less than TRUE now
Maybe pcAlgo() should not be deprecated because it allows robust correlation methods? —> indepTest argument: Qn ? –> Martin
for a sparse am of dim 50 x 50 ==> Using the more ugly notation is ok!
allDags() bekommt noch keine Hilfeseite -> moechte bald eine grosse Aenderung der Funktion machen (inkl. Parameter)
Make a fast dsep function for testing (using a lot of precomputation; e.g. ancestors, parents that are not married, so that finding moral graph becomes trivial; we then only need to check separation; could also tsort all nodes and precompute one moral graph for every element in the tsorted node sequence (~p graphs); then, the test boils down to a mere separation test
- Die data/test_*.rda Daten welche nur in tests/ gebraucht werden, sollen nicht “exponiert” werden.
- Die andern sind momentan “falsch” dokumentiert, sowohl formal (-> R CMD check), als auch inhaltlich {die Namen strings sind “dokumentiert”; sonst kein Inhalt}.
- Auch hat es z.T. mehrere Objekte pro *.rda die inhaltlich zusammengehören; MM denkt, die sollten wohl zusammen in eine Liste (mit kurzem Namen!).
Wo gebraucht:
pcalg$ grep-r binaryData
./man/pc.Rd:data(binaryData)
./man/skeleton.Rd:data(binaryData)
pcalg$ grep-r discreteData
./inst/doc/pcalgDoc.Snw:data set \code{discreteData} (which consists of
## Here, you get their contents:
for(f in list.files(“~/R/Pkgs/pcalg/data/”, full.names=TRUE)) { bf <- basename(f) nam <- sub(“\.rda$”, ”, bf) cat(“\n”, bf, “:\n-----------------\n”, sep=”“) attach(f) print(ls.str(pos=2)) detach() }
- vcd: I’ve eliminated it, and all the ‘R CMD check’ still run
- RBGL: .. ok, only a few needed
- graph: import quite a few; now found all examples – is this (not attaching ‘graph’) acceptable to the current pcalg users ?
- abind: abind() needed in gSquareBin() & *Dis() – once only, each
- corpcor: pseudoinverse() [ -> fast.svd() .. non-optimal “A %% diag(.)” ]