Create missing not at random (MNAR) values using MNAR1:x in a data frame or a matrix
delete_MNAR_1_to_x(
ds,
p,
cols_mis,
x,
cutoff_fun = median,
prop = 0.5,
use_lpSolve = TRUE,
ordered_as_unordered = FALSE,
stochastic = FALSE,
add_realized_x = FALSE,
...,
miss_cols
)
A data frame or matrix in which missing values will be created.
A numeric vector with length one or equal to length cols_mis
;
the probability that a value is missing.
A vector of column names or indices of columns in which missing values will be created.
Numeric with length one (0 < x < Inf
); odds are 1 to x for
the probability of a value to be missing in group 1 against the probability
of a value to be missing in group 2 (see details).
Function that calculates the cutoff values in the
cols_ctrl
.
Numeric of length one; (minimum) proportion of rows in group 1 (only used for unordered factors).
Logical; should lpSolve be used for the determination of
groups, if cols_ctrl[i]
is an unordered factor.
Logical; should ordered factors be treated as unordered factors.
Logical; see details.
Logical; if TRUE the realized odds for cols_mis will be returned (as attribute).
Further arguments passed to cutoff_fun
.
Deprecated, use cols_mis instead.
An object of the same class as ds
with missing values.
The functions delete_MNAR_1_to_x
and delete_MAR_1_to_x
are sisters. The only difference between these two functions is the column that controls the generation of missing values. In delete_MAR_1_to_x
a separate column cols_ctrl[i]
controls the generation of missing values in cols_mis[i]
. In contrast, in delete_MNAR_1_to_x
the generation of missing values in cols_mis[i]
is controlled by cols_mis[i]
itself. All other aspects are identical for both functions. Therefore, further details can be found in delete_MAR_1_to_x
.
Santos, M. S., Pereira, R. C., Costa, A. F., Soares, J. P., Santos, J., & Abreu, P. H. (2019). Generating Synthetic Missing Data: A Review by Missing Mechanism. IEEE Access, 7, 11651-11667
Other functions to create MNAR:
delete_MNAR_censoring()
,
delete_MNAR_one_group()
,
delete_MNAR_rank()
# NOT RUN {
ds <- data.frame(X = 1:20, Y = 101:120)
delete_MNAR_1_to_x(ds, 0.2, "X", x = 3)
# }
Run the code above in your browser using DataLab