ich eine CDF mit NumPy erstellen möchten, ist mein Code die nächste:Wie bekomme ich die kumulative Verteilungsfunktion mit NumPy?
histo = np.zeros(4096, dtype = np.int32)
for x in range(0, width):
for y in range(0, height):
histo[data[x][y]] += 1
q = 0
cdf = list()
for i in histo:
q = q + i
cdf.append(q)
ich durch das Feld gehe aber eine lange Zeit, um die Programmausführung nehmen. Es gibt eine eingebaute Funktion mit dieser Funktion, nicht?
Dies führt jedoch einen Binning-Schritt ein, der für eine kumulative Verteilung nicht erforderlich wäre. –
"Dieses Schlüsselwort, genormt 'ist in Numpy 1.6 wegen des verwirrenden/fehlerhaften Verhaltens veraltet. Es wird in Numpy 2.0 entfernt." Es gibt einen Fehler im Code, wenn' bin 'nicht in '[0,1]' ist. Füge x = np.cumsum (hist) hinzu; x = (x - x.min())/x.ptp() – Shaowu