Title: | Partition Bipartite Network into Non-Overlapping Biclusters by Optimizing Bipartite Modularity |
Version: | 1.23.120.1 |
Author: | Tianlong Chen [aut], Weibin Zhang [cre, ctb], Suresh Bhavnani [cph, fnd] |
Maintainer: | Weibin Zhang <wbzhang.ustc@gmail.com> |
Description: | Function bipmod() that partitions a bipartite network into non-overlapping biclusters by maximizing bipartite modularity defined in Barber (2007) <doi:10.1103/PhysRevE.76.066102> using the bipartite version of the algorithm described in Treviño (2015) <doi:10.1088/1742-5468/2015/02/P02003>. |
License: | MIT + file LICENSE |
Encoding: | UTF-8 |
LazyData: | true |
LinkingTo: | Rcpp |
Imports: | Rcpp |
RoxygenNote: | 7.1.2 |
Depends: | R (≥ 2.10) |
Suggests: | testthat |
NeedsCompilation: | yes |
Packaged: | 2023-01-21 00:16:03 UTC; weibzhan |
Repository: | CRAN |
Date/Publication: | 2023-01-21 23:20:30 UTC |
C++ code to to partition a bipartite network into non-overlapping biclusters, by optimizing bipartite modularity.
Description
C++ code to to partition a bipartite network into non-overlapping biclusters, by optimizing bipartite modularity.
Usage
CoClust(nr, nc, data, ITER)
Arguments
nr |
Number of rows of incidence matrix. |
nc |
Number of columns of incidence matrix. |
data |
Vectorized incidence matrix. |
ITER |
Number of iterations. |
Value
MODULARITY Modularity value.
ASSIGN Partition of rows and columns.
Partition bipartite network into non-overlapping biclusters, by optimizing bipartite modularity.
Description
This function partitions a bipartite network into non-overlapping biclusters by optimizing bipartite modularity defined in Barber (2007) using the bipartite version of the algorithm described in Treviño (2015).
Usage
bipmod(incid_mat, ITER = 10)
Arguments
incid_mat |
Incidence matrix of a bipartite network. |
ITER |
A positive integer representing the number of iterations used to maximizing modularity, (default=10). |
Details
The function takes as input a bipartite network represented as an incidence matrix (using a matrix or a data frame) with non-negative values (the row sums and column sums must be positive, to ensure there are no disconnected nodes). The function partitions the rows and columns into non-overlapping submatrices (biclusters), and outputs the membership of rows and columns to a partition, and modularity (Q) representing the quality of the partitioning.
Value
MODULARITY Modularity value (Q).
ASSIGN Integer labels representing partition of rows followed by columns in same order as incidence matrix.
References
Barber, M. J. (2007). Modularity and community detection in bipartite networks. Physical Review E, 76(6), 066102. <doi:10.1103/PhysRevE.76.066102>
Trevino, S., Nyberg, A., Del Genio, C. I., & Bassler, K. E. (2015). Fast and accurate determination of modularity and its effect size. Journal of Statistical Mechanics: Theory and Experiment, 2015(2), P02003. <doi:10.1088/1742-5468/2015/02/P02003>
Examples
data(example_data)
bipmod(example_data)
Example dataset of a bipartite network.
Description
A dataset consisting of anonymized patients (n=798) and symptoms (d=8), where each patient has one or more symptoms.
Usage
example_data
Format
A data frame with 798 rows and 8 binary variables:
- Symptom_1
- Symptom_2
- Symptom_3
- Symptom_4
- Symptom_5
- Symptom_6
- Symptom_7
- Symptom_8