3
使用ArcGIS for Desktop在字段中查找重复记录?
我正在基于称为“ ID”的属性在dbf文件中寻找重复记录。我有各种dbf文件,从500,000条记录到150万条记录,我知道有很多重复项。 我想添加一个ID为“是”或“否”(或1或0很好)的字段“ Duplicate”,当ID属性存在于其他位置时。在字段计算器中使用以下python脚本,对于重复项返回1,对于唯一项返回0; uniqueList = [] def isDuplicate(inValue): if inValue in uniqueList: return 1 else: uniqueList.append(inValue) return 0 isDuplicate(!FIELD_NAME!) 但是,第一个记录(例如5个重复ID)也将返回为0(随后的4个被视为重复)。我需要将所有5个标记为重复,因为该ID在其他位置存在。 使用以下代码将为您提供ID出现次数的递增计数,其中1表示第一次出现,以此类推; UniqueDict = {} def isDuplicateIndex(inValue): UniqueDict.setdefault(inValue,0) UniqueDict[inValue] += 1 return UniqueDict[inValue] isDuplicateIndex( !YOUR_FIELD! ) 如果该记录的ID在其他地方存在,我只想要1(或是)!(ArcGIS版本10.1) 我看到了其他答案,例如用于识别重复记录的Python脚本(跟进),但效果不佳。