Construct an Empty ``Template'' Network Consistent with an Egocentric Sample
Construct an Empty ``Template'' Network Consistent with an Egocentric Sample
Taking an object with ego information, constructs a network object with no edges whose vertices have the attributes of the egos in the dataset, replicating the egos as needed, and taking into accounts their sampling weights.
template_network(x,...)## S3 method for class 'data.frame'template_network(x,...)## S3 method for class 'egor'template_network(x, N, scaling = c("round","sample"),...)
Arguments
x: A egor object.
...: Additional arguments, currently unused.
N: The target number of vertices the output network should have.
scaling: If egor contains weights or N is not a multiple of number of egos in the sample, it may not be possible, for a finite N to represent each ego exactly according to its relative weight, and scaling controls how the fractional egos are allocated:
"round": (the default) Rather than treating N as a hard setting, calculate Nwi/w⋅ for each ego i and round it to the nearest integer. Then, the N actually used will be the sum of these rounded freqencies.
"sample": Resample in proportion to wi.
Returns
A network object.
Methods (by class)
template_network(data.frame): method for data.frames and tibbles, specifying ego composition directly.
template_network(egor): method for egor objects; weights, if any, are obtained from the egor's design information.
Examples
data(faux.mesa.high)summary(faux.mesa.high, print.adj =FALSE)fmh.ego <- as.egor(faux.mesa.high)# Same actor attributesfmh.template <- template_network(fmh.ego, N=network.size(faux.mesa.high))summary(fmh.template, print.adj =FALSE)# Twice the actors, same distributionfmh2.template <- template_network(fmh.ego, N=2*network.size(faux.mesa.high))summary(fmh2.template, print.adj =FALSE)
See Also
as.egor.network(), which performs the inverse operation.