[PYTHON] Déterminez le nombre de classes à l'aide de la formule Starges

Règle de Sturges

Une formule qui donne une indication de la distribution de fréquence et du nombre de classes lors de la création d'un histogramme. Il peut être calculé par la formule suivante, où n est le nombre d'échantillons et k le nombre de classes.

k = 1 + log_2N

Exemple

En supposant qu'il existe des données avec 40 échantillons (N = 40), le nombre de classes lors de la création d'un histogramme est calculé à partir de celui-ci.

1 + log_240 = 6.3219280948874 ≒ 6

A partir de là, le nombre de classes 6 est défini.

Mise en garde

Le nombre de classes obtenues en utilisant la formule de Starges n'est qu'une ** ligne directrice **. (Il n'y a pas de réponse absolue pour définir le numéro de classe lors de la création d'un tableau / histogramme de distribution de fréquence)

Méthodisation en Python

sturges.py


import math

def sturges_rule(n):
    u"""
Star Jess Officiel
    """
    return round(1 + math.log2(n))

Vérifiez dans «l'exemple» ci-dessus.

>>> from sturges import sturges_rule
>>> sturges_rule(40)
6

référence

Recommended Posts

Déterminez le nombre de classes à l'aide de la formule Starges
10. Compter le nombre de lignes
Obtenez le nombre de chiffres
Calculez le nombre de changements
Obtenez le nombre de vues de Qiita
Calcul du nombre d'associations de Klamer
Obtenez le nombre d'abonnés Youtube
Compter / vérifier le nombre d'appels de méthode.
Comment connaître le nombre de processeurs sans utiliser la commande sar
Correction d'angle (conversion de projection) de la licence à l'aide d'OpenCV - Déterminer automatiquement le seuil de binarisation -
Vérifier l'exactitude de la formule de notation «RC» à l'aide des données réelles du baseball professionnel
Représentez graphiquement l'évolution du nombre d'apparitions de mots clés par mois à l'aide de pandas
Compter le nombre de caractères avec écho
[Python] Totale automatiquement le nombre total d'articles publiés par Qiita à l'aide de l'API
Une introduction à l'analyse de données à l'aide de Python - Pour augmenter le nombre de vues vidéo -
Alignez le nombre d'échantillons entre les classes de données pour l'apprentissage automatique avec Python
Sortie du nombre de cœurs de processeur en Python
Estimation de l'effet des mesures à l'aide des scores de propension
Vérifiez le type de variable que vous utilisez
Organiser la signification des méthodes, des classes et des objets
Calculez le nombre total de combinaisons avec python
Divisez la chaîne de caractères en le nombre de caractères spécifié
Trouvez le nombre de jours dans un mois
Minimisez le nombre de polissages en optimisant la combinaison
J'ai essayé d'utiliser le filtre d'image d'OpenCV
Vérifiez l'état des données à l'aide de pandas_profiling
[Python] Déterminez le type d'iris avec SVM
Gratter les données gagnantes de Numbers à l'aide de Docker
[Analyse du modèle SIR] Transformez la formule pour déterminer γ et le nombre de reproduction effectif R ♬
Calcul de l'itinéraire le plus court selon la méthode de Monte Carlo
Comment connaître le numéro de port du service xinetd
[Python] Un programme qui compte le nombre de vallées
Explication du concept d'analyse de régression à l'aide de python Partie 2
Projecet Euler 12 Trouvez le nombre de fractions sans diviser.
Comment obtenir le nombre de chiffres en Python
Déterminer et traiter automatiquement l'encodage du fichier texte
relation entre la série de nombres de Fibonacci et le nombre d'or
Découpez une partie de la chaîne à l'aide d'une tranche Python
Comptez le nombre de paramètres dans le modèle d'apprentissage en profondeur
Calcul du nombre minimum de voix requis à partir du taux de vote
Déterminer le seuil à l'aide de la méthode P-tile en python
Essayez d'estimer le nombre de likes sur Twitter
Dessinez sur Jupyter en utilisant la fonction de tracé des pandas
La douleur de gRPC en utilisant Python. Novembre 2019. (Mémo personnel)
Prédire le nombre de personnes infectées par COVID-19 avec Prophet
Explication du concept d'analyse de régression à l'aide de Python Partie 1
J'ai essayé d'utiliser l'API de Sakenowa Data Project
Gérez le numéro de version du package de requirements.txt avec pip-tools
Analysons les émotions de Tweet en utilisant Chainer (2ème)
Étude de Python Hour8: Utilisation de packages
[Python] Obtenez le nombre de vues de tous les articles publiés
Analysons les émotions de Tweet en utilisant Chainer (1er)
L'histoire de l'utilisation de Circleci pour construire des roues Manylinux
Visualisez le nombre de plaintes des compagnies d'assurance-vie
Clustering G-means qui détermine automatiquement le nombre de clusters
VisibleDeprecation Avertissement: l'utilisation d'un nombre non entier au lieu d'un entier entraînera une erreur dans le futur