Solved! Go to Solution.
I actually only need the ascii file as I can read this into R where I am doing my analysis.
import arcpy
arcpy.CheckOutExtension('Spatial')
from arcpy.sa import *
# set output workspace
arcpy.env.workspace = r'C:\TEMP\Output_Rasters'
arcpy.env.overwriteOutput = True
# your points
points = r'C:\TEMP\Stream_points.shp'
# oid field and list of id's
ids = list(r.visitID for r in arcpy.SearchCursor(points))
# loop through table to make a distance raster for each point
# EucDIstance(points, max_distance, cell_size) <-- parameters
lyr = arcpy.MakeFeatureLayer_management(points, 'points_lyr')
for i in ids:
query = '{0} = {1}'.format(arcpy.AddFieldDelimiters(points,'visitID'),i)
arcpy.SelectLayerByAttribute_management(lyr, 'NEW_SELECTION', query)
eucDist = EucDistance(lyr, 100, 10)
eucDist.save('dist_%s' %i)
print 'Created Euclidean Distance raster for point ID: %s' %i
print 'Done'
Is there any alternative, more efficient way?
Is it absolutely necessary to have an individual raster for each point?
# oid field and list of id's
ids = list(r.getValue(field) for r in arcpy.SearchCursor(points))
# oid field and list of id's
ids = list(r[0] for r in arcpy.da.SearchCursor(points, [field]))
if condition: # do stuff # more code
if condition: # do stuff # more code