python - 在 python 中使用 gdb 中的栅格数据集

标签 python floating-point gis raster arcpy

我正在尝试编写一个脚本,用于在 python 中将度数转换为弧度。这是一项常见的任务,随身携带它会很有用。我遇到的问题是输入栅格似乎被作为字符串读取。见下文:

import arcpy
from arcpy import env
from arcpy.sa import *
import math
arcpy.CheckOutExtension("Spatial")
env.workspace = "C:\Users\OJB\Desktop\University\UsingRAS\UsingRas.gdb"


degrad = math.pi / 180
PythonRad = "Aspect_Deg" * degrad

outCos = Cos("PythonRad")
outCos.save("C:\Users\OJB\Desktop\University\UsingRAS\UsingRas.gdb\PyTest")

我得到的错误是:

Traceback (most recent call last):
File "C:/Users/OJB/Desktop/University/UsingRAS/Scripts/DegtoRad", line 11, in <module>
PythonRad = "Aspect_Deg" * degrad
TypeError: can't multiply sequence by non-int of type 'float'

我不确定如何在不使用引号的情况下使用此栅格。我对 Python 非常陌生,因此我们将不胜感激。

祝一切顺利

最佳答案

使用 arcpy 模块中的栅格对象来实例化栅格:

from arcpy import Raster

...

ras = Raster('path_to_raster') 
PythonRad = ras * degrad

此外,完成后不要忘记检查您的空间分析扩展。

关于python - 在 python 中使用 gdb 中的栅格数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8702876/

相关文章:

python - Django 模型继承 : ForeignKey on parent, 没有对子模型的 related_name 访问

python - 如何在 tkinter (python) 中更改框的背景颜色

java - 在 Android 中从文本字段转换为数字

java - 如何使用 Java 开发 LBS/GIS 应用程序概述

java - Solr - 使用 LocalSolr 支持 GIS 安装问题

python - 打印类实例名称的方法

python - 使用 argparse 解析对象列表

c++ - C++ 中的整数溢出和整数乘法

python - Python 2.7 中的几何级数

r - 解析网页并转换为 data.frame