0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

有關(guān)中位數(shù)計(jì)算是什么

汽車電子技術(shù) ? 來源:Python數(shù)據(jù)分析之旅 ? 作者: cauwfq ? 2023-02-23 16:22 ? 次閱讀

一.項(xiàng)目背景

中位數(shù)是數(shù)理統(tǒng)計(jì)中一個(gè)重要的指標(biāo),它可以自動(dòng)忽略數(shù)據(jù)極差帶來的影響,
能夠很好的評(píng)估數(shù)據(jù),在數(shù)理統(tǒng)計(jì)中很常用。本文主要介紹在Python中和Mysql
中如何來求中位數(shù),重點(diǎn)讓大家掌握SQL計(jì)算中位數(shù),也是面試??碱}目之一。

二.實(shí)現(xiàn)過程

1.Python實(shí)現(xiàn)
》》創(chuàng)建DataFrame
》》分組計(jì)算中位數(shù)
import pandas as pd


#創(chuàng)建DataFrame
data=pd.DataFrame(
    {   'company':['A','A','A','A','B','B','B','B','B'],
        'salary':[1057,1874,2059,2268,6587,6637,6932,7415,7654]
    })
#輸出分組統(tǒng)計(jì)值
print(data.groupby('company')['salary'].median().reset_index().rename({'salary':'median_salary'},axis=1))

poYBAGP3IdSAdN0cAABAu8P4IgI697.png
2.SQL實(shí)現(xiàn)
》》統(tǒng)計(jì)字段長(zhǎng)度
》》按照奇偶長(zhǎng)度分別計(jì)算字段一半
》》按照字段排序統(tǒng)計(jì)順序
》》篩選所需字段并計(jì)算
建表語句:
mysql> create table median_val(
    -> company varchar(20),
    -> salary int)
    -> engine=innodb default charset=utf8;
Query OK, 0 rows affected, 1 warning (0.07 sec)
插入數(shù)據(jù):
mysql> insert into median_val(company,salary) values("A",1057),("A",1874),("A",2059),("A",2268),("B",7415),("B",7654),("B",6932),("B",6587),("B",6637);
Query OK, 9 rows affected (0.06 sec)
Records: 9  Duplicates: 0  Warnings: 0
計(jì)算中位數(shù):
mysql> select
    -> company,
    -> round(avg(salary),1) as median_salary
    -> from
    -> (select
    -> company,
    -> salary,
    -> count(*) over(partition by company) as num_length,
    -> row_number() over(partition by company order by salary) as ranking,
    -> count(*) over(partition by company) /2 as num_company_even,
    -> ceil(count(*) over(partition by company) /2) as num_company_odd
    -> from
    -> median_val)a
    -> where
    -> (mod(num_length,2)=0 and ranking in (num_length/2,num_length/2+1))
    -> or
    -> (mod(num_length,2)=1 and ranking=ceil(num_length/2))
    -> group by
    -> company;
+---------+---------------+
| company | median_salary |
+---------+---------------+
| A       |        1966.5 |
| B       |        6932.0 |
+---------+---------------+
2 rows in set (0.00 sec)
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    793

    瀏覽量

    26353
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4758

    瀏覽量

    84292
  • 位數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    2362
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TC377波特率計(jì)算是否與幀大小有關(guān)?

    brZ 如圖 471 所示, 我想知道這個(gè)波特率計(jì)算是否與幀大小有關(guān)? 例如,4 位幀、8 位幀、32 位幀?波特率是指一幀/秒嗎? 對(duì)于 32 位幀,它是 32 位/秒?
    發(fā)表于 01-22 06:29

    有關(guān)中斷代碼的疑問

    有關(guān)中斷代碼的疑問當(dāng)我用op_intrpt_schedule_self(time,code)時(shí),這個(gè)中斷碼是不是自己隨便定義的啊,隨便是整型數(shù)幾都可以?以前一直這么理解的,但結(jié)果一直不對(duì),仔細(xì)看才
    發(fā)表于 06-14 18:01

    請(qǐng)問stm32的計(jì)算是不是都由FPU來完成?

    stm32的計(jì)算是不是都由FPU來完成? 如果不是什么情況下由FPU來算什么情況下有內(nèi)核來算。
    發(fā)表于 09-11 09:32

    stm32的計(jì)算是不是都由FPU來完成?

    請(qǐng)問stm32的計(jì)算是不是都由FPU來完成?如果不是什么情況下由FPU來算什么情況下有內(nèi)核來算。
    發(fā)表于 10-18 16:28

    請(qǐng)問能否講解有關(guān)中斷向量表的知識(shí)?

    能否講解下有關(guān)中斷向量表的知識(shí)
    發(fā)表于 05-17 01:13

    邊緣計(jì)算是指什么?邊緣計(jì)算的最大優(yōu)勢(shì)是什么

      邊緣計(jì)算是指在生成或收集物聯(lián)網(wǎng)(IoT)數(shù)據(jù)的網(wǎng)絡(luò)“邊緣”處或附近發(fā)生的處理。結(jié)合使用邊緣計(jì)算和邊緣分析(包括人工智能和機(jī)器學(xué)習(xí))的公司,可以獲取有價(jià)值的實(shí)時(shí)洞察,從而獲得競(jìng)爭(zhēng)優(yōu)勢(shì)?!   ∵吘?/div>
    發(fā)表于 07-12 07:18

    量子計(jì)算是什么

    量子計(jì)算是一種遵循量子力學(xué)規(guī)律調(diào)控量子信息單元進(jìn)行計(jì)算的新型計(jì)算模式。對(duì)照于傳統(tǒng)的通用計(jì)算機(jī),其理論模型是通用圖靈機(jī);通用的量子計(jì)算機(jī),其理
    的頭像 發(fā)表于 11-04 10:23 ?2.7w次閱讀

    巨頭們開始角逐邊緣計(jì)算是出于怎樣的目的

    計(jì)算是計(jì)算服務(wù)的集中化,以最簡(jiǎn)單的形式利用共享數(shù)據(jù)中心基礎(chǔ)設(shè)施和規(guī)模經(jīng)濟(jì)來降低成本。
    發(fā)表于 09-20 09:15 ?731次閱讀

    邊緣計(jì)算是什么?與ARM和云計(jì)算有什么關(guān)系

    提到邊緣計(jì)算就不得不提一下云計(jì)算。所謂的云計(jì)算是指的是通過網(wǎng)絡(luò)“云”,將龐大的數(shù)據(jù)處理程序被分解成無數(shù)的小程序,然后由多個(gè)服務(wù)器組成的系統(tǒng)對(duì)結(jié)果進(jìn)行處理和分析,并返回給用戶。在云計(jì)算
    的頭像 發(fā)表于 11-06 16:36 ?4094次閱讀

    計(jì)算是保護(hù)數(shù)據(jù)的關(guān)鍵嗎?

    計(jì)算是如此強(qiáng)大,因?yàn)槠髽I(yè)控制某些人可以訪問什么數(shù)據(jù)。企業(yè)不僅可以通過密碼保護(hù)云本身,也可以通過密碼保護(hù)云計(jì)算的不同區(qū)域。
    發(fā)表于 06-20 11:27 ?607次閱讀

    AI邊緣計(jì)算是什么,為什么5G的發(fā)展離不開它

    邊緣計(jì)算是計(jì)算的補(bǔ)充和優(yōu)化。如果說云計(jì)算是“云”化的數(shù)據(jù)集中處理,那么邊緣計(jì)算可以理解為在邊緣和靠近終端(如屏幕、傳感器等智能設(shè)備)的位置進(jìn)行數(shù)據(jù)處理。在許多情況下,邊緣
    發(fā)表于 05-07 17:30 ?487次閱讀

    邊緣計(jì)算是個(gè)啥東西

    在互聯(lián)網(wǎng)時(shí)代,每天都有新的概念誕生。就像今天提到的邊緣計(jì)算。邊緣計(jì)算,與云計(jì)算,是同一個(gè)體系下的相對(duì)概念。他們的標(biāo)準(zhǔn)化概念各位可以自行百度,通俗的來講,云計(jì)算是公用大腦,邊緣
    發(fā)表于 05-18 14:44 ?0次下載
    邊緣<b class='flag-5'>計(jì)算是</b>個(gè)啥東西

    介紹一種基于中位數(shù)的離群值檢測(cè)方法

    Hampel濾波器是一種基于中位數(shù)的離群值檢測(cè)方法,它可以用于消除在數(shù)據(jù)中存在的離群值。
    的頭像 發(fā)表于 06-20 17:13 ?1920次閱讀
    介紹一種基于<b class='flag-5'>中位數(shù)</b>的離群值檢測(cè)方法

    AI邊緣計(jì)算是什么意思?邊緣ai是什么?AI邊緣計(jì)算應(yīng)用

    AI邊緣計(jì)算是什么意思?邊緣ai是什么?AI邊緣計(jì)算應(yīng)用? 隨著人工智能技術(shù)的不斷發(fā)展,邊緣計(jì)算作為一種新型的計(jì)算模式逐漸成為熱門話題。AI邊緣計(jì)算
    的頭像 發(fā)表于 08-24 15:18 ?1907次閱讀

    SOLIDWORKS仿真計(jì)算是什么意思?

    SOLIDWORKS仿真計(jì)算是指利用SOLIDWORKS軟件進(jìn)行工程設(shè)計(jì)和分析時(shí)所使用的計(jì)算方法和技術(shù)。SOLIDWORKS是一款流行的三維計(jì)算機(jī)輔助設(shè)計(jì)(CAD)軟件,它提供了豐富的工具和功能,使工程師能夠創(chuàng)建和模擬各種產(chǎn)品和
    的頭像 發(fā)表于 09-06 15:42 ?1496次閱讀
    SOLIDWORKS仿真<b class='flag-5'>計(jì)算是</b>什么意思?