python核函数估计 python核心算法( 三 )


日均地表温度(Land Surface Temperature),与最高空气温度类似 , 不同之处在于其低温区分布更少;
最大热指数(Max Heat Index),西部与中西部分布较为一致,偏温和性温度,东北部热指数偏高,南部偏低;
降雨量(Precipitation) , 西部明显偏小,南部与东北部大致相同,中西部相对较多 。
结合地理知识做一个总结:
东北部及大多数中西部地区,属于温带大陆性气候,四季分明 , 夏季闷热 , 降雨较多 。
西部属于温带地中海气候,全年气候温和 , 并且干燥少雨,夏季气候温和,最高温度相对稳定 。
南部沿海一带,终年气候温暖 , 夏季炎热 , 雨水充沛 。
按月计算美国各地区降雨量均值及标准偏差,以均值 ± 一倍标准偏差绘制各地区降雨量误差线图 。
从运行结果可知:
在大多数夏季月份 , 西部地区降雨量远小于其他地区;
西部地区冬季月降雨量高于夏季月;
中西部地区是较为典型的温带大陆性气候,秋冬降雨逐渐减少 , 春夏降雨逐渐升高;
南部地区偏向海洋性气候,全年降雨量相对平均 。
需要安装joypy包 。
日均最高气温变化趋势
通过 joypy 包的 joyplot 接口 , 可以绘制带堆积效应的直方分布曲线,将 1980 年 - 2008 年的日均最高温度按每隔 4 年的方式绘制其分布图,并标注 25%、75% 分位数 。
从运行结果可知:
1980 - 2008 年区间,美国全境日均最高温度分布的低温区正逐渐升高,同时高温区正逐渐降低,分布更趋向于集中;
1980 - 2008 年区间,美国全境日均最高温度的 25% 分位数和 75% 分位数有少量偏离但并不明显 。
日均降雨量变化趋势
同样的方式对降雨量数据进行处理并查看输出结果 。
筛选出加州和纽约州的日均降雨量数据,通过 plt.hist 接口绘制降雨量各月的分布图 。
从运行结果可知:
加州地区降雨量多集中在 0 - 1 mm 区间,很少出现大雨,相比而言,纽约州则显得雨量充沛,日均降雨量分布在 2 - 4 mm 区间 。
直方图在堆积效应下会被覆盖大多数细节,同时表达聚合、离散效应的箱线图在此类问题上或许是更好的选择 。
通过 sns.boxplot 接口绘制加州和纽约州全年各月降雨量分布箱线图.
从箱线图上 , 我们可以清晰地对比每个月两个州的降雨量分布,既可以看到集中程度 , 例如七月的加州降雨量集中在 0.1 - 0.5 mm 的窄区间,说明此时很少会有大雨;又可以看到离散情况,例如一月的加州,箱线图箱子(box)部分分布较宽,且上方 10 mm 左右存在一个离散点 , 说明此时的加州可能偶尔地会出现大到暴雨 。
视觉上更为美观且简约的是摆动的误差线图,实验 「美国全境降雨量月度分布」 将所有类别标签的 x 位置均放于同一处,导致误差线高度重合 。可通过调节 x 坐标位置将需要对比的序列紧凑排布 。
从输出结果可以看出 , 加州冬季的降雨量不确定更强,每年的的十一月至次年的三月,存在降雨量大 , 且降雨量存在忽多忽少的现象(误差线长) 。
上面的实验均在研究单变量的分布 , 但经常性地,我们希望知道任意两个变量的联合分布有怎样的特征 。
核密度估计 ,  是研究此类问题的主要方式之一,sns.kdeplot接口通过高斯核函数计算两变量的核密度函数并以等高线的形式绘制核密度 。
从运行结果可知:
加州在高温区和低降雨期存在一个较为明显的高密度分布区(高温少雨的夏季);

推荐阅读