[PYTHON] Einführung in die Statistik Die University of Tokyo Press Kapitel 2 Übungen

Kapitel 2 Übungen

Diese Berechnungen können leicht unter Verwendung vorhandener Funktionen erhalten werden, aber wir werden sie im Sinne der Untersuchung des Inhalts von Grund auf neu implementieren.

2.2 Mittlere Differenz / Gini-Koeffizient

A : 0, 3, 3, 5, 5, 5, 5, 7, 7, 10 B : 0, 1, 2, 3, 5, 5, 7, 8, 9, 10 C : 3, 4, 4, 5, 5, 5, 5, 6, 6, 7

Berechnen Sie die mittlere Differenz und den Gini-Koeffizienten für die Daten in.

Hier werden die mittlere Differenz und der Gini-Koeffizient durch die folgenden Formeln definiert.

\frac{Σ_iΣ_j|x_i-x_j|}{n^2}
\frac{Σ_iΣ_j|x_i-x_j|}{2n^2 \bar{x}}

Deshalb habe ich das Programm wie folgt geschrieben.

import numpy as np
A = np.array([0,3,3,5,5,5,5,7,7,10])
B = np.array([0,1,2,3,5,5,7,8,9,10])
C = np.array([3,4,4,5,5,5,5,6,6,7])
#Durchschnittlicher Unterschied
def ave_diff(x):
    n=len(x)**2
    result = [np.abs(x[i]-x[j])/n for i in range(len(x)) for j in range(len(x))]
    return sum(result)


"""
print(ave_diff(A))
print(ave_diff(B))
print(ave_diff(C))

2.76
3.7599999999999976
1.2000000000000008
"""
#Gini-Koeffizient
def get_gini(x):
def get_gini(x):
    n=len(x)**2
    x_bar=x.mean()
    result = [np.abs(x[i]-x[j])/(2*n*x_bar) for i in range(len(x)) for j in range(len(x))]
    return sum(result)
"""
print(get_gini(A))
print(get_gini(B))
print(get_gini(C))

0.2760000000000002
0.3760000000000002
0.12000000000000008
"""

2.3 Entropie

Wenn p_i = f_i / n

H(p_1, p_2, ...., p_n) = -Σp_iilog(p_ii)

Definiert in. Diese Menge wird als Entropie bezeichnet. Je größer H ist, desto gleichmäßiger ist die Verteilung, und je kleiner H ist, desto konzentrierter ist es.

Beispiel Ich habe 100 Schüler gefragt, woher sie kommen. Die folgenden Ergebnisse wurden vor 10 Jahren und in diesem Jahr erhalten. Vergleichen Sie die Verteilung dieses Ursprungsortes unter dem Gesichtspunkt der Konzentration.

Bereich A B C D E Gesamt
Dieses Jahr 32 19 10 24 15 100
vor 10 Jahren 28 13 18 29 12 100
import numpy as np
a=np.array([32, 19, 10, 24, 15])
b=np.array([28,13,18,29,12])

def entropy(x):
    H=0
    n=sum(x)
    
    H=[x[i]/n*np.log10(x[i]/n) for i in range(len(x))]
#     for i in range(len(x)):
#         p=a[i]/n
#         H.append(p*np.log10(p))
    return -sum(H)

"""
print(entropy(a))
print(entropy(b))

0.667724435887455
0.6704368955892825
"""

2.4 Standardbewertung / Abweichungsbewertung

Berechnen Sie die Standardbewertung und die Abweichungsbewertung für Daten B.

Standard Score / Standardisierung

z_i = \frac{xi-\bar{x}}{S_x}

Damit

def standard_score(x):
    x_bar = x.mean()
    s=np.sqrt(x.var())
    z = [(x[i]-x_bar)/s for i in range(len(x))]
    return z

"""
standard_score(B)

[-1.5214515486254614,
 -1.217161238900369,
 -0.9128709291752768,
 -0.6085806194501845,
 0.0,
 0.0,
 0.6085806194501845,
 0.9128709291752768,
 1.217161238900369,
 1.5214515486254614]

"""

Informationen zur Abweichungsbewertung

T_i = 10z_i * 50

Also habe ich die obige Funktion ein wenig geändert

def dev_val(x):
    x_bar = x.mean()
    s=np.sqrt(x.var())
    T = [(x[i]-x_bar)/s*10 +50 for i in range(len(x))]
    return T

'''

def_val(B)


[34.78548451374539,
 37.82838761099631,
 40.87129070824723,
 43.91419380549816,
 50.0,
 50.0,
 56.08580619450184,
 59.12870929175277,
 62.17161238900369,
 65.21451548625461]

'''

Es wird sein.

Recommended Posts

Einführung in die Statistik Die University of Tokyo Press Kapitel 2 Übungen
2016 Todai Mathematik mit Python gelöst
[Einführung in Python3 Tag 20] Kapitel 9 Enträtseln des Webs (9.1-9.4)
Von der Einführung von Pyethapp bis zur Vertragsabwicklung
Einführung in die Quizstatistik (1) -Mathematische Analyse von Fragensätzen, um die Tendenz von Fragen zu kennen-
Einführung in die maschinelle Übersetzungsarchitektur der Universität Cambridge mit der Slack Translation App Kiara
Versuchen Sie, die Probleme des "Matrix-Programmierers" zu lösen (Kapitel 1).
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Einführung in Financial Engineering [Investment Science] Kapitel 2 Übungen Selbstantwort
[Einführung in Python] Grundlegende Verwendung der Bibliothek matplotlib
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Eine Einführung in die Objektorientierung: Ändern Sie den internen Status eines Objekts
Versuchen Sie, die Probleme / Probleme des "Matrix-Programmierers" zu lösen (Kapitel 0-Funktion)
Kapitel 1 Einführung in Python Schneiden Sie nur die guten Punkte des Deeplearning aus, die von Grund auf neu erstellt wurden
Ich habe versucht, die erste Frage der Mathematik-Aufnahmeprüfung 2019 der Universität Tokio mit Python Sympy zu lösen
Zusammenfassung von Kapitel 2 der Einführung in Entwurfsmuster, die in Java gelernt wurden
[Python] PCA-Scratch im Beispiel "Einführung in die multivariate Analysemethode"
Kapitel 4 Zusammenfassung der Einführung in Entwurfsmuster, die in Java gelernt wurden
[Einführung in Python] Ich habe die Namenskonventionen von C # und Python verglichen.
[Einführung in StyleGAN] Ich habe mit "The Life of a Man" ♬ gespielt
Verwenden Sie PyCaret, um den Preis von Gebrauchtwohnungen in Tokio vorherzusagen!
Lösen des Labyrinths mit Python-Ergänzung zu Kapitel 6 der Algorithmus-Kurzreferenz-
Von der Einführung von JUMAN ++ bis zur morphologischen Analyse von Japanisch mit Python
[Einführung in das SIR-Modell] Betrachten Sie das passende Ergebnis von Diamond Princess ♬
[Einführung in Python3 Tag 13] Kapitel 7 Zeichenfolgen (7.1-7.1.1.1)
[Einführung in Python3 Tag 14] Kapitel 7 Zeichenfolgen (7.1.1.1 bis 7.1.1.4)
[Einführung in Python3 Tag 15] Kapitel 7 Zeichenfolgen (7.1.2-7.1.2.2)
Ergänzung zur Erklärung von vscode
[Einführung in Python3 Tag 21] Kapitel 10 System (10.1 bis 10.5)
Von der Einführung der GoogleCloudPlatform Natural Language API bis zur Verwendung
Ford-Falkerson-Methode und ihre Anwendungen-Ergänzung zu Kapitel 8 der Algorithmus-Kurzreferenz-
Verschiedene Methoden zum numerischen Erstellen der Umkehrfunktion einer bestimmten Funktion Einführung
Ich habe versucht, die Version 2020 mit 100 Sprachverarbeitung zu lösen [Kapitel 3: Reguläre Ausdrücke 25-29]
[Einführung in Python] So sortieren Sie den Inhalt einer Liste effizient mit Listensortierung
[Einführung in Datenwissenschaftler] Grundlagen der Wahrscheinlichkeit und Statistik ♬ Wahrscheinlichkeits- / Wahrscheinlichkeitsvariable und Wahrscheinlichkeitsverteilung
[Einführung in Python] Eine ausführliche Erklärung der in Python verwendeten Zeichenkettentypen!
[Einführung in Python] Wie wird mit der continue-Anweisung wiederholt?
Die Geschichte des Versuchs, den Client wieder zu verbinden
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.1-8.2.5)
Skript zum Ändern der Beschreibung von Fasta
10 Methoden zur Verbesserung der Genauigkeit von BERT
So überprüfen Sie die Version von Django
Die Geschichte, MeCab in Ubuntu 16.04 zu setzen
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.3-8.3.6.1)
[Einführung in Python3 Tag 19] Kapitel 8 Datenziele (8.4-8.5)
[Einführung in Python3 Tag 18] Kapitel 8 Datenziele (8.3.6.2 bis 8.3.6.3)
Wahrscheinlich die einfachste Einführung in TensorFlow
Die Geschichte von pep8 wechselt zu pycodestyle
Einführung in Scapy ① (Von der Installation bis zur Ausführung von Scapy)
Einführung in die Überprüfung der Wirksamkeit Kapitel 1 in Python geschrieben
[Einführung in Data Scientist] Grundlagen von Python ♬
Ich habe versucht, die 2020-Version von 100 Sprachverarbeitungsproblemen zu lösen [Kapitel 3: Reguläre Ausdrücke 20 bis 24]
Einführung in die statistische Modellierung für die Datenanalyse Erweiterung des Anwendungsbereichs von GLM
Eine Einführung in die Datenanalyse mit Python - Um die Anzahl der Videoansichten zu erhöhen -
Ich habe versucht, die 2020-Version von 100 Sprachverarbeitungsproblemen zu lösen [Kapitel 1: Vorbereitungsbewegung 00-04]
Ich habe versucht, die 2020-Version von 100 Sprachverarbeitungsproblemen zu lösen [Kapitel 1: Vorbereitungsbewegung 05-09]
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
[Einführung in die Statistik] Welche Art von Verteilung ist die t-Verteilung, die Chi-Quadrat-Verteilung und die F-Verteilung? Eine kleine Zusammenfassung der Verwendung von [Python]
Probieren Sie das Buch "Einführung in die Verarbeitung natürlicher Sprachanwendungen in 15 Schritten" - Kapitel 1 Memo "Vorkenntnisse vor Beginn der Übungen".