R/distance-depth.R
distance_depth_function.Rd
Calculates a global distance-based depth vector using a distance matrix. Specifically we use Geenens & Nieto-Reyes's global distance-based depth defined as:
distance_depth_function(x, x_new = NULL, df_out = "auto") # S3 method for matrix distance_depth_function(x, x_new = NULL, df_out = F) # S3 method for tidy_dist_mat distance_depth_function(x, x_new = NULL, df_out = T)
x | a n x n square positive symmetric matrix or a tidy_dist_mat |
---|---|
x_new | a n_new x n matrix or tidy_dist_mat where the rows correspond to
new observations, the columns correspond to points in |
df_out | indicates if one should return a data.frame our a vector, by default returns data.frame if dist_mat is a tidy_dist_mat, and a vector if dist_mat is a matrix. |
depth vector length n with depth values associated with indices in
dist_mat
or a data.frame with a column called depth
\(DD(x, \hat{P}) = 1/(n choose 2) \cdot \sum_{i!=j} I(d(X_i, X_j) > max(d(X_i,x), d(X_j,x)))\)
This function (renamed as depth_function
) is shared with
TCpredictionbands on github:
TCpredictionbands.
dist_mat <- matrix(c(0, 1, 1.5, 1, 0, 2, 1.5, 2, 0 ), nrow = 3, byrow = TRUE) dd_vec <- distance_depth_function(dist_mat) # c(1,0,0) tidy_dm <- tidy_dist_mat(dist_mat) dd_df <- distance_depth_function(tidy_dm) # depth = c(1,0,0)