![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 62
青春依旧_
这个作者很懒,什么都没留下…
展开
-
【数值预报】按时间维度合并/重新生成nc、grib网格数据(按天、小时组织的文件合并成按月组织文件)
全球网格数据如grib、nc有些是按年组织的、有些是按月组织的、有些是按日组织的、有些是按小时组织的,然而这些在时间上都是一维形式,即普通的时间序列。对于数值模式预报数据,如ECMWF、GRAPES、JMA、NCEP 等等,其数据在时间上是二维形式,即(起报时刻,超前序列)。举个简单例子,假设气象台对气温预报,星期一会预报星期二到星期五的气温,星期二会预测星期三到星期六的气温,星期三会预测星期四到星期日的气温,这里就可以看到,星期一到星期天产生的序列长度不是7,而是3 x 7 = 21,所以说预报数据是原创 2021-12-30 20:38:32 · 4064 阅读 · 1 评论 -
Matplotlib/Cartopy/PyQt绘图调用某一函数如colorbar后窗体闪退
最近在做一个大概3、4万行python代码的项目,在把项目从mac迁移到win10和win7系统测试时发生了奇怪的bug,就是一旦绘图,窗体就直接闪退,连报错打印的信息都没留下,但在mac上可正常运行。由于项目涉及到众多包和框架,比如xarray、cfgrib、pyqt5、cartopy、pytorch等等,由没有报错信息,加上geos那套对不同操作系统、各个包不同的版本要求都比较严格,稍有不对号入座就会发生奇怪的bug,所以一时对于bug的排查比较难下手。最后经过连续5小时的排查,发现该闪退原因既不是原创 2021-11-18 23:34:21 · 1904 阅读 · 0 评论 -
【最新】高版本Mac、Python库下使用pip成功安装cartopy
前言高版本Mac、python库下Basemap装的真是折磨人,好不容易通过修改源码成功 import 了,结果运行案例代码中途报错。。最后转用cartopy这里强烈建议高版本Mac、python的用户不要使用basemap,basemap官方都说其已经过时了,要求用户转向cartopy本人环境mac10.15.x,python3.7+卸载cartopy相关可能是太过笨重,网速感人,所以本人一直不太喜欢Anaconda,也从来没装过,虽然cartopy官方说了使用Anaconda安装是最原创 2021-03-30 23:27:58 · 3626 阅读 · 3 评论 -
python使用协程解决内存瓶颈问题
前言本来程序跑得好好的,突然快到结尾时程序被强制关闭,报错 zsh: killed xxx/bin/python后面经查找发现是因为内存耗尽,程序强制被关闭,追其溯源,发现使用了类似这样的代码:从一个文件夹下读取全部文件数据作为list返回,由于list太大导致内存不足能不能通过分块或者惰性加载的思想来迭代nc_datas从而解决内存瓶颈问题?答案是可以的协程模型python中的协程采用了generator实现,而generator就类似惰性加载的思想,你调用它一次它才.原创 2021-03-29 20:26:24 · 1326 阅读 · 0 评论 -
【一般聚类/时序聚类】python实现多密度自适应聚类:Multi-DBSCAN
本文代码基于该篇进行魔改,功能调用更加方便,速度经测试快了几十倍import mathimport copyimport numpy as npfrom sklearn.cluster import DBSCANimport sklearn.metrics.pairwise as pairwiseclass Adapter_DBSCAN(): # 默认统计聚类个数在2-25之间的聚类情况, 参数符合python左闭右开 def __init__(self,num_clu原创 2021-03-25 23:22:07 · 4370 阅读 · 53 评论 -
【python注解】自定义注解与动态获取方法注解信息-进阶
在该文(基础篇)中简单介绍了python自定义注解与获取,但该文中的注解定义方式存在缺陷:同一方法上无法区分哪个信息是由哪个注解注入的(多注解情况)简单理解下就是:@annotationA(A_info="this is A",value="功能A")@annotationB(B_info="this is B",value="功能B")def test_fun(): print("test_fun...")if __name__ == "__main__": annos原创 2021-03-19 23:27:29 · 1586 阅读 · 0 评论 -
【python注解】自定义注解与动态获取方法注解信息-基础
python的注解是通过装饰器模式实现的,@注解本质是一个函数def my_annotation(**kwds): def decorate(fn): for item in kwds.items(): print(item) return fn return decorate@my_annotation(value="this is a annotation", author="Jack")def test_annotat原创 2021-02-17 15:33:43 · 3947 阅读 · 3 评论 -
tslearn使用轮廓系数(silhouette_score)评估KShape聚类效果
前言tslearn和sklearn一样,是一款优秀的机器学习框架,tslearn更偏向于处理时间序列问题,如其聚类模块就包含了DTW(Dynamic Time Warping)等算法及变种,也提供了轮廓系数对聚类效果评估,十分方便。但可惜,tslearn似乎没有提供对KShape聚类的评估方法,而且tslearn用的人也不多,官方文档也是很 “简洁”,网上也搜不到多少相关文章,所以这里也就记录下自己的踩坑过程轮廓系数评估接口调用先看官方例子,这里X是一个三维的numpy数组,代表20段时间序原创 2020-08-11 22:38:05 · 18376 阅读 · 83 评论 -
【Matplotlib】python绘图,同时沿x、y、z轴方向渐变颜色(按多轴渐变色)
通常绘制的图颜色只按一个方向渐变,如PCA降维后一个例子import matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dfrom sklearn.decomposition import PCAimport numpy as npdef show_pca_2d(): X = np.loadtxt("exp4/normal.txt",delimiter=",",dtype=np.float32) p原创 2020-10-15 11:03:36 · 4274 阅读 · 0 评论 -
python3字符集编码、中文编码原理与总结
前言python3在编码问题上会涉及到系统默认编码、本地默认编码和ssh工具终端通信编码三大不同层面,三者可以组合出不同的编码情况,不仔细梳理清楚确实容易弄混。本文在最后会给出一个真实的业务案例,若能搞清楚那么解决python3编码也不在话下了。系统默认编码系统默认编码在python3中可以这么理解,是指python3解释器以什么样的编码形式读取.py文件,形象点可以这么认为,你是python3解释器,你面前是磁盘上存储的二进制数据流(.py文件),假设是这样 010101000111010原创 2020-07-22 02:57:00 · 2198 阅读 · 0 评论