爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 14756|回复: 5

[求助] python做滑动相关分析有对应的函数可以调用吗?

[复制链接]

新浪微博达人勋

发表于 2019-8-25 22:25:10 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
大家用python做滑动相关分析都是怎么处理的呢?求指教呀。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2019-8-26 17:14:28 | 显示全部楼层
我自己写的,按照公式做的11年滑动相关,公式家园里有人发过。
sliding_corr=np.zeros(29)
for i in range(29):
    fenzi=np.sum(np.multiply((PRE_area1[i:i+11]-np.mean(PRE_area1[i:i+11])),(HS_TP_summer[i:i+11]-np.mean(HS_TP_summer[i:i+11]))))
    fenmu=np.sqrt(np.sum((PRE_area1[i:i+11]-np.mean(PRE_area1[i:i+11]))**2)*np.sum((HS_TP_summer[i:i+11]-np.mean(HS_TP_summer[i]))**2))
    sliding_corr[i]=fenzi/fenmu
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-1-17 19:40:35 | 显示全部楼层
想问一下楼主,HS_TP_summer[i]这里为什么不是HS_TP_summer[i:i+11]
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-1-28 11:33:07 | 显示全部楼层
Aal 发表于 2022-1-17 19:40
想问一下楼主,HS_TP_summer这里为什么不是HS_TP_summer

你说得对,确实应该是HS_TP_summer[i:i+11]
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-1-28 14:23:14 | 显示全部楼层
本帖最后由 学生党少华 于 2022-1-28 14:47 编辑

def leadlagcor_r(data1,data2,n):
        #data1和data2为两个时间序列,n设置做多少个时间步长的超前滞后
    a=-n
    b=-a
    c=b*2+1
    x=np.arange(-n,n+1,1)
    r=np.zeros((c,1))
    p=np.zeros((c,1))

    for i in range(c):
        if i<(b):
            r[n-i],p[n-i]=pearsonr(data1[:(len(data1)-i)], data2[i:])
        else:
            r,p=pearsonr(data1[x:], data2[:len(data1)-x])
        #result = np.concatenate((r,p),axis = 1)
        #correl_value = np.max(result[:,1:2])
        #index_correl_value = np.where(r == correl_value)
        #p_index = p[index_correl_value]
        #r = np.squeeze(r)
        p = np.squeeze(p)
         #return max(abs(r)) , p[index_correl_value]
        max_value = max(abs(r))
        index_correl_value = np.where((r == max_value) | (r == max_value * -1))
        index_correl_value = index_correl_value[0]
        p_value = p[index_correl_value]  
        r_value = r[index_correl_value]
    return r_value,P_value


我自己前一阵算东西写的。输出最大R时的和相对应P值。 如果不需要,直接最后一句改成return r,p
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2023-2-14 14:21:45 | 显示全部楼层
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表