Boxplot stratifiziert nach Spalte in python pandas
Ich möchte zeichnen Sie einen boxplot für folgende pandas dataframe:
> p1.head(10)
N0_YLDF MAT
0 1.29 13.67
1 2.32 10.67
2 6.24 11.29
3 5.34 21.29
4 6.35 41.67
5 5.35 91.67
6 9.32 21.52
7 6.32 31.52
8 3.33 13.52
9 4.56 44.52
Möchte ich die boxplots werden in der Spalte "N0_YLDF', aber Sie sollten stratifiziert nach "MAT". Wenn ich den foll. Befehl:
p1.boxplot(column='N0_YLDF',by='MAT')
Es nutzt alle einzigartigen MAT-Werte, die in der voll-p1 dataframe Zahl rund 15.000. Dies führt zu einer unverständlichen boxplot.
Gibt es eine Möglichkeit, ich kann die Schichten der MATTE-Werte, so dass ich eine andere boxplot der N0_YLDF für das erste Quartil der MAT-Werte und so weiter....
Dank!
Du musst angemeldet sein, um einen Kommentar abzugeben.
pandas.qcut
geben Sie die Quantile, sondern ein Histogramm, wie beispielsweise die Bedienung erfordert einigenumpy
Tricks, die in handliches kommt, hier:Den dataframe sieht nun wie folgt aus:
Es kann auch verwendet werden, um die quartils-plot:
breaks
, wenn das Grundstück zurückgegeben wird, wieax
: fügen Sie dieseax.xaxis.set_ticklabels(['%s'%val for i, val in enumerate(breaks) if i in df.Class])
, diebreaks
enthält die bin-Rand des Histogramms.Pandas hat die
cut
undqcut
Funktionen zu machen stratifying Variablen so easy:Ausgabe: