Bridging Two Ideal Point Estimates with Linear Transformation Method
bridge.linearmap(
ip1,
ip2,
anchorrows.ip1,
anchorrows.ip2,
method = "procrustes",
trans.ip2 = TRUE,
opt = FALSE,
opt.iter.n = 10000,
opt.sample.n = 30,
opt.th.inline = 0.5,
blend = TRUE,
blend.th1 = 0.05,
blend.th2 = 0.15
)
Arguments
ip1 |
Matrix or data.frame of 'reference' ideal points
(i.e., ip2 ideal points will be transformed and mapped to ip1 space).
Rows are resepondents and columns are ideal point dimensions.
The current code only allows 2 dimensions. |
ip2 |
Matrix or data.frame of ideal points to be transformed. |
anchorrows.ip1 |
Vector of row number of anchoring respondents in ip1 . |
anchorrows.ip2 |
Vector of row number of anchoring respondents in ip2 .
Must be the same length as anchorrows.ip1 . |
method |
Method of bridging. Currently, following methods are aviailable:
"procrustes" (default): Procrustes transformation method.
Based on anchor cases, this method provides restricted non-parametric procedure to
find optimal transformation matrix to bridge ideal point estimates.
"homography" : Homography transformation method.
Based on anchor cases, this method provides non-parametric procedure to
find optimal transformation matrix to bridge ideal point estimates.
"olsmap" : OLS mapping method, Based on anchor cases,
use OLS regression to map d2 ideal point coordinates on
d1 ideal point space.
|
trans.ip2 |
If TRUE (default), transform ip2 to map them on ip1 space.
If FALSE , transform ip1 to map them on ip2 space. |
opt |
If TRUE , conduct optimization of transformation through RANSAC
(random sample consensus). The default is FALSE . |
opt.iter.n |
Number of iteration in the optimization of transformation
matrix. |
opt.sample.n |
Size of anchoring respondents to be sub-sampled at each iteration of
optimization. |
opt.th.inline |
Upper bound to determine inline respondents at each iteration of
optimization. A respondent is considered 'inline' if the distance between transformed
ip2 and ip1 goes below this threshold. |
blend |
If FALSE , do not use blending procedure. The default is TRUE . |
blend.th1 |
If blend==TRUE , first threshold used in 'blending' procedure. If minimum difference
between transformed ip2 and ip1 goes below this threshold, the
transformed ip2 is replaced with the closest ip1 . |
blend.th2 |
If blend==TRUE , second threshold used in 'blending' procedure. If minimum difference
between transformed ip2 and ip1 goes below this threshold (but above
blend.th1 ), the transformed ip2 is replaced with the value that
intrapolates ip1 that falls within this threshold. |
Value
A list with the following elements along with specified argument values: