Outputs the survey projection onto the agent or symbolic layer
Source:R/make-projection.R
make_projection.Rd
make_projection()
outputs the agent or symbolic network corresponding
to a survey, i.e. the row or column projection.
Usage
make_projection(
data,
layer = NULL,
threshold_method = NULL,
method_value = NULL,
centre = NULL,
dummycode = NULL,
likert = NULL,
mincomps = NULL,
similarity_metric = NULL,
verbose = NULL
)
Arguments
- data
A data frame corresponding to a survey
- layer
A string flag specifying which layer to project
"agent"
produces the network corresponding to the agents, which we assume to be rows indata
"symbolic"
produces the network corresponding to the symbols, or items, which we assume to be columns indata
- threshold_method
A string flag specifying how edges are selected in the network representation.
"raw_similarity"
means we remove all edges whose weight, meaning node similarity, is below a specified threshold."target_lcc"
finds the value of the threshold that results in the network whose largest connected component is as close as possible to a specified value. In general a range of thresholds will satisfy this condition, and we choose the upper limit of this range."target_ad"
finds the value of the threshold that results in the network whose average degree is as close as possible to a specified value.
- method_value
A utility variable that we interpret according to the
threshold_method
chosen.If
threshold_method = "raw_similarity"
, thenmethod_value
is interpreted as the similarity threshold, and thus is in the range[-1, 1]
. A value of -1 means no edges are removed, and a value of 1 means all edges are removed.If
threshold_method = "target_lcc"
, thenmethod_value
is interpreted as the desired fractional size of the largest connected component, in the range[0, 1]
. E.g., when set to 0, no nodes are connected, and if set to 1, the network is as sparse as possible while remaining fully connected.If
threshold_method = "target_ad"
, thenmethod_value
is interpreted as the desired average degree. We assume thatmethod_value
is normalised to the range[0, 1]
Whenmethod_value = 0
, then no nodes are connected, and ifmethod_value = 1
, the network is complete, meaning it contains every possible edge.
- centre
If
TRUE
, we shift edge weights from[0, 1]
to[-1, 1]
. Defaults to FALSE, as most network analysis applications require positive edge weights.- dummycode
flag that indicates whether we dummycode data.
- likert
Specifies the range of the Likert scale contained in
data
.- mincomps
The minimum number of valid comparisons that must be made when computing the similarity between rows or columns in the
data
. If at least one of the entries in the fields being compared is NA, then the comparison is invalid.- similarity_metric
This currently has just one allowed value, namely the Manhattan distance, which is the default.
- verbose
This is a debugging flag that prints out survey data after a pre-processing step, but before being supplied to the C++ routines that compute the network representation.
Value
A data frame corresponding to the edge list of the specified network. It contains three columns named
u
, the first node adjacent to the edgev
, the second node adjacent to the edge, andweight
, the similarity between nodesu
andv
Examples
S <- make_synthetic_data(20, 5)