fixedcol | R Documentation |

`fixedcol`

extracts the backbone of a bipartite projection using the Fixed Column Model.

fixedcol( B, alpha = 0.05, signed = FALSE, mtc = "none", class = "original", narrative = FALSE )

`B` |
An unweighted bipartite graph, as: (1) an incidence matrix in the form of a matrix or sparse |

`alpha` |
real: significance level of hypothesis test(s) |

`signed` |
boolean: TRUE for a signed backbone, FALSE for a binary backbone (see details) |

`mtc` |
string: type of Multiple Test Correction to be applied; can be any method allowed by |

`class` |
string: the class of the returned backbone graph, one of c("original", "matrix", "Matrix", "igraph", "edgelist").
If "original", the backbone graph returned is of the same class as |

`narrative` |
boolean: TRUE if suggested text & citations should be displayed. |

This `fixedcol`

function compares an edge's observed weight in the projection *B*t(B)* to the
distribution of weights expected in a projection obtained from a random bipartite graph where
the *column* vertex degrees are fixed but the row vertex degrees are allowed to vary.

When `signed = FALSE`

, a one-tailed test (is the weight stronger) is performed for each edge with a non-zero weight. It
yields a backbone that perserves edges whose weights are significantly *stronger* than expected under the null
model. When `signed = TRUE`

, a two-tailed test (is the weight stronger or weaker) is performed for each every pair of nodes.
It yields a backbone that contains positive edges for edges whose weights are significantly *stronger*, and
negative edges for edges whose weights are significantly *weaker*, than expected in the chosen null model.
*NOTE: Before v2.0.0, all significance tests were two-tailed and zero-weight edges were evaluated.*

If `alpha`

!= NULL: Binary or signed backbone graph of class `class`

.

If `alpha`

== NULL: An S3 backbone object containing (1) the weighted graph as a matrix, (2) upper-tail p-values as a
matrix, (3, if `signed = TRUE`

) lower-tail p-values as a matrix, (4, if present) node attributes as a dataframe, and
(5) several properties of the original graph and backbone model, from which a backbone can subsequently be extracted
using `backbone.extract()`

.

package: Neal, Z. P. (2022). backbone: An R Package to Extract Network Backbones. *PLOS ONE, 17*, e0269137. doi: 10.1371/journal.pone.0269137

fixedcol: Neal, Z. P., Domagalski, R., and Sagan, B. (2021). Comparing Alternatives to the Fixed Degree Sequence Model for Extracting the Backbone of Bipartite Projections. *Scientific Reports, 11*, 23929. doi: 10.1038/s41598-021-03238-3

#A binary bipartite network of 30 agents & 75 artifacts; agents form three communities B <- rbind(cbind(matrix(rbinom(250,1,.8),10), matrix(rbinom(250,1,.2),10), matrix(rbinom(250,1,.2),10)), cbind(matrix(rbinom(250,1,.2),10), matrix(rbinom(250,1,.8),10), matrix(rbinom(250,1,.2),10)), cbind(matrix(rbinom(250,1,.2),10), matrix(rbinom(250,1,.2),10), matrix(rbinom(250,1,.8),10))) P <- B%*%t(B) #An ordinary weighted projection... plot(igraph::graph_from_adjacency_matrix(P, mode = "undirected", weighted = TRUE, diag = FALSE)) #...is a dense hairball bb <- fixedcol(B, alpha = 0.05, narrative = TRUE, class = "igraph") #A fixedcol backbone... plot(bb) #...is sparse with clear communities

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.