python中怎么對(duì)列表以區(qū)間進(jìn)行統(tǒng)計(jì)?
問(wèn)題描述
python中怎么對(duì)列表以區(qū)間進(jìn)行統(tǒng)計(jì)?假設(shè)list=[1,1,1,2,3,4,4,5,5,6,7,7,7,7,8,9,9,9,10……99,99,99,100,100]
怎么寫程序可以以10為一個(gè)區(qū)間分別統(tǒng)計(jì),如統(tǒng)計(jì)出小于10的數(shù)字頻率,大于10小于20的頻率,大于20小于30的頻率……大于90小于100的頻率?抱歉題目描述的不好
問(wèn)題解答
回答1:# code for python3from itertools import groupbylst = [1, 1, 1, 2, 3, 4, 4, 5, 5, 6, 7, 7, 7, 7, 8, 9, 9, 9, 10, 99, 99, 99, 100, 100]dic = {}for k, g in groupby(lst, key=lambda x: (x-1)//10): dic[’{}-{}’.format(k*10+1, (k+1)*10)] = len(list(g)) print(dic)
結(jié)果:
{’91-100’: 5, ’1-10’: 19}
我回答過(guò)的問(wèn)題: Python-QA
回答2:# coding: utf-8lst = [1, 1, 1, 2, 3, 4, 4, 5, 5, 6, 7, 7, 7, 7, 8, 9, 9, 9, 10, 99, 99, 99, 100, 100]intervals = {’{0}-{1}’.format(10 * x + 1, 10 * (x + 1)): 0 for x in range(10)}for _ in lst: for interval in intervals:start, end = tuple(interval.split(’-’))if int(start) <= _ <= int(end): intervals[interval] += 1print intervals
相關(guān)文章:
1. python - oslo_config2. python - 請(qǐng)問(wèn)這兩個(gè)地方是為什么呢?3. mysql優(yōu)化 - mysql 一張表如果不能確保字段列長(zhǎng)度一致,是不是就不需要用到char。4. javascript - 按鈕鏈接到另一個(gè)網(wǎng)址 怎么通過(guò)百度統(tǒng)計(jì)計(jì)算按鈕的點(diǎn)擊數(shù)量5. python2.7 - python 正則前瞻 后瞻 無(wú)法匹配到正確的內(nèi)容6. 請(qǐng)教一個(gè)mysql去重取最新記錄7. 大家都用什么工具管理mysql數(shù)據(jù)庫(kù)?8. 人工智能 - python 機(jī)器學(xué)習(xí) 醫(yī)療數(shù)據(jù) 怎么學(xué)9. mysql - Sql union 操作10. php - 有關(guān)sql語(yǔ)句反向LIKE的處理
