您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 |

自学教程:python如何实现MK突变检验方法,代码复制修改可用

51自学网 2023-06-16 18:56:19
  python
这篇教程python如何实现MK突变检验方法,代码复制修改可用写得很实用,希望能帮到您。

需求

已知年份和历年最大冻土深度,计算最大冻土深度Mk突变检验。

原理

请添加图片描述

请添加图片描述

请添加图片描述

工具和语言

  • python
  • jupter notebook

代码过程

定义函数

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定义函数计算变量```pythondef 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

导入变量 ,形成突变检验图

51自学网自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1