小编Scr*_*rox的帖子

如何在单独的numpy数组中使用相同的值对numpy数组的元素进行分组

像往常一样介绍,我是python中的tyro.但是,我有一个很大的代码项目.它是Cell Automata的表面流动模型.无论如何,我还想在我的模型中包括建筑屋顶.想象一下,你有一个ascii文件指示1s的建筑物,而其余的是0.只有这两种状态.现在,我想找到所有相邻的单元格,指示相同的建筑物并将它们(或者更确切地说是y,x和另外一个(可能是高程)的信息,因此在单个建筑物阵列中存储).请记住,尽管对角连接的单元不属于同一建筑物,但建筑物可以具有所有可能的形式.因此,只有北部,南部,西部和东部的细胞可以属于同一建筑物.

我做了我的作业并用谷歌搜索了它,但到目前为止我找不到令人满意的答案.

示例:初始土地覆盖数组:

([0,0,0,0,0,0,0]
 [0,0,1,0,0,0,0]
 [0,1,1,1,0,1,1]
 [0,1,0,1,0,0,1]
 [0,0,0,0,0,0,0])
Run Code Online (Sandbox Code Playgroud)

输出(我现在需要初始数组中单元格的坐标):

 building_1=([1,2],[2,1],[2,2],[2,3],[3,1],[3,3])
 building_2=([2,5],[2,6],[3,6])
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏!

python grouping numpy

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

grouping ×1

numpy ×1

python ×1