Logarithmisches Binning
Wenn sich die Zahlenwerte um sehr große Größenordnungen unterscheiden, greift man auf das logarithmische Binning mit fixer Bereichslänge zurück. Die Zahlengruppen werden durch 10er Potenzen bestimmt.
# Stuhlpfarrer Ehrenfried - 2021
# Demo Feature Engineering - Logarithmisches Binning
import numpy as np
import matplotlib.pyplot as plt
# Zufällig generierte Zahlen, mit großen Zahlenunterschieden
# die Internetzugriffe simulieren sollen
# Zufallszahlen von 0 bis 1000000
internetZugriffe = np.random.randint(0, 1000000, 100)
print("Internetzugriffe: ", internetZugriffe)
# Ausgabe der log Binnings - die Grenzen sind 10er Logarithmen
plt.hist(internetZugriffe,bins=np.logspace(np.log10(0.1), np.log10(1000000.0), 50))
plt.gca().set_xscale("log")
plt.ylabel('Frequenz')
plt.xlabel('Internetzugriffe')
plt.show()
print("Internetzugriffe", internetZugriffe[:10])