J'ai une distribution gaussienne bidimensionnelle, et j'essaie d'identifier les valeurs aberrantes. Ce n'est pas dans le sens de l'élimination des valeurs aberrantes, mais plutôt pour identifier les échantillons qui sont les plus dissemblables à la masse.R: Identification des valeurs aberrantes dans la distribution gaussienne 2D
Avez-vous une suggestion comment cela est mieux fait pour ces données? J'ai essayé d'ajuster une distribution normale sur les deux dimensions et de calculer les valeurs p pour tous les points de données, puis d'identifier les valeurs aberrantes comme les points de données avec les p-valeurs les plus faibles. Cependant, je reçois le résultat suivant:
Voici le code pour le calcul des valeurs P:
library(fitdistrplus)
norm_pvalue <- function(input_dist, input_values) {
# Fitting normal distribution
fit <- fitdist(input_dist, "norm")
# Calculating p-values
p_values <- unlist(lapply(input_values, function(x) dnorm(x = x, mean= fit$estimate[['mean']], sd= fit$estimate[['sd']])))
return(p_values)
}
Je voudrais que la solution soit généralisable.
trouver Mahalanobis distance depuis le centroïde? –