Reputation: 1190
I have the following code which produces this:
print([x.to_list() for x in a])
[['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday', 'Thursday'], ['Thursday', 'Monday'], ['Friday'], ['Wednesday', 'Thursday'], ['Monday'], ['Monday'], ['Monday'], ['Tuesday', 'Thursday'], ['Tuesday'], ['Tuesday'], ['Wednesday'], ['Wednesday'], ['Monday'], ['Thursday'], ['Monday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Thursday'], ['Monday'], ['Monday'], ['Friday'], ['Tuesday'], ['Monday'], ['Monday'], ['Thursday']]
What i want to do is count the number of each days. So which day is in this list how many times.
a
produces this:
[Index(['Wednesday'], dtype='object', name='Date'),
Index(['Friday'], dtype='object', name='Date'),
Index(['Tuesday'], dtype='object', name='Date'),
Index(['Wednesday'], dtype='object', name='Date'),
Index(['Monday'], dtype='object', name='Date'),
Index(['Wednesday'], dtype='object', name='Date'),
Index(['Friday'], dtype='object', name='Date'),
Index(['Tuesday'], dtype='object', name='Date'),
Index(['Wednesday', 'Thursday'], dtype='object', name='Date'),
Index(['Thursday', 'Monday'], dtype='object', name='Date'),
Index(['Friday'], dtype='object', name='Date'),
which i why i tried to turn it in to a list.
Upvotes: 0
Views: 189
Reputation: 614
You can do this
dict = {'Monday' : 0,
'Tuesday' : 0,
'Wednesday' : 0,
'Thursday' : 0,
'Friday' : 0,
'Saturday' : 0,
'Sunday' : 0
}
days=[['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday', 'Thursday'], ['Thursday', 'Monday'], ['Friday'], ['Wednesday', 'Thursday'], ['Monday'], ['Monday'], ['Monday'], ['Tuesday', 'Thursday'], ['Tuesday'], ['Tuesday'], ['Wednesday'], ['Wednesday'], ['Monday'], ['Thursday'], ['Monday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Thursday'], ['Monday'], ['Monday'], ['Friday'], ['Tuesday'], ['Monday'], ['Monday'], ['Thursday']]
for day in days:
for item in day:
if(item=='Monday'):
dict['Monday']+=1
elif(item=='Tuesday'):
dict['Tuesday']+=1
elif(item=='Wednesday'):
dict['Wednesday']+=1
elif(item=='Thursday'):
dict['Thursday']+=1
elif(item=='Friday'):
dict['Friday']+=1
elif(item=='Saturday'):
dict['Saturday']+=1
elif(item=='Sunday'):
dict['Sunday']+=1
print(dict)
Upvotes: 1
Reputation: 415
lst = [['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday', 'Thursday'], ['Thursday', 'Monday'], ['Friday'], ['Wednesday', 'Thursday'], ['Monday'], ['Monday'], ['Monday'], ['Tuesday', 'Thursday'], ['Tuesday'], ['Tuesday'], ['Wednesday'], ['Wednesday'], ['Monday'], ['Thursday'], ['Monday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Thursday'], ['Monday'], ['Monday'], ['Friday'], ['Tuesday'], ['Monday'], ['Monday'], ['Thursday']]
d = {}
for i in lst:
for j in i:
d[j] = d.get(j, 0)+1
print(d)
Output:
{'Wednesday': 9, 'Friday': 4, 'Tuesday': 6, 'Monday': 12, 'Thursday': 7}
Upvotes: 2
Reputation: 145
from collections import Counter
l = [['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Friday'], ['Tuesday'], ['Wednesday', 'Thursday'], ['Thursday', 'Monday'], ['Friday'], ['Wednesday', 'Thursday'], ['Monday'], ['Monday'], ['Monday'], ['Tuesday', 'Thursday'], ['Tuesday'], ['Tuesday'], ['Wednesday'], ['Wednesday'], ['Monday'], ['Thursday'], ['Monday'], ['Wednesday'], ['Monday'], ['Wednesday'], ['Thursday'], ['Monday'], ['Monday'], ['Friday'], ['Tuesday'], ['Monday'], ['Monday'], ['Thursday']]
Counter([x for sublist in l for x in sublist])
Out:
Counter({'Wednesday': 9,
'Friday': 4,
'Tuesday': 6,
'Monday': 12,
'Thursday': 7})
You can access the items inside Counter like a usual dictionary.
Upvotes: 2