In ArcMap 10.4 I'm trying to manually join two nearby points on a one-by one basis by visually inspecting a single point in one layer, and associating it somehow with a point in another layer. Using nearby points is troublesome, because I need to use subjective criteria to make that join. For example, I have a geolocated electricty service account point, and I need to associate it with a gas service account. They are not always the two closest points on a map, so I must use my judgement to join them together. The last step would be to join those points to a building footprint which is a geolocated polygon. I'm not savvy in python, so a way to click one point and then click a second point and join them would be something I initially think would be a user-friendly solution?

  • If not python, would other languages be acceptable? – Kirk Kuykendall Mar 23 '16 at 3:22
  • If some sample scirpt could be copied and pasted with a link to some step by step instructions, I'd give it a go! Any advice is helpful and I'd be willing to fumble through this – guest44444 Mar 23 '16 at 4:07
  • 1
    What do you mean by "manually join"? What kind of join are you trying to make - a line between the two, or attributes from one added to attributes of the other? What kind of "subjective criteria" do you have? – Midavalo Mar 23 '16 at 4:16
  • No line - just add to the attribute table. The subjective criteria is to identify building by building what the kWh use is and whether the therm usage, in my 'engineering judgement' is correlated to each other. Also - whether the utility tariff is compatible. For example the closest account may be a street light account, but that shouldn't me matched with a building. The list goes on, and scripting something could be unwieldy and not always valid. – guest44444 Mar 23 '16 at 4:26
  • 1
    Line drawn is your best go, next step is trivial assignment of from and to nodes – FelixIP Mar 23 '16 at 8:38

The standard database way to do this would be to assign each layer--electric, gas, building--unique identifiers, then use the Attribute Transfer tool to point and click and transfer the attributes from layer to layer.

For example, your electric layer could have the following fields: Id, GasId, BuildingId. Your gas layer could have the following fields: Id, ElectricId, BuildingId. Your building layer could have the following fields: Id, ElectricId, GasId.

So, if you want to be able to relate all 3 layers to each other, you would populate these Id's accordingly. Then you would set up relationship classes so you don't have to keep relating them over and over manually. For each layer, it's Id would be it's primary key, and the other Id's would serve as foreign keys to the other layer's.

Here is the link to the Transfer Attributes tool. Note that it does require an advanced license, although it is definitely one of those things one can program around and simulate with a lesser license with python. http://resources.arcgis.com/en/help/main/10.2/#/Transfer_Attributes/001v0000000s000000/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.