Using ArcGIS 10.4.1 and Arcpy I am trying to select a shapefile by it attributes and create new feature class based on unique values like
import arcpy
from arcpy import env
def unique_values(table , field):
with arcpy.da.SearchCursor(table, [field]) as cursor:
return sorted({row[0] for row in cursor})
uniques = unique_values(r'D:/GIS/Roads.shp' , 'fclass')
for unique in uniques:
arcpy.SelectLayerByAttribute_management (r'D:/GIS/Roads.shp', "NEW_SELECTION", " 'fclass' = '"+unique+"' ")
print (unique)
but I am getting this error message
Message File Name Line Position Traceback
11
SelectLayerByAttribute C:\Program Files (x86)\ArcGIS\Desktop10.4\ArcPy\arcpy\management.py 7182
ExecuteError: Failed to execute. Parameters are not valid. The value cannot be a feature class ERROR 000840: The value is not a Raster Layer. ERROR 000840: The value is not a Mosaic Layer. Failed to execute (SelectLayerByAttribute).