[PYTHON] Aggregation und Visualisierung akkumulierter Zahlen

Wir werden die folgenden Daten verwenden.

x = [i for i in range(1,11)]
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Ich möchte eine kumulative Verteilungsfunktion für die in dieser Variablen x enthaltenen Werte erstellen.

Bei Verwendung der Cumsum-Funktion von Pandas

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt


x = [i for i in range(1,11)]

df = pd.DataFrame(x, columns=['x'])
df["cumsum"] = df.x.cumsum() #Kumulative Summe hinzufügen
df["cumsum_ratio"] = df.x.cumsum()/sum(df.x) #Wahrscheinlichkeit, den Wert von Cumsum zu erreichen

Infolgedessen hat df die folgende Struktur. (Index wird nicht angezeigt)

x cumsum cumsum_ratio
1 1 0.018182
2 3 0.054545
3 6 0.109091
4 10 0.181818
5 15 0.272727
... ... ...

Sie können dies zeichnen.

fig, ax = plt.subplots(figsize=(4, 4))
ax.set_xlabel('Value')
ax.set_ylabel('Cumulative Frequency') 
ax.set_xlim(0,10)
ax.scatter(df.x, df.cumsum_ratio, color="blue",s=10) 
ax.plot(df.x, df.cumsum_ratio, color="blue", marker='o',markersize=1) 

aaa

Bei Verwendung der Funktion "stats.cumfreq" von scipy

https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.cumfreq.html

Dies ist keine kumulative Verteilungsfunktion, kann jedoch wie folgt verwendet werden.

import numpy as np
from scipy import stats
import matplotlib.pyplot as plt

x = [i for i in range(1,11)]

res = stats.cumfreq(x, numbins=10)
x_ = res.lowerlimit + np.linspace(0, res.binsize*res.cumcount.size, res.cumcount.size)


x_1 = np.arange(counts.size) * binsize + start 

fig, ax = plt.subplots(figsize=(4, 4))
ax.plot(x_, res.cumcount, 'ro')
ax.set_title('Cumulative histogram')
ax.set_xlim([x_.min(), x_.max()])

hogehoge

Recommended Posts

Aggregation und Visualisierung akkumulierter Zahlen
Korrelationsvisualisierung der Merkmalsmenge und der Zielvariablen
Visualisierung von CNN-Feature-Maps und -Filtern (Tensorflow 2.0)
Primzahlen und Brüche
Analyse von Finanzdaten durch Pandas und deren Visualisierung (2)
Analyse von Finanzdaten durch Pandas und deren Visualisierung (1)
Diskriminierung von Primzahlen
Übersicht und Tipps von Seaborn mit statistischer Datenvisualisierung
[Regelungstechnik] Visualisierung und Analyse der PID-Regelung und der Sprungantwort
Visualisierung der Verbindung zwischen Malware und dem Callback-Server
Visualisierung von Daten anhand einer erklärenden Variablen und einer objektiven Variablen
Negative / positive Beurteilung von Sätzen und Visualisierung von Gründen durch Transformer
Verwenden von MLflow mit Databricks ② - Visualisierung experimenteller Parameter und Metriken -
Negative / positive Beurteilung von Sätzen durch BERT und Visualisierung von Gründen
Ist die Lotterie rentabel? ~ LOTO7 und das Gesetz der großen Zahlen ~
Das Problem der Lügner und der Ehrlichkeit
Verstehen Sie t-SNE und verbessern Sie die Visualisierung
Mechanismus von Pyenv und Virtualenv
Vor- und Nachbearbeitung von Pytest
Kombination von rekursiv und Generator
Kombination von anyenv und direnv
Visualisierung von Daten nach Präfektur
Differenzierung der Sortierung und Verallgemeinerung der Sortierung
Koexistenz von Pyenv und Autojump
Verwendung und Integration von "Shodan"
Das Problem der Lügner und der Ehrlichkeit
Auftreten und Auflösung von tensorflow.python.framework.errors_impl.FailedPreconditionError
Visualisierung besessener Fähigkeiten [Fortsetzung]
Vergleich von Apex und Lamvery
Quellinstallation und Installation von Python
Einführung und Tipps von mlflow.Tracking