- 博客(12)
- 收藏
- 关注
原创 空间聚集性Join counts 的代码实现
jc.bb:表示在每个空间邻域对中具有相同属性值的观测单元对的数量。例如,jc.bb[i, j]表示具有属性类别i和j的观测单元对的数量。jc.bw:表示在每个空间邻域对中具有不同属性值的观测单元对的数量。例如,jc.bw[i, j]表示具有属性类别i和j的观测单元对的数量。jc.ww:表示每个观测单元与其邻域观测单元具有相同属性值的预期连接数量(Expected Join Counts)。jc.j:表示每个观测单元与其邻域观测单元具有相同属性值的连接数量。
2023-12-20 14:38:14
156
1
原创 Python 实现计算moran莫兰指数和local morcan 局部莫兰指数
全局莫兰指数(莫兰指数) 和 局部莫兰 是用于计算Spatial autocorrelation(空间自相关性)。所谓空间自相关性,是指特征信号是否与空间相邻位置存在相关性。(维基百科:wiki)大白话翻译就是,二维空间中,所谓的特征是否在空间中具有聚集性或完全随机。如图:完全随机 》》》》》》》》》》》》》》》》》》》》》》有空间聚集性全局莫兰指数公式为:I=n∑i=1n∑j=1nwi,j∑i=1n∑j=1nwi,jzizj∑i=1nzi2I=\frac{n}{\sum_{i=1}^{n
2021-11-11 11:51:05
10141
6
原创 python 数据点寻找外围轮廓(二) 对计算量很大的图
上一篇博客讲了需求:需要在离散点中查找外部边框;外部边框如图:可以用Alpha shape 运算(https://blog.youkuaiyun.com/Janine_1991/article/details/121017287?spm=1001.2014.3001.5501);但是当数据点过多时,Alpha shape 会被卡死,很久之后跑出空的结果此时建议用concave Hull 进行运算;安装地址:Concave具体安装不再赘述,可能需要root 权限;所以此时的代码是:import nu
2021-10-29 16:21:10
3504
1
原创 python 数据点寻找外围轮廓
有一堆数据点的坐标,想得到最外侧的轮廓信息,及点信息;示意图如下所示:import numpy as nppoints = np.random.rand(100, 2) ###创建100个原始数据希望能得到最外围的轮廓,如图所示:请注意!!!!图片中有凹进去的区域存在如果确认图片是凸图案,则可以用scipy 包中的ConvexHull实现:from scipy.spatial import ConvexHullhull = ConvexHull(points) ###计算外接凸图案
2021-10-28 16:58:08
9845
6
原创 解决conda环境迁移问题:Warning: you have pip-installed dependencies in your environment file....
在运行命令:conda env create -f freeze.yml的时候,出现over and over 的错误:Warning : you have pip-installed dependencies in your environmentfile, but you do not list pip itself as one of your condadependencies...这是由于迁移的文件 freeze.yml 文件中存在大量需要pip 组装的文件,打开freeze.ym
2021-08-26 11:01:36
10373
7
原创 pandas计算的欧式距离矩阵
通常我们用pandas 保存数据 ,对于某些属性,需要计算不同对象之间的欧式距离;数据产生,如下所示:import pandas as pdctys = ['Boston', 'Phoenix', 'New York']df = pd.DataFrame(data, columns=['xcord', 'ycord'], index=ctys)如果以x,y为特征,计算不同城市之间的距离,不需要写循环,借助scipy 包,直接运算代码如下:from scipy.spatial import
2021-06-01 17:24:34
3882
1
原创 pandas 选择满足特定条件的行
pandas 选择满足特定条件的行建立example 的 pandas data frame:import pandas as pddataframe=pd.DataFrame({"a":[1,2,3],"b":["aaa","bbb","ccc"]}) #选取 属性“a” 中 大于1的行:dataframe[dataframe.a>1]#选取 属性“a” 中 大于1的 “b”列dataframe["b"][dataframe.a>1]#选取属性“b”在list 中 行l
2021-04-08 10:49:48
18477
原创 Opencv contours找出最大轮廓
在处理二值图像时,常用 cv2.findContours 查找轮廓,如下所示:# find all cohntourscontours,hierarchy=cv2.findContours(binary,cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE)binary 代表二值图像;之后可以用lambda 表达式对 contours 排序,如下所示:contours.sort(key=lambda c: cv2.contourArea(c), reverse=True)c
2021-03-11 17:34:46
9008
1
原创 minAreaRect 的输出及其后续boxPoints
minAreaRect 的输出及其后续boxPoints初学 python 版本的opencv, 对contours 的后续函数 minAreaRect的功能描述及使用;########选取图像的最大轮廓,并用minAreaRect 选取包裹该轮廓的最小矩阵contours, hierarchy = cv2.findContours(image, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)contours.sort(key=lambda c: cv2.contourA
2021-02-26 10:21:43
709
1
原创 python numpy 反转 reverse
python 的向量反转有一个很简单的办法# 创建向量impot numpy as npa = np.array([1,2,3,4,5,6])b=a[::-1]print(b)结果: [6, 5, 4, 3, 2, 1]或者 可以使用 flipud function# 创建向量impot numpy as npa = np.array([1,2,3,4,5,6])b== n......
2019-05-24 15:05:43
43643
5
原创 Python numpy 判断零矩阵,判断某个值(a)是否在矩阵中
Python numpy 判断0 矩阵,判断某个值(a)是否在矩阵中百度找 这个需求, 发现没有一种比较简单的解决方式;很多给的答案是要用 循环的方式解决,我觉得不好。所以写了 一个简单的方式。# 定义一个矩阵,判断是否是零矩阵import numpy as npA=np.zeros((600,600))"""numpy 中有个where 的功能,是发现某个值(a)得位置。如果没发现...
2019-05-16 16:25:10
14809
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人