我们先将GIS中的数据分为三类,矢量、表格、栅格。然后依次讨论随机选取。
1. 矢量数据的随机选取在GIS中,我会分为空间上和属性上,所以我将随机选取方式分为空间随机、属性随机。
1.1. 属性随机按照此类我们随机的方式是,数据随机选择数据行
import randomdef calcRandom(): return random.randint(1,3)calcRandom()或者
import randomdef rondomObjectTime(seedStep): time.sleep(0.01) random.seed(seedStep*time.time()) return random.randint(1,3)rondomObjectTime(!OBJECTID!)如下图:
我们可以控制return random.randint(1,3)为return random.randint(1,100)让后在选取数据是选择特定的属性值,以达到随机抽样。
1.2. 空间随机为什么会存在空间随机呢?(个人总结如下,欢迎补充)
将空间范围作为一种权重,比如如果空间范围大,则被选中的可能性更大空间选取中尽量做到选择相同范围。实现步骤如下:
随机生成点点缓冲使用缓冲的数据进行空间查询除了采用生成随机点的方案,也可以使用数据生成渔网,通过属性筛选渔网,再将选择数据与被筛选数据进行空间查询导出结果
2. 表格数据的随机选取由于数据中不存在空间信息,可以采用1.1. 属性随机的方案
3. 栅格数据的随机提取可以采用1.2. 空间随机的方案,不过最后可以根据需求采用裁剪栅格的方式输出结果