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操作MySQL数据库具体方法
Oct 28 Python
Python科学计算环境推荐——Anaconda
Jun 30 Python
python使用Tkinter显示网络图片的方法
Apr 24 Python
Python实现将不规范的英文名字首字母大写
Nov 15 Python
详解Python中如何写控制台进度条的整理
Mar 07 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
Python可视化mhd格式和raw格式的医学图像并保存的方法
Jan 24 Python
python for 循环获取index索引的方法
Feb 01 Python
python 自动批量打开网页的示例
Feb 21 Python
PyQt5实现简单数据标注工具
Mar 18 Python
keras训练浅层卷积网络并保存和加载模型实例
Jul 02 Python
python解包用法详解
Feb 17 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与C#的值类型指向区别的详解
2013/05/21 PHP
php中AES加密解密的例子小结
2014/02/18 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
2019/10/16 PHP
JQuery从头学起第二讲
2010/07/04 Javascript
Javascript获取窗口(容器)的大小及位置参数列举及简要说明
2012/12/09 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
2014/09/02 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
解析javascript中鼠标滚轮事件
2015/05/26 Javascript
javascript 数组的定义和数组的长度
2016/06/07 Javascript
Bootstrap table学习笔记(2) 前后端分页模糊查询
2017/05/18 Javascript
解决js ajax同步请求造成浏览器假死的问题
2018/01/18 Javascript
Vue自定义指令封装节流函数的方法示例
2018/07/09 Javascript
ES6实现图片切换特效代码
2020/01/14 Javascript
Nodejs在局域网配置https访问的实现方法
2020/10/17 NodeJs
一篇文章让你搞懂JavaScript 原型和原型链
2020/11/23 Javascript
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
使用Python爬取最好大学网大学排名
2018/02/24 Python
python实现拓扑排序的基本教程
2018/03/11 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
Python使用Shelve保存对象方法总结
2019/01/28 Python
Python基于scipy实现信号滤波功能
2019/05/08 Python
详解pyppeteer(python版puppeteer)基本使用
2019/06/12 Python
python检测服务器端口代码实例
2019/08/31 Python
python爬虫线程池案例详解(梨视频短视频爬取)
2021/02/20 Python
接口中的方法可以是abstract的吗
2015/07/23 面试题
外科实习自我鉴定
2013/10/06 职场文书
工程造价自荐信
2013/10/09 职场文书
教师求职自荐书
2014/06/14 职场文书
中层干部考核评语
2015/01/04 职场文书
4S店客服专员岗位职责
2015/04/07 职场文书
跑吧孩子观后感
2015/06/10 职场文书
法院执行局工作总结
2015/08/11 职场文书
2016教师暑期培训学习心得体会
2016/01/09 职场文书
MySQL中日期型单行函数代码详解
2021/06/21 MySQL