Skip to content Skip to sidebar Skip to footer

Making A Histogram Of String Values In Python

OK so I have six possible values for data to be which are '32', '22', '12', '31', '21' and '11'. I have these stored as strings. Is it possible for python to sort through the data

Solution 1:

Did you consider using collections.Counter?

# python 2.7>>> l = ['32', '22', '12', '31', '21', '11', '32']
>>> import collections
>>> collections.Counter(l)
Counter({'32': 2, '11': 1, '12': 1, '21': 1, '22': 1, '31': 1})

Solution 2:

data =  ['32', '22', '12', '32', '22', '12', '31', '21', '11']
sm = {i:0for i in ['32', '22', '12', '31', '21','11']}
for i indata:
    sm[i] += 1
print sm

Something like this?

Solution 3:

Assuming data is a list and you want to count the numbers in a bins. I will use bins as a dictionary.

bin = {'11': 0, '12': 0, '21': 0, '22': 0, '31': 0, '32': 0}

for element in data:
    if element inbin:  # Ignore other elements in data if anybin[element] = bin[element] + 1

bins dictionary will have frequency of each element in data list. Now you can use bins to plot bar graph using graph plot library. May be you can use this post to check matplotlib usage for plotting bar graph.

Post a Comment for "Making A Histogram Of String Values In Python"