Javascript 计算众数和中位数的代码
先介绍一下众数和中位数:
众数:
一般来说,一组数据中,du出现次数最多的数就叫这组数据的众数。
例如:zhi2,3,3,3,4,5的众数是dao3。
中位数:
把一组数据按从小到大的数序排列,在中间的一个数字(或两个数字的平均值)叫做这组数据的中位数。
如果总数个数是奇数的话,按从小到大的顺序,取中间的那个数。
如果总数个数是偶数个的话,按从小到大的顺序,取中间那两个数的平均数。
扩展资料:
用众数代表一组数据,可靠性较差,不过,众数不受极端数据的影响,并且求法简便。在一组数据中,如果个别数据有很大的变动,选择中位数表示这组数据的“集中趋势”就比较适合。
当数值或被观察者没有明显次序(常发生于非数值性资料)时特别有用,由于可能无法良好定义算术平均数和中位数。
例子:{鸡、鸭、鱼、鱼、鸡、鱼}的众数是鱼。
众数算出来是销售最常用的,代表最多的。
平均数是通过计算得到的,因此它会因每一个数据的变化而变化。
中位数是通过排序得到的,它不受最大、最小两个极端数值的影响。部分数据的变动对中位数没有影响,当一组数据中的个别数据变动较大时,常用它来描述这组数据的集中趋势。
众数也是数据的一种代表数,反映了一组数据的集中程度.日常生活中诸如“最佳”、“最受欢迎”、“最满意”等,都与众数有关系,它反映了一种最普遍的倾向。
参考资料来源:百度百科——众数
参考资料来源:百度百科——中位数
好,下面贴代码:
//定义一个函数(冒泡排序) function bubbleSort(arr) {var len = arr.length;for (var i = 0; i < len - 1; i++) {for (var j = 0; j < len - 1 - i; j++) {if (arr[j] > arr[j+1]) { // 相邻元素两两对比var temp = arr[j+1]; // 元素交换arr[j+1] = arr[j];arr[j] = temp;}}}return arr; } //定义一个函数(计算众数和中位数) function zzs(numbers){ var ns={};// var max=0; var zs=[];//众数 var zhs = null;//中数 //统计出现次数 for(var i in numbers){var j = numbers[i];if(!ns[j]) ns[j] = 0;ns[j]++; } //console.log(ns) //找众数的值 for(var i in ns){var j = ns[i];if(j>max)max=j; } //console.log(max)//找众数名称 for(var i in ns){var j = ns[i];if(j==max)zs[zs.length]=i; } //console.log(zs)//调用函数(冒泡) numbers = bubbleSort(numbers); console.log('排序后:',numbers);var zz_wz =null; if(numbers.length%2!=0){//奇数zz_wz =(numbers.length+1)/2;zhs = numbers[zz_wz]; }else{zz_wz = numbers.length / 2;zhs = (numbers[zz_wz] + numbers[zz_wz-1])/2; } //直接打印,也可以改成返回结果。 console.log('中数是:'+zhs); console.log('众数是:'+zs); } //调用函数 var numbers = [20,14,19,20,6,18,14,10,20,19]; zzs(numbers);//调用函数 var numbers = [20,14,19,20,6,18,14,10,20,19,19]; zzs(numbers);
以下是运行结果:
排序后:
Array(10) [ 6, 10, 14, 14, 18, 19, 19, 20, 20, 20 ]
debugger eval code:44:9
中数是:18.5 debugger eval code:57:9
众数是:20 debugger eval code:58:9
排序后:
Array(11) [ 6, 10, 14, 14, 18, 19, 19, 19, 20, 20, 20 ]
debugger eval code:44:9
中数是:19 debugger eval code:57:9
众数是:19,20
Javascript 计算众数和中位数的代码相关推荐
- Python | Pandas | 统计学分析:众数、中位数、偏度等
Last Modified: 2022/1/20 #todo: python 计算众数.中位数.分位数.偏度.峰度 Python | Pandas | 统计学分析 前言 参考链接 前言 参考链接 本文 ...
- 一维数组实验题:计算平均数、中位数和众数 在调查数据分析(Survey data analysis)中经常需要计算平均数、中位数和众数。用函数编程计算40个输入数据(是取值1—10之间的任意整数)的平
一维数组实验题:计算平均数.中位数和众数 在调查数据分析(Survey data analysis)中经常需要计算平均数.中位数和众数.用函数编程计算40个输入数据(是取值1-10之间的任意整数)的平 ...
- C++编程计算平均数、众数和中位数,可以快速解决计算问题
说明 求N个整数的平均数,众数和中位数. 小知识: 众数 如有9个数:17 13 17 9 17 17 3 16 17 17出现的次数最多,即为这组数的众数. 此题保证众数是唯一的. 中位数 如有9个 ...
- 华为OD机试 -众数和中位数(Java) | 机试题+算法思路+考点+代码解析 【2023】
众数和中位数 题目 众数是指一组数据中出现次数多的数 众数可以是多个 中位数是指把一组数据从小到大排列,最中间的那个数, 如果这组数据的个数是奇数,那最中间那个就是中位数 如果这组数据的个数为偶数,那 ...
- 华为机试:查找众数及中位数
一道华为od机试的简单题. 查找众数及中位数 题目描述 1.众数是指一组数据中出现次数量多的那个数,众数可以是多个 2.中位数是指把一组数据从小到大排列,最中间的那个数,如果这组数据的个数是奇数,那最 ...
- JzxxOJ 1180: 【入门】求N个整数的平均数、众数和中位数
求N个整数的平均数.众数和中位数 题目描述 求N个整数的平均数,众数和中位数. 输入 第一行为整数N(5 <= N <= 10000 ) 第二行为空格隔开的N个数Ai(0 <= Ai ...
- html 表格自动计算,HTML表格中的JavaScript计算
我是 JavaScript的新手,所以我甚至不知道这是否是尝试这个的正确语言,但我想我会尝试.我已经阅读了其他几篇文章,我找不到真正让我知道如何做到这一点的东西,所以我在这里问.我读过的所有例子都涉及 ...
- JS、javascript计算两个时间差
其实,javascript计算时间差的方式非常简单,如果是默认的Date()类型,直接相减就是相差的毫秒数. Date型 var d1 = new Date('2016/03/28 10:17:22' ...
- 整数序列中的众数和中位数
描述 输入无符号整数序列(不多于500个整数,每个整数不大于150),计算序列的众数和中位数. 众数是指出现次数最多的那个数:如果有多个数出现的次数都达到最多,则取最先出现的数为众数:如果所有的数都相 ...
最新文章
- byte endian(biglittle endian)
- Visual Studio Code 配置 Markdown
- RxJava 教程第一部分:入门之 关键的类
- java中取得上下文路径的方法
- Excel 数据导入到Access数据库,报错“找不到可安装的ISAM”的解决办法
- php 中文转成url,php字符转URL地址的函数
- python字典循环添加元素_牛鹭学院:学员笔记|python字典、列表、循环
- android cmd里查看systemapp剩余空间不足,解决emui系统内部存储空间不足的办法
- python 获取对象类型_python Class:获取对象类型
- JS验证身份证、营业执照、组织机构代码等
- css3的过度,transition
- linux 卸载yum源,CentOS下rpm包与yum安装与卸载更新系统源
- 高效办公之思维导图半小时从入门与精通(Xmind2020版)
- 东北大学第二场算法题解报告
- 如何甄选出一个优秀的软件供应商?by彭文华
- 第一次亲密接触——二狗子初识 CDN
- Linux中的defunct进程(僵尸进程)
- wmware网络模式
- frame/frameset/iframe的区别
- 指针类型和指向的数据类型