D'abord un commentaire général sur le mode:
Vous ne devez pas utiliser cette approche pour obtenir le mode de données (au moins théoriquement) distribuées en continu; il est peu probable que vous ayez des valeurs répétées (sauf si vous avez des échantillons vraiment énormes, ce serait un miracle mineur, et même alors, divers problèmes numériques pourraient le faire se comporter de manière quelque peu inattendue), et vous obtiendrez généralement la valeur minimale qui façon. Ce serait une façon de trouver l'un des modes globaux dans des données discrètes ou catégoriques, mais je ne le ferais probablement pas de cette façon même alors. Voici plusieurs autres approches pour obtenir le mode de données discrètes ou catégorielles:
x = rpois(30,12.3)
tail(sort(table(x)),1) #1: category and count; if multimodal this only gives one
w=table(x); w[max(w)==w] #2: category and count; this can find more than one mode
which.max(table(x)) #3: category and *position in table*; only finds one mode
Si vous voulez juste la valeur et non le nombre ou la position, names()
l'obtiendrez de ceux
Pour identifier les modes (il peut y avoir plus d'un mode local) pour les données continues de manière basique, vous pouvez regrouper les données (comme avec un histogramme) ou les lisser (en utilisant density
par exemple) et essayer de trouver un ou plusieurs modes de cette façon.
Moins de cases d'histogramme rendront votre estimation d'un mode moins sujet au bruit, mais l'emplacement ne sera pas plus précis que la largeur de la case (c'est-à-dire que vous n'obtiendrez qu'un intervalle). Plus de bacs peuvent permettre plus de précision dans un bac, mais le bruit peut le faire sauter à travers plusieurs de ces bacs; un petit changement dans l'origine du bac ou la largeur du bac peut produire des changements de mode relativement importants. (Il y a le même compromis biais-variance dans toutes les statistiques.)
Notez que summary
cela vous donnera plusieurs statistiques de base.
[Vous devez utiliser sd(x)
plutôt que sqrt(var(x))
; c'est plus clair pour une chose]
-
Pour q.2 oui; vous pouvez certainement afficher la moyenne et la médiane des données sur un écran tel qu'un histogramme ou un diagramme à boîte. Voir ici pour quelques exemples et du code que vous devriez pouvoir généraliser à tous les cas dont vous avez besoin.