2017-06-05 3 views
1

Ich habe eine Spalte in Pandas Datenframe Column_values genannt. Ich möchte, um ein Histogramm auf diese Werte wie folgt machen:Histogramm auf Pandas Spalten durch Gruppieren von Zellen

  1. Gruppierung der Zellen von alphabetic characters
  2. Gruppierung der Zellen von alpha numeric chacaters
  3. die Zellen Gruppierung, die nur digits and special chars , ;/.

Hier enthält, ist mein Spalte

Column_values 
hello 
goodmorning 
6,35 
11,68 
Yours 
ok 
2292 
Question 
number 
those 
937,99 
and 
1 
620 
amounts 
ROB21 
Pieces 
designation 
these 
rates 
13s 
2 
with 
the 

Danke

Antwort

1

Zuerst müssen Sie die Gruppe mithilfe einer Zuordnungsfunktion erstellen und anschließend das Histogramm grafisch darstellen. Die Funktion ist Mapping von Zustand - in Ihrem Fall:

def find_group(val): 
    val = str(val) 
    if val.isalpha(): 
     return 'Alpha' 
    elif val.isalnum and any(c.isalpha() for c in val): 
     return 'Alphanumeric' 
    else: 
     return 'Special' 

die Transformation von Pandas mit apply-Methode:

df.Column_values.apply(find_group) 

und das Plotten ist durch Zugabe von value_counts und Handlungsmethoden:

df.Column_values.apply(find_group).value_counts().plot(kind='bar') 
+1

Was macht Spaß in Anwendung (Spaß)? du meinst df.Column_values.apply (find_group) .value_counts(). plot (kind = 'bar') – vincent75

+0

was ist, wenn wir nur val.isalnum() statt elif val.isalnum und any (c.isalpha() für c in val): zurück 'alphanumerisch'? seit isalnum() prüft, ob es alphanumerisch ist oder nicht? – vincent75

+0

das könnte ein Problem sein, da nur Zahlen (zB '987') True zurückgeben – Dimgold

Verwandte Themen