基于Python土地类网格的土地面积和网格

2024-03-29 12:10:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个形状相同的网格,一个是土地等级,另一个是土地面积。你知道吗

示例:
土地等级

[[1 4 3],  
 [3 2 3],  
 [1 3 3]]  

土地面积

[[0.3 0.8 2.0],  
 [5.0 1.5 0.5],  
 [0.1 1.0 3.2]]  

我需要根据土地类别总结土地面积,如果能打印出这样的内容,我会很高兴:

1 0.4  
2 1.5  
3 11.7  
4 0.8

我导入的唯一模块是numpy,如果可能的话,我希望避免导入其他模块。建议?你知道吗


Tags: 模块numpy网格示例内容类别建议形状
1条回答
网友
1楼 · 发布于 2024-03-29 12:10:56

您可以执行以下操作:

import numpy as np

lc=np.array([[1, 4, 3],
            [3, 2, 3],
            [1, 3, 3]])

la=np.array([[0.3, 0.8, 2.0],
            [5.0, 1.5, 0.5],
            [0.1, 1.0 ,3.2]])



calc_areas = []

for v in np.unique(lc):
    print(v, np.sum(la[lc==v]))
    calc_areas.append([v, np.sum(la[lc==v])])


calc_areas.sort(key=lambda v: v[1], reverse=True)
print("Max area", calc_areas[0])   

提供:

1 0.4
2 1.5
3 11.7
4 0.8

('Max area', [3, 11.699999999999999])

相关问题 更多 >