Count the occurrences of each character in a alpha-numeric column in a DataFrame

Question:

I have a alpha-numeric column in a DataFrame. I would like get the total count of each characters(0-9, A-Z) occurs in the entire column.

e.g.

Serial
03000395
A000458B
667BC345

Desired Output

Character     Counts
0             7
1             0
2             0
3             3
.
.
A             1
B             2
C             1
..
Z
Asked By: Suresh Sridharan

||

Answers:

You can use Counter to get this

from collections import Counter
Counter('03000395 A000458B 667BC345)

Output:

Counter({'0': 7,
         '3': 3,
         '9': 1,
         '5': 3,
         ' ': 2,
         'A': 1,
         '4': 2,
         '8': 1,
         'B': 2,
         '6': 2,
         '7': 1,
         'C': 1})

EDIT: After clarifying comments about this being in a dataframe you can do this:

pd.DataFrame(df.Serial.value_counts()).reset_index().rename({'index':'Character','Serial':'Count'})

EDIT2: After even further clarification, I think this is what you want

counts = dict(Counter(''.join(df.Serial)))
pd.DataFrame({"Character":counts.keys(), "Count":counts.values()})
Answered By: CumminUp07
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.