make_Null_canonical {netcom} | R Documentation |
Mechanism Null Distributions
Description
Creates a null distribution for a mechanism and parameter combination.
Usage
make_Null_canonical(
input_network,
net_kind,
process,
parameter,
net_size,
iters,
method,
neighborhood,
DD_kind,
DD_weight,
directed,
resolution_min = 0.01,
resolution_max = 0.99,
power_max = 5,
connectance_max = 0.5,
divergence_max = 0.5,
best_fit_sd = 0,
cores = 1,
size_different = FALSE,
cause_orientation = "row",
max_norm = FALSE,
verbose = FALSE
)
Arguments
input_network |
The network for which to create a null distribution. |
net_kind |
If the network is an adjacency matrix ("matrix") or an edge list ("list"). Defaults to "matrix". |
process |
Name of mechanism. Currently only "ER", "PA", "DD", "DM" "SW", and "NM" are supported. Future versions will accept user-defined network-generating functions and associated parameters. ER = Erdos-Renyi random. PA = Preferential Attachment. DD = Duplication and Divergence. DM = Duplication and Mutation. SW = Small World. NM = Niche Model. |
parameter |
Parameter in the governing mechanism. |
net_size |
Number of nodes in the network. |
iters |
Number of replicates in the null distribution. Note that length(null_dist) = ((iters^2)-iters)/2. |
method |
This determines the method used to compare networks at the heart of the classification. Currently "DD" (Degree Distribution) and "align" (the align function which compares networks by the entropy of diffusion on them) are supported. Future versions will allow user-defined methods. |
neighborhood |
The range of nodes that form connected communities. Note: This implementation results in overlap of communities. |
DD_kind |
A vector of network properties to be used to compare networks. |
DD_weight |
A vector of weights for the relative importance of the network properties in DD_kind being used to compare networks. Should be the same length as DD_kind. |
directed |
Whether the target network is directed. |
resolution_min |
The minimum parameter value to consider. Zero is not used because in many processes it results in degenerate systems (e.g. entirely unconnected networks). Currently process agnostic. Future versions will accept a vector of values, one for each process. Defaults to 0.01. |
resolution_max |
The maximum parameter value to consider. One is not used because in many processes it results in degenerate systems (e.g. entirely connected networks). Currently process agnostic. Future versions will accept a vector of values, one for each process. Defaults to 0.99. |
power_max |
Defaults to 5. The maximum power of attachment in the Preferential Attachment process (PA). |
connectance_max |
Defaults to 0.5. The maximum connectance parameter for the Niche Model. |
divergence_max |
Defaults to 0.5. The maximum divergence parameter for the Duplication and Divergence/Mutation mechanisms. |
best_fit_sd |
Defaults to 0.01. Standard Deviation used to simulate networks with a similar but not identical best fit parameter. This is important because simulating networks with the identical parameter artificially inflates the false negative rate by assuming the best fit parameter is the true parameter. For large resolution and reps values this will become true, but also computationally intractable for realistically large systems. |
cores |
Defaults to 1. The number of cores to run the classification on. When set to 1 parallelization will be ignored. |
size_different |
If there is a difference in the size of the networks used in the null distribution. Defaults to FALSE. |
cause_orientation |
The orientation of directed adjacency matrices. Defaults to "row". |
max_norm |
Binary variable indicating if each network property should be normalized so its max value (if a node-level property) is one. Defaults to FALSE. |
verbose |
Defaults to FALSE. Whether to print all messages. |
Details
Produces ground-truthing network data.
Value
A list. The first element contains the networks. The second contains their corresponding parameters.
References
Langendorf, R. E., & Burgess, M. G. (2020). Empirically Classifying Network Mechanisms. arXiv preprint arXiv:2012.15863.
Examples
# Import netcom
library(netcom)
make_Systematic(net_size = 10)