【发布时间】:2020-04-14 04:12:01
【问题描述】:
我需要创建一个 328 x 238(行 x 列)的栅格,其中选择的像素/单元格值是从给定的 pandas 数据框 (df) 中填充的。 df 中的每一行都包含一个名称(不重要)、行号、列号和对应于 328 x 238 光栅单元中的一些(不是全部)的像素值。如果不存在单元格值,则像素值需要为“NaN”或为空。我是 python 新手,正在努力找出实现最终目标的最佳方法。首先想到的是遍历df中的每一行以提取行/列位置以及每个像素应该填充的值(如果df中存在一个)。
作为第一步,我正在考虑创建一个 328 x 238 numpy 数组的 NaN 值:
array = np.full((328, 238), 'NaN')
然后我想我可以使用一个 for 循环来用来自 df 的值填充数组。 但是,我仍在努力理解如何设置一个 for 循环,该循环将逐行读取 df 并在每个列出的行/列位置使用 df 中的特定值填充数组。
for row, col in array:
array.append[df['row', 'column'], 'value']
这个 for 循环显然不起作用,但我不知道如何从 df 中获取该“值”并在该特定“行”和“列”位置填充数组。任何帮助指导我找到实现栅格最终目标的最佳路线将不胜感激。
【问题讨论】:
标签: python pandas dataframe raster