| qpAnyGraph {qpgraph} | R Documentation |
Obtains an undirected graph from a matrix of pairwise measurements
qpAnyGraph(measurementsMatrix, threshold=NULL, remove=c("below", "above"),
topPairs=NULL, decreasing=TRUE, pairup.i=NULL, pairup.j=NULL,
return.type=c("incidence.matrix", "edge.list", "graphNEL", "graphAM"))
measurementsMatrix |
matrix of pairwise measurements. |
threshold |
threshold on the measurements below or above which pairs of variables are assumed to be disconnected in the resulting graph. |
remove |
direction of the removal with the threshold. It should be
either "below" (default) or "above". |
topPairs |
number of edges from the top of the ranking, defined by the
pairwise measurements in measurementsMatrix, to use to form the
resulting graph. This parameter is incompatible with a value different
from NULL in threshold. |
decreasing |
logical, only applies when topPairs is set; if TRUE
then the ranking is made in decreasing order; if FALSE then is made
in increasing order. |
pairup.i |
subset of vertices to pair up with subset pairup.j |
pairup.j |
subset of vertices to pair up with subset pairup.i |
return.type |
type of data structure on which the resulting undirected
graph should be returned. Either a logical incidence matrix with cells
set to TRUE when the two indexing variables are connected in the graph
(default), or a list of edges in a matrix where each row corresponds to
one edge and the two columns contain the two vertices defining each edge,
or a graphNEL-class object, or a graphAM-class object. |
This function requires the graph package when return.type=graphNEL
or return.type=graphAM.
The resulting undirected graph as either an incidence matrix, a graphNEL
object or a graphAM object, depending on the value of the return.type
parameter. Note that when some gold-standard graph is available for comparison,
a value for the parameter threshold can be found by calculating a
precision-recall curve with qpPrecisionRecall with respect to this
gold-standard, and then using qpPRscoreThreshold. Parameters
threshold and topPairs are mutually exclusive, that is, when
we specify with topPairs=n that we want a graph with n edges
then threshold cannot be used.
R. Castelo and A. Roverato
Castelo, R. and Roverato, A. A robust procedure for Gaussian graphical model search from microarray data with p larger than n, J. Mach. Learn. Res., 7:2621-2650, 2006.
qpNrr
qpAvgNrr
qpEdgeNrr
qpGraph
qpGraphDensity
qpClique
qpPrecisionRecall
qpPRscoreThreshold
nVar <- 50 # number of variables
maxCon <- 5 # maximum connectivity per variable
nObs <- 30 # number of observations to simulate
I <- qpRndGraph(n.vtx=nVar, n.bd=maxCon)
K <- qpI2K(I)
X <- qpSampleMvnorm(K, nObs)
pcc.estimates <- qpPCC(X)
# the higher the threshold
g <- qpAnyGraph(abs(pcc.estimates$R), threshold=0.9,
remove="below")
# the sparser the qp-graph
(sum(g)/2) / (nVar*(nVar-1)/2)
# the lower the threshold
g <- qpAnyGraph(abs(pcc.estimates$R), threshold=0.5,
remove="below")
# the denser the graph
(sum(g)/2) / (nVar*(nVar-1)/2)