爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 7325|回复: 8

[经验总结] 最方便的python回归分析

[复制链接]

新浪微博达人勋

发表于 2022-7-20 17:46:16 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 一大碗年糕 于 2022-7-24 00:08 编辑

现在主要用的是python,虽然数据处理方便了很多,但是在做气候统计分析的时候总是有些函数用的不顺手,最难受的莫过于回归分析,无论是numpy,scipy等实现都挺麻烦,很多回归函数一般都只能是一维数据之间的,如果涉及时间序列与空间场的回归,以最麻烦的循环的循环方法为例,格点少还好,要是ERA5这种0.25分辨率的还是很耗时间的。且考虑到气象都主要用xarray为主,还是需要专门为气象做回归的函数。今天下午一查发现GeoCAT-comp原来是有回归函数的!(GeoCAT就是NCAR原来做NCL那批人转python后的第二代分析工具,一代PyNGL 已经难产,虽然自从ncl转到python以来,一直也有关注GeoCAT但是因为其发展较为缓慢属实是不如自己动手方便有时候)直接调用相比最慢的方法for循环快了将近600倍。。且这个函数除了支持numpy.ndarray,也是支持xarray.DataArray,甚至Dask并行计算的。 2022-07-20 17-40-45 的屏幕截图.png 2022-07-20 17-46-34 的屏幕截图.png p.s.涉及显著性检验推荐xskillscore,同样支持xarray,且在做年代际分析滤波之后显著性检验需要计算的有效自由度也有现成的函数(有效自由度估算的方法有很多xskillscore里面这个属于较严格的)
2022-07-20 17-52-18 的屏幕截图.png

7.23,晚上在python群里看见一个大佬也写了个类似的用于回归的包,源码:https://github.com/ZiluM/sacpy







本帖被以下淘专辑推荐:

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2022-7-20 18:11:27 | 显示全部楼层
看了下源码,底层还是用 np.polyfit 实现的,也许是我们之前循环的写法没有发挥出 numpy 的潜力吧。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-7-20 18:54:09 | 显示全部楼层
算距平,算均方差,然后距平除以均方差做标准化,用标准化向量算个协方差就是相关系数,用矩阵的思想自己写一个,不用写循环,能比循环更快,我帖子就有怎么算回归系数,还有检验。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-7-20 19:13:11 | 显示全部楼层
雨落森林 发表于 2022-7-20 18:54
算距平,算均方差,然后距平除以均方差做标准化,用标准化向量算个协方差就是相关系数,用矩阵的思想自己写 ...

是的哈哈下午看到了,循环实在是太慢了,调包调起来哈哈
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-7-20 19:15:07 | 显示全部楼层
本帖最后由 一大碗年糕 于 2022-7-20 19:16 编辑
灭火器 发表于 2022-7-20 18:11
看了下源码,底层还是用 np.polyfit 实现的,也许是我们之前循环的写法没有发挥出 numpy 的潜力吧。

恩包括xarray也很多就是numpy实现的,就是人家已经做好现成的API了哈哈
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-7-26 11:20:11 | 显示全部楼层
{:5_213:}{:5_213:}
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-8-9 14:30:31 | 显示全部楼层
感谢楼主分享经验,对于渣渣,用python时看看一看,不用时撩在脑后了哟
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-9-7 11:47:42 | 显示全部楼层
感谢楼主分享经验
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2023-2-6 15:24:21 | 显示全部楼层
有效自由度这个好啊!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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