四分位数计算

该文章由 leevare 发布于 ,归类于 Javascript

工作上的需求,需要计算一下四分位数,这里就记录一下实现的代码。

四分位数介绍,详见百度百科

/**
 * 四分位数计算
 * @param numbers
 * @param position 传值分别对应 1:1/4位计算、2:中位数计算、3:3/4位计算
 * @returns {*}
 */
function getQuartile(numbers, position = 1) {
    if (position > 3 || position < 1 || numbers.length < 4) return false;
    const sortedNumbers = numbers.sort((a, b) => (a - b));
    const middleBefore = position * (numbers.length + 1) / 4;
    const remainder = position * (numbers.length + 1) % 4;
    if (remainder === 0) {
        return sortedNumbers[middleBefore - 1];
    } else {
        const startIndex = Math.floor(middleBefore) - 1;
        const remainderNumber = remainder / 4;
        return remainderNumber * sortedNumbers[startIndex + 1] + (1 - remainderNumber) * sortedNumbers[startIndex];
    }
}

如果觉得我的文章对您有用,请您随意打赏。您的支持将鼓励我更加努力创作!

相关文章:

说点什么

avatar
300
  Subscribe  
提醒