Hallo Zusammen,
für eine statische Auswertung, habe ich mir ein m x n Matrix erstellt. Die Werte sind Integer.
Ich würde gerne eine Häufigkeitsverteilung machen, sprich welcher Wert wie of vor kommt.
Die Matrix liegt als Numpy Array vor.
Es ist mein erstes Projekt mit Python und bin für einen guten Tipp immer dankbar.
Gruß
Harald
Häufigkeitsverteilung im Numpy Array
Hallo EyDu,
vielen Dank, genau das hatte ich gesucht.
Zum Syntax hätte ich noch eine Frage:
Scipy habe geladen mit:
im Script aufgerufen mit:
Warum werden Scipy Funktionen nicht aufgerufen wie in Numpy, also so:
Hätte: nicht auch funktionieren müssen?
vielen Dank, genau das hatte ich gesucht.
Zum Syntax hätte ich noch eine Frage:
Scipy habe geladen mit:
Code: Alles auswählen
import scipy as sp
Code: Alles auswählen
m1=stats.itemfreq(m)
Code: Alles auswählen
import numpy as np
m=np.ones((len(a1),7))
Code: Alles auswählen
m1=sp.stats.itemfreq(m)
Eine Frage noch der von "stats.itemfreq(m)" erzeugten Array.
Dieses Array würde ich gerne nach der Häufigkeit mit dem dazugehörigen Element sortieren.
Da ich bisher nichts passenden gefunden habe, würde ich es erstmal so probieren:
* ein Spaltenvektor aus m1[:,1] machen
* diesen mit np.sort(x) der Größe nach sortieren
* dann mit For-Schleifen den passenden Wert in m1[:,0] suchen und die Matrix neu aufbauen
Gibt es vielleicht etwas passendes hierfür?
Dieses Array würde ich gerne nach der Häufigkeit mit dem dazugehörigen Element sortieren.
Da ich bisher nichts passenden gefunden habe, würde ich es erstmal so probieren:
* ein Spaltenvektor aus m1[:,1] machen
* diesen mit np.sort(x) der Größe nach sortieren
* dann mit For-Schleifen den passenden Wert in m1[:,0] suchen und die Matrix neu aufbauen
Gibt es vielleicht etwas passendes hierfür?
Ich kann den Output von "numpy.argsort¶" nicht deuten:
Im Manual finde ich folgendes: It returns an array of indices of the same shape as a that index data along the given axis in sorted order.
Was ist denn mit der Achse gemeint?
Beim Beispiel: "x = np.array([3,1,2,4,7])"
np.argsort(x)
bekomme ich ein Output von: "array([1, 2, 0, 3, 4])"
Nach welchen Kriterium wurden die Indizes vergeben?
Im Manual finde ich folgendes: It returns an array of indices of the same shape as a that index data along the given axis in sorted order.
Was ist denn mit der Achse gemeint?
Beim Beispiel: "x = np.array([3,1,2,4,7])"
np.argsort(x)
bekomme ich ein Output von: "array([1, 2, 0, 3, 4])"
Nach welchen Kriterium wurden die Indizes vergeben?