2016-04-11 5 views
1

Ich habe eine Spalte in Pandas Datenrahmen:Pandas: Plot der Graph von eindeutigen Werten

df.['A']: 
1 
1 
1 
2 
2 
3 
1 
2 
3 
1 
2 
3 

Ich brauche ein Histogramm darstellen, die, wie viel zeigen, ob 1, 2 und 3 i haben. Dazu zähle ich zum einen die Menge aller 1, 2 und 3:

print df.groupby(df.index)['A'].nunique() 

aber statt

1 5 
2 4 
3 3 

i

bekommen immer
1 
1 
1 

was mein Fehler ist? und vielleicht gibt es einen besseren Weg, es ohne vorherige Extraktion der gezählten Daten zu zeichnen?

+0

Genau wie EdChum erwähnt, für die Daten Plotten Sie leicht die 'hist verwenden können() 'Methode. Wenn Sie tatsächlich die Anzahl der Werte in einer Tabelle haben wollen, können Sie 'df.A.value_counts()' verwenden. – ssm

Antwort

1

IIUC können Sie einfach df['A'].hist() nennen:

enter image description here

Dadurch wird automatisch die Frequenz der eindeutigen Werte plotten

+0

Ich bekomme einen Fehler ValueError: num muss 0 sein <= num <= 0, nicht 1 .... – Polly

+0

Es tut uns leid, dass Sie Daten und Code veröffentlichen müssen, der diesen Fehler demonstriert – EdChum