Python和R概率统计算法建模评估气象和运动

🎯要点

  1. 概率统计数学:🎯Python和R计算和算法实现
  2. 气象学:
    1. 计算和可视化:🎯全球陆地-海洋平均年平均表面温度:🖊直方图温度异常,🖊显示分位数-分位数,🖊绘制线性趋势线,🖊绘制温度空间图,🖊温度空间图的全景图,🖊一维空间一维时间数据和霍夫莫勒图,🖊三维空间和一维时间文件及其地图绘制。🖊ChatGPT生成全球温度。
    2. 概率统计计算和绘制:🎯气象变量:🖊日降水量,🖊干旱期的概率分布函数和累计分布函数,二项分布和正态分布、🖊气候数据集估计平均值、方差、偏度和峰度,🖊降水量泊松分布。🎯估算:🖊给定日期地面气温异常平均值和置信区间,🖊计算气温异常假设检验,🖊计算气温统计学有效样本大小,🖊计算给定期间气温统计学上明显差异,🖊计算平均晴天、部分多云、多云天数,🖊将月降雨量数据拟合到伽玛分布,🖊使用累积分布的柯尔莫哥洛夫-斯米尔诺夫检验检查观测值和预期值拟合度,🖊对Kendall tau 检验既存同类数据关系,🖊曼-肯德尔趋势检验。
    3. 回归建模:🎯温度:🖊下降率和近似线性建模,单变量线性回归的假设和公式推导,斜率和相关性关系,置信区间预测,🖊鉴于地理坐标的温度下降率多线性回归建模,🖊全球温度的多线性回归非线性拟合。
    4. 矩阵数据:🎯数学线性计算:🖊奇异值分解海平面压力,🖊计算和可视化温度异常的时空因子的样本协方差矩阵,🖊计算和绘制赤道纬向带上温度异常的协方差矩阵特征值的曲线图,🖊德宾-沃森独立性测试样本,🖊指定特征值和标准误差条的碎石图。
    5. 时间序列:🎯二氧化碳数据:🖊基林曲线,🖊误差趋势和季节分解时间序列数据,🖊基林曲线的预测和观测数据的拟合,🖊最低气温观测数据及其趋势、季节周期和随机残差,🖊模拟自回归序列,🖊频谱分析,傅里叶变换。
    6. 机器学习:🎯气温和风:🖊每日天气数据的 K 均值聚类,散列图显示温度和风向关系,🖊聚类凸包数据分析,🖊随机森林回归城市每日臭氧层数据。
    7. 🎯气候和干旱指数:气候指数算法代码实现
  3. 运动学:
    1. 🎯可靠与不可靠性数据分析:🖊过滤、🖊汇总、🖊绘制,🖊专业运动员级成功可靠性。

    2. 🎯一般和多线性回归建模:🖊使用探索性数据分析绘制数据、🖊建模,拟合模型,运行模型获得汇总结果、🖊使用统计模型多线性建模和拟合模型,汇总模型结果。

    3. 🎯广义线性模型:🖊建模,绘制逻辑曲线、🖊从模型获取运动超出预期的完成百分比、🖊计算超出预期的完成百分比 vs 完成百分比的可靠性。

    4. 🎯泊松回归和体彩投注:🖊计算泊松概率分布,直方图观察比赛变化,🖊建模,从收支平衡计算投注方式,🖊计算泊松回归系数对模型结果的影响。

    5. 🎯主成分分析和聚类:🖊散列图分析运动员身体特征及运动特点、🖊降维(主成分分析)分析运动员成绩,🖊聚类算法:K均值法计算运动员和比赛结果。

    6. 机器学习:🎯视频计算人体运动学和动力学,大语言模型推理运动模式。

🍇Python分析网格降水量

Python 复制代码
import glob
import matplotlib.pyplot as plt
import urllib.request
import xarray as xr
Python 复制代码
for yr in range(2011,2015): 
    url = f'https://downloads.precip.V1.0.{yr}.nc'
    savename = url.split('/')[-1]
    urllib.request.urlretrieve(url,savename)

让我们从简单开始:打开两年的数据并将它们连接到一个文件:

Python 复制代码
ds2011 = xr.open_dataset('precip.V1.0.2011.nc')
ds2012 = xr.open_dataset('precip.V1.0.2012.nc')
ds2011_2012 = xr.concat([ds2011,ds2012], dim='time')

现在,让我们尝试类似的操作,但通过更有效的方式(特别是文件数量超过两个):

Python 复制代码
ds2011_2014 = xr.open_mfdataset('precip.V1.0.*.nc', concat_dim='time', combine='nested')

现在让我们关注 2012 年并提取每月降水量总和并绘制其中一个月的简单绘图:

上面的图很简单,质量不高。现在,我们将为所有 12 个月制定一个更加个性化的情节,如下所示:

Python 复制代码
import calendar 
landmask = ds2012.precip.sum(dim='time')>0
Python 复制代码
fig = plt.figure(figsize=[12,8], facecolor='w')
plt.subplots_adjust(bottom=0.15, top=0.96, left=0.04, right=0.99, 
                    wspace=0.2, hspace=0.27) 
nrows = 3
ncols = 4
for i in range(1, 13):
    plt.subplot(nrows, ncols, i)
    dataplot = ds2012_mon.precip[i-1, :, :].where(landmask) 
    p = plt.pcolormesh(ds2012_mon.lon, ds2012_mon.lat, dataplot,
                   vmax = 400, vmin = 0, cmap = 'nipy_spectral_r',
                   ) 
    plt.xlim([233,295])
    plt.ylim([25,50])
    plt.title(calendar.month_name[dataplot.month.values], fontsize = 13, 
              fontweight = 'bold', color = 'b')
    plt.xticks(fontsize = 11)
    plt.yticks(fontsize = 11)
    if i % ncols == 1: 
        plt.ylabel('Latitude', fontsize = 11, fontweight = 'bold')
    if i > ncols*(nrows-1): 
        plt.xlabel('Longitude', fontsize = 11, fontweight = 'bold')

cax = fig.add_axes([0.25, 0.06, 0.5, 0.018])
cb = plt.colorbar(cax=cax, orientation='horizontal', extend = 'max',)
cb.ax.tick_params(labelsize=11)
cb.set_label(label='Precipitation (mm)', color = 'k', size=14)

plt.savefig('Fig_prec_mon_2012.png', format = 'png', dpi = 300)

现在假设我们想要提取特定边界的数据并查看该感兴趣区域内的平均条件。为简单起见,我们可以考虑一个矩形框。对于本例,让我们看一个几乎与此地类似的矩形框

Python 复制代码
top = 40
bottom = 37
left = 258
right = 265.4
Python 复制代码
ds_sel = ds2011_2014.isel(lon=(ds2011_2014.lon >= left) & (ds2011_2014.lon <= right),
                          lat=(ds2011_2014.lat >= bottom) & (ds2011_2014.lat <= top),
                          )
ds_sel_avg = ds_sel.mean(dim=['lat','lon'])

现在让我们绘制所选区域每年的累计日降水量。为了让事情变得更简单,让我们从记录中的所有闰年中删除 2 月 29 日。

Python 复制代码
ds_sel_avg_noleap = ds_sel_avg.sel(
    time=~((ds_sel_avg.time.dt.month == 2) & (ds_sel_avg.time.dt.day == 29)))

结果如下:

Python 复制代码
ds_sel_avg_noleap

参阅一:计算思维

参阅二:亚图跨际

相关推荐
小袁在上班8 分钟前
Python 单元测试中的 Mocking 与 Stubbing:提高测试效率的关键技术
python·单元测试·log4j
白狐欧莱雅10 分钟前
使用python中的pygame简单实现飞机大战游戏
经验分享·python·游戏·pygame
阿_旭11 分钟前
基于YOLO11/v10/v8/v5深度学习的维修工具检测识别系统设计与实现【python源码+Pyqt5界面+数据集+训练代码】
人工智能·python·深度学习·qt·ai
阿_旭15 分钟前
基于YOLO11/v10/v8/v5深度学习的煤矿传送带异物检测系统设计与实现【python源码+Pyqt5界面+数据集+训练代码】
人工智能·python·深度学习·目标检测·yolo11
测试199839 分钟前
外包干了2年,快要废了。。。
自动化测试·软件测试·python·面试·职场和发展·单元测试·压力测试
豆本-豆豆奶1 小时前
用 Python 写了一个天天酷跑(附源码)
开发语言·python·游戏·pygame·零基础教程
_.Switch2 小时前
Serverless架构与自动化运维
运维·python·缓存·自动化·运维开发
影雀2 小时前
大模型开发企业智能小助手应用上篇
python
过期动态3 小时前
详解Python面向对象程序设计
开发语言·python·pycharm·django
兜里有糖请分享3 小时前
Python中序列化/反序列化JSON格式的数据
爬虫·python