前言
读取两个 .nc 格式的气候数据文件 (SPEI.nc 和 SRI.nc),并进行相关性分析。具体来说,代码从数据文件中提取特定变量,计算这些变量与另一个变量之间的相关系数,并进行显著性检验。最终,相关系数和显著性结果以全球地图的形式可视化展示。
代码
import numpy as np
import xarray as xr
from sklearn.feature_selection import f_regression
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import cartopy.feature as cfeature
from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
import cmaps
# 使用上下文管理器读取 .nc 数据,并提取数据中的变量
# 可以提前用 NASA 的 Panoply 软件查看 .nc 文件信息
with xr.open_dataset(r'G:\2024codes\Codes\Copulas\Copulacodestest\SPEI.nc') as f1:
pre = f1['spei_gamma_01'][:-1, :, :] # 提取三维数据 (时间,纬度,经度)
lat, lon = f1['lat'], f1['lon'] # 提取经纬度
# 将三维数据转换为二维数据,便于计算相关系数
pre2d = pre.values.reshape(pre.shape[0], pre.shape[1] * pre.shape[2])
# 读取另一个 .nc 文件的数据
with xr.open_dataset(r'G:<