java怎么判断是否为数组参数(java分位数算法)

技术Java分位点计算方法是什么本篇内容介绍了“Java分位点计算方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成

本文介绍了“什么是Java分位数计算方法”的知识。很多人在实际案件操作中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

00-101

Java 分位点(分位值)计算

给出一段时间内的PB(平均P/B比),然后选择这段时间内的某一天计算出这一天的分位数值。

这是一个简单的数理统计问题。对于毕业多年的同学,还是有必要记录下以下相关问题的计算方法。

例如:

最近的1.1-1.10的pb是(1,1,2,2,3,3,4,4,5,5),我通过了1.1。

那么返回给我的值是:0%,如果传入1.10就是100%。

00-1010注:分位数值描述:

Pn是n分位数。这意味着被调查人群中有n%的数据小于这个值。n的大小反映了市场的不同层次,通常用P10、P25、P50、P75、P90来代表市场的不同层次。

10十分值:表示有10%的数据小于这个值,反映市场的低水平。

25-十分位数值:表示有25%的数据小于这个值,反映了市场的较低水平。

50十分值:表示50%的数据小于这个值,反映市场的中等水平。

第75百分位值:意味着75%的数据小于这个值,反映了市场的更高水平。

第90百分位值:表示90%的数据小于这个值,反映了市场的高端水平。

示例:在以下示例中查找一组数据的第25百分位、第50百分位和第75百分位值:

A=【65 23 55 78 98 54 88 90 33 48 91 84】

解决方案:

方法一:

1.首先将前12个数字从小到大排序。

1 23

2 33

3 48

4 54

5 55

6 65

7 78

8 84

9 88

10 90

11 91

12 98

2到12个数字之间有11个区间,每个四分位数之间有11/4=2.75个数字。

3、

计算25分位:

第一个四分位数是上述12个数字中的第一个2.75=3.75。

指第三个数对应的值48和第三个数与第四个数之间的0.75位置,即48 (0.75)*(54-48)=52.5 (52.5为25百分位值)。

计算50分位:

第二个四分位数是上面1 2个数字中的前1个2.752=6.5。

是指第6个数字对应的值65和第6个数字与第7个数字之间的0.5位置,即65 (0.5)(78-65)=71.5 (71.5为第50百分位值)。

【中值也可以用很简单的方法计算,后从小到大排序。

如果数组中的数字个数为奇数,则中间数字对应的值为中值;

如果数组中的数字个数为偶数,中间两个数的平均值为中值,如78 ^ 65)/2=71.5所示]

计算75分位:

上述1 2个数字中的第三个四分位数是1 2.753=9。

指第9个数字对应的值88和第9个数字与第10个数字之间的0.25位置,即88 (0.25)(90-88)=88.5 (88.5为第75百分位值)。

【把1到100分成10等份,那么就有10十分位数,10十分位数和90十分位数的值可以用上面的方法计算出来。(上例中P10=34.5,P90=90.9)】

00-1010相关方法

privatedstatiddoublegetpercenter(list doubledatalist,double p){ 0

int n=DataList . size();

datalist . sort(new comparator double(){ 0

n

bsp;         //从小到大排序
            @Override
            public int compare(Double o1, Double o2) {
                if(o1 == null || o2== null){
                return 0;
                }
                return o1.compareTo(o2);
            }
        });
        double px =  p*(n-1);
        int i = (int)java.lang.Math.floor(px);
        double g = px - i;
        if(g==0){
            return dataList.get(i);
        }else{
            return (1-g)*dataList.get(i)+g*dataList.get(i+1);
        }
    }

测试接口

@RequestMapping("CalcPercentile")
    @ResponseBody
    public R CalcPercentile(@Param("per") double per){
        double[] arrs = {2,4,5,1,3,3,4,1,2,5};
        List<Double> doubleList = new ArrayList<>();
        for (double currArr : arrs) {
            doubleList.add(currArr);
        }
        double percentile = getPercentile(doubleList, per);
        return R.ok().message("查询服务数据");
    }
正常输出

输入1也就是100%,正常输出5.0,输入0.5,输出3.0

Java分位点计算方法是什么

完成需求

上面的分析是,知道百分位,求百分位对应的数值? 而我们的需求是利用样本时间里面的某个值,求对应的百分位是多少?经过查阅很多资料没有找到相关公式,当然有大佬知道可以提示一下.总归问题还是要解决的. 这边使用的解决方案是,把样本数据分成100个点,求每个百分位对应的数值,然后与样本中的目标数据一 一对比,求其最接近的那个数.就间接取到了目标数据的百分位值

核心代码

Java分位点计算方法是什么

Java 求百分位数

说明一下

百分位数,统计学术语,如果将一组数据从小到大排序,并计算相应的累计百分位,则某一百分位所对应数据的值就称为这一百分位的百分位数。可表示为:一组n个观测值按数值大小排列。如,处于p%位置的值称第p百分位数。

java代码

 public static double percentile(double[] data,double p){
  int n = data.length;
  Arrays.sort(data);
  double px =  p*(n-1);
  int i = (int)java.lang.Math.floor(px);
  double g = px - i;
  if(g==0){
   return data[i];
  }else{
   return (1-g)*data[i]+g*data[i+1];
  }
 }

“Java分位点计算方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149058.html

(0)

相关推荐

  • 递归、匿名函数及列表、字典生成式

    技术递归、匿名函数及列表、字典生成式 递归、匿名函数及列表、字典生成式递归、匿名函数及列表、字典生成式1、递归函数
    # 1、递归函数
    # 递归函数就是函数在执行的时候直接或间接的调用函数本身的函数
    ''

    礼包 2021年11月19日
  • 二阶段提交在MySQL中的广义应用是怎样的

    技术二阶段提交在MySQL中的广义应用是怎样的本篇文章给大家分享的是有关二阶段提交在MySQL中的广义应用是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看

    攻略 2021年10月25日
  • 如何用MYSQL或者ORACLE的方法管理 POSTGRESQL

    技术如何用MYSQL或者ORACLE的方法管理 POSTGRESQL这期内容当中小编将会给大家带来有关如何用MYSQL或者ORACLE的方法管理 POSTGRESQL ,文章内容丰富且以专业的角度为大家分析和叙述,阅读

    攻略 2021年10月25日
  • nodejs有哪些版本管理工具

    技术nodejs有哪些版本管理工具这篇文章主要介绍了nodejs有哪些版本管理工具,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    攻略 2021年11月11日
  • 在Ubuntu 10.10下如何安装JDK配置Eclipse及Tomcat

    技术在Ubuntu 10.10下如何安装JDK配置Eclipse及Tomcat小编给大家分享一下在Ubuntu 10.10下如何安装JDK配置Eclipse及Tomcat,希望大家阅读完这篇文章之后都有所收获,下面让我们

    攻略 2021年11月26日
  • hook的缺点(hook在大纲中什么意思)

    技术Hook的定义是什么这篇文章主要介绍“Hook的定义是什么”,在日常操作中,相信很多人在Hook的定义是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Hook的定义是什么”的疑惑有

    攻略 2021年12月23日