python求众数问题实例


Posted in Python onSeptember 26, 2014

本文实例讲述了python求众数问题的方法,是一个比较典型的应用。分享给大家供大家参考。具体如下:

问题描述:

多重集中重数最大的元素称为众数...就是一个可以有重复元素的集合,在这个集合中重复的次数最多的那个数就叫它的众数...
如S = [1,2,2,2,3,5] 重数是2,其重数为3

实例代码如下:

list_num = []
list_num_count = 0
dict_num ={}
#从文件读入,文件第一行为集合中元素的个数,以后每一行为一个元素
list_num_count = int(open('input.txt','r').readline())
for line_num, line in enumerate(open("input.txt",'r')):
  if line_num > 0:
    list_num += line.split()
#将读到的元素加入的字典中
for item in list_num:
  if dict_num.has_key(item):
    dict_num[item] += 1
  else:
    dict_num.setdefault(item,1)
  pass

#找到出现次数最多的那个数,找到重数
dict_sort_by_top = {}
top_value = 0
for valus in dict_num.itervalues():
  if valus> top_value:
    top_value = valus
  pass

#根据重数找到众数...这是因为考虑到可能有多个元素有相同多的重数
the_pop_num = 0
the_pop_num_count = 0
for keys,values in dict_num.iteritems():
  if values == top_value:
    print 'the pop num is %s,and the appear num is %s' % (keys,values)
    the_pop_num = keys
    the_pop_num_count = values
#输出到文件,第一行为从数,第二行为重数
write_line = '%s\n%s' %(the_pop_num, the_pop_num_count)
open("output.txt",'w').write(write_line)

这里假设有同级目录文件input.txt内容如下:

8
11
37
2
37
2
45
99
37

第一行的8代表元素个数,其后每一行有一个元素。

测试环境为Python2.7.6,

Python程序针对input.txt文件操作的运行结果如下:

the pop num is 37,and the appear num is 3

同时生成output.txt文件记录了众数37及其重复次数3。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python天气预报采集器实现代码(网页爬虫)
Oct 07 Python
Python数据类型详解(二)列表
May 08 Python
基于Python_脚本CGI、特点、应用、开发环境(详解)
May 23 Python
python2.7+selenium2实现淘宝滑块自动认证功能
Feb 24 Python
python3实现小球转动抽奖小游戏
Apr 15 Python
Python网络编程之使用TCP方式传输文件操作示例
Nov 01 Python
python颜色随机生成器的实例代码
Jan 10 Python
python add_argument()用法解析
Jan 29 Python
python之MSE、MAE、RMSE的使用
Feb 24 Python
python - asyncio异步编程
Apr 06 Python
浅谈Python 中的复数问题
May 19 Python
Python3的进程和线程你了解吗
Mar 16 Python
python字典序问题实例
Sep 26 #Python
python计算书页码的统计数字问题实例
Sep 26 #Python
python实现从web抓取文档的方法
Sep 26 #Python
python实现udp数据报传输的方法
Sep 26 #Python
python使用Berkeley DB数据库实例
Sep 26 #Python
python实现通过shelve修改对象实例
Sep 26 #Python
python实现在pickling的时候压缩的方法
Sep 25 #Python
You might like
php获取当前url地址的方法小结
2017/01/10 PHP
php指定长度分割字符串str_split函数用法示例
2017/01/30 PHP
php操作redis常见方法示例【key与value操作】
2020/04/14 PHP
Jquery css函数用法(判断标签是否拥有某属性)
2011/05/28 Javascript
在js(jquery)中获得文本框焦点和失去焦点的方法
2012/12/04 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
2014/06/10 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
Angularjs中UI Router全攻略
2016/01/29 Javascript
jquery实现点击页面回到顶部
2016/11/23 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
vue+iview实现分页及查询功能
2020/11/17 Vue.js
[00:14]护身甲盾
2019/03/06 DOTA
在python中的socket模块使用代理实例
2014/05/29 Python
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
Python发送form-data请求及拼接form-data内容的方法
2016/03/05 Python
用python实现对比两张图片的不同
2018/02/05 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
python移位运算的实现
2019/07/15 Python
利用pyecharts实现地图可视化的例子
2019/08/12 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
2020/03/12 Python
Python使用for生成列表实现过程解析
2020/09/22 Python
10张动图学会python循环与递归问题
2021/02/06 Python
快速实现一个简单的canvas迷宫游戏的示例
2018/07/04 HTML / CSS
新加坡网上花店:FlowerAdvisor新加坡
2018/10/05 全球购物
婚礼证婚人证婚词
2014/01/13 职场文书
民事诉讼代理授权委托书范本
2014/10/08 职场文书
社区六一儿童节活动总结
2015/02/11 职场文书
护士个人年终总结
2015/02/13 职场文书
优秀范文:读《红岩》有感3篇
2019/10/14 职场文书
用Python的绘图库(matplotlib)绘制小波能量谱
2021/04/17 Python
浅谈golang package中init方法的多处定义及运行顺序问题
2021/05/06 Golang
python中%格式表达式实例用法
2021/06/18 Python