最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python如何實(shí)現(xiàn)MK突變檢驗(yàn)方法,代碼復(fù)制修改可用

 更新時(shí)間:2023年05月08日 10:23:10   作者:David_wangzw  
這篇文章主要介紹了python如何實(shí)現(xiàn)MK突變檢驗(yàn)方法,代碼復(fù)制修改可用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

需求

已知年份和歷年最大凍土深度,計(jì)算最大凍土深度Mk突變檢驗(yàn)。

原理

請(qǐng)?zhí)砑訄D片描述

請(qǐng)?zhí)砑訄D片描述

請(qǐng)?zhí)砑訄D片描述

工具和語(yǔ)言

  • python
  • jupter notebook

代碼過(guò)程

定義函數(shù)

def mktest(inputdata):
    import numpy as np
    inputdata = np.array(inputdata)
    n=inputdata.shape[0]
    Sk = np.zeros(n)
    UFk = np.zeros(n)
    r = 0
    for i in range(1,n):
        for j in range(i):
            if inputdata[i] > inputdata[j]:
                r = r+1
        Sk[i] = r
        E = (i+1)*i/4
        Var = (i+1)*i*(2*(i+1)+5)/72
        UFk[i] = (Sk[i] - E)/np.sqrt(Var)
    Sk2 = np.zeros(n)
    UBk = np.zeros(n)
    inputdataT = inputdata[::-1]
    r = 0
    for i in range(1,n):
        for j in range(i):
            if inputdataT[i] > inputdataT[j]:
                r = r+1
        Sk2[i] = r
        E = (i+1)*(i/4)
        Var = (i+1)*i*(2*(i+1)+5)/72
        UBk[i] = -(Sk2[i] - E)/np.sqrt(Var)
    UBk2 = UBk[::-1]
    return UFk, UBk2
定義函數(shù)計(jì)算變量
```python
def mktest(inputdata):
    import numpy as np
    inputdata = np.array(inputdata)
    n=inputdata.shape[0]
    s              =  0
    Sk = np.zeros(n)
    UFk = np.zeros(n)
    for i in range(1,n):
        for j in range(i):
            if inputdata[i] > inputdata[j]:
                s = s+1
            else:
                s = s+0
        Sk[i] = s
        E = (i+1)*(i/4)
        Var = (i+1)*i*(2*(i+1)+5)/72
        UFk[i] = (Sk[i] - E)/np.sqrt(Var)
    Sk2 = np.zeros(n)
    UBk = np.zeros(n)
    s  =  0
    inputdataT = inputdata[::-1]
    for i in range(1,n):
        for j in range(i):
            if inputdataT[i] > inputdataT[j]:
                s = s+1
            else:
                s = s+0
        Sk2[i] = s
        E = (i+1)*(i/4)
        Var = (i+1)*i*(2*(i+1)+5)/72
        UBk[i] = -(Sk2[i] - E)/np.sqrt(Var)
    UBk2 = UBk[::-1]
    return UFk, UBk2

導(dǎo)入變量 ,形成突變檢驗(yàn)圖

import matplotlib.dates as mdates    #處理日期
import matplotlib.pyplot as plt
import numpy as np
from pylab import mpl
from matplotlib.pyplot import MultipleLocator
mpl.rcParams['font.sans-serif'] = ['SimHei'] #防止標(biāo)題出現(xiàn)亂碼。
plt.rcParams['axes.unicode_minus'] = False   #防止出現(xiàn)圖上的負(fù)數(shù)為方框。
# y值和x值   分別輸入六個(gè)站點(diǎn)的最大凍土深度值,將值以列表的方式導(dǎo)入
a = [150,150,114,109,96,95,83,76,109,80,115,80,94,86,133,91,110,116,114,128,172,172,
162,121,175,151,110,92,116,156,134,110,89,97,109,157,153,105,76,87,122,78,97,93,141,162,
123,133,161,128,138,104,133,102,140,109,118,86,126,92,121,149,116]  #這個(gè)部分值可以替換成為要檢驗(yàn)的氣溫、水文等值
x_values=list(range(1961,2022))
uf,ub = mktest(a)
plt.figure(figsize=(8,4))   #圖片的大小
plt.plot(uf,'r',label='UFk')
plt.plot(ub,'b',label='UBk')
plt.xticks([0,5,10,15,20,25,30,35,40,45,50,55,60],['1960','1965','1970','1975','1980','1985','1990','1995','2000','2005','2010','2015','2020',])
#將默認(rèn)的x軸數(shù)值替換為年份的X軸,默認(rèn)是0-61,一共62個(gè)值,代表X軸內(nèi)容。
# 0.01顯著性檢驗(yàn)
plt.legend()
plt.axhline(1.96)
plt.axhline(-1.96)
#設(shè)置圖片的標(biāo)簽(標(biāo)題)
plt.title("富蘊(yùn)點(diǎn)最大凍土深度突變檢驗(yàn)結(jié)果")#x軸上的名字
plt.xlabel("年份(1960年-2022年)")#x軸上的名字
plt.ylabel("突變值波動(dòng)參數(shù)")#y軸上的名字
plt.grid() #形成網(wǎng)格線輸出
x_major_locator=MultipleLocator(5)
plt.show()

最后成圖以后的樣子。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決python執(zhí)行較大excel文件openpyxl慢問(wèn)題

    解決python執(zhí)行較大excel文件openpyxl慢問(wèn)題

    這篇文章主要介紹了解決python執(zhí)行較大excel文件openpyxl慢問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • 詳解python中的IO操作方法

    詳解python中的IO操作方法

    這篇文章主要介紹了Python實(shí)現(xiàn)IO操作的示例,是python入門必會(huì)得知識(shí)點(diǎn),將幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2022-01-01
  • python矩陣的基本運(yùn)算及各種操作

    python矩陣的基本運(yùn)算及各種操作

    python的numpy庫(kù)提供矩陣運(yùn)算的功能,因此我們?cè)谛枰仃囘\(yùn)算的時(shí)候,需要導(dǎo)入numpy的包,下面這篇文章主要給大家介紹了關(guān)于python矩陣的基本運(yùn)算及各種操作的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • pytorch-RNN進(jìn)行回歸曲線預(yù)測(cè)方式

    pytorch-RNN進(jìn)行回歸曲線預(yù)測(cè)方式

    今天小編就為大家分享一篇pytorch-RNN進(jìn)行回歸曲線預(yù)測(cè)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • 利用Python實(shí)現(xiàn)一鍵將頭像轉(zhuǎn)成動(dòng)漫風(fēng)

    利用Python實(shí)現(xiàn)一鍵將頭像轉(zhuǎn)成動(dòng)漫風(fēng)

    小編今天將為大家詳細(xì)介紹如何利用Python語(yǔ)言制作一個(gè)UI界面,大家可以通過(guò)一鍵點(diǎn)擊就實(shí)現(xiàn)頭像照片轉(zhuǎn)化成動(dòng)漫風(fēng)格的功能,感興趣的可以動(dòng)手嘗試一下
    2022-07-07
  • Python 爬蟲(chóng)多線程詳解及實(shí)例代碼

    Python 爬蟲(chóng)多線程詳解及實(shí)例代碼

    這篇文章主要介紹了Python 爬蟲(chóng)多線程詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Python可視化繪制圖表的教程詳解

    Python可視化繪制圖表的教程詳解

    python?有許多可視化工具,但本文主要為大家介紹一下Matplotlib。Matplotlib是一種2D的繪圖庫(kù),它可以支持硬拷貝和跨系統(tǒng)的交互,感興趣的可以了解一下
    2022-10-10
  • 基于opencv實(shí)現(xiàn)簡(jiǎn)單畫(huà)板功能

    基于opencv實(shí)現(xiàn)簡(jiǎn)單畫(huà)板功能

    這篇文章主要為大家詳細(xì)介紹了基于opencv實(shí)現(xiàn)簡(jiǎn)單畫(huà)板功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • Python Queue模塊詳細(xì)介紹及實(shí)例

    Python Queue模塊詳細(xì)介紹及實(shí)例

    這篇文章主要介紹了Python Queue模塊詳細(xì)介紹及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • python使用openpyxl庫(kù)修改excel表格數(shù)據(jù)方法

    python使用openpyxl庫(kù)修改excel表格數(shù)據(jù)方法

    今天小編就為大家分享一篇python使用openpyxl庫(kù)修改excel表格數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05

最新評(píng)論

合川市| 大宁县| 靖安县| 阜阳市| 横山县| 乌拉特前旗| 丹阳市| 城口县| 临桂县| 腾冲县| 大埔区| 喀什市| 陇南市| 昌平区| 哈巴河县| 潞城市| 临泉县| 安国市| 阿瓦提县| 左云县| 图片| 澄江县| 新乡市| 额尔古纳市| 永济市| 瓮安县| 恩平市| 盘山县| 甘孜县| 武安市| 韶山市| 元江| 安宁市| 库伦旗| 龙门县| 七台河市| 灯塔市| 龙山县| 镇沅| 安阳县| 呼图壁县|