You can use value_counts and to_dict:
value_counts
to_dict
print df['status'].value_counts()N 14S 4C 2Name: status, dtype: int64counts = df['status'].value_counts().to_dict()print counts{'S': 4, 'C': 2, 'N': 14}
An alternative one liner using underdog Counter:
Counter
In [3]: from collections import CounterIn [4]: dict(Counter(df.status))Out[4]: {'C': 2, 'N': 14, 'S': 4}
You can try this way.
df.stack().value_counts().to_dict()