I am doing some QA to some addressing. I have two address point files.
One from several years ago that the address point is placed on the buildings (which I want the newer data to do). The second is a month old that the address points are at the centroid of the parcel layer.
I need to see where adjustments are needed. I was hoping to find a method to compare the two address points for changes in the address number and road name and the differences of the placement such as that number is not found within that parcel (polygon).
Anyone have any ideas? I have a Basic Licenses for ArcMap 10.5
Solved! Go to Solution.
Always a pleasure!
The issue is that the spaces are not within the fields I am concatenating, but the spaces I am using to make it readable. The spaces are an issue when it runs into a field that is null/blank. [HOUSE_NUB]&" "& [PREFIX_DIR]&" "&[PREFIX_TYPE]&" "&[STREET_NAM]&" "&[STREET_TYP]&" "&[SUFFIX_DIR].
If I do not put in the " " command the whole string runs together. I hope I am making sense.
Other have addressed dealing with the addressing, but your second question was about 'two point files with one polygon | differences of the placement'.
I suggest trying the Near (ArcMap) or Generate Near Table (ArcGIS Pro) command.
Calculates distances and other proximity information between features in one or more feature class or layer. Unlike the Near tool, which modifies the input, Generate Near Table writes results to a new stand-alone table and supports finding more than one near feature.
This, along with the address information, should help you associate the points correctly.
Isn't the near tool/command available only at the Advanced License level? That's what I was alluding to with my comment about finding coincident points being tricky with a Basic license....
In my last job I had an advanced license. So having to figure out things
without my awesome tools, I loved. Lol
I have a 'Near-ish' tool that can be used Joe and Hannah... if it comes down to it (no advanced license required). Let me know and I will dredge it up and get it into a 'tool' form
python parser
you are going to need a code block
the letters a, b, c, d have to be replaced with your field names inside ! marks
ie !
def strip(a, b, c, d, e, f):
""" provide the 6 fields to strip and concatenate
python parser"""
flds = [i.strip() for i in [a, b, c, d, e, f]]
result = "{} {} {} {} {} {}".format(*flds)
return result
a = 'A '
b = ' B '
c = 'C '
d = ' D'
e = 'e E '
f = ' F'
strip(a, b, c, d, e, f)
'A B C D e E F'
strip(!HOUSE_NUB!, !PREFIX_DIR!, ... etc) in the expression box
So it should look like this:
def strip( !HOUSE_NUMB!, !PREFIX_DIR!, !PREFIX_TYP!, !STREET_TYP!, !SUFFIX_DIR!):
""" provide the 6 fields to strip and concatenate
python parser"""
flds = [i.strip() for i in [ !HOUSE_NUMB!, !PREFIX_DIR!, !PREFIX_TYP!, !STREET_NAM!, !STREET_TYP!, !SUFFIX_DIR!]]
result = "{} {} {} {} {} {}".format(*flds)
return result
a = 'A '
b = ' B '
c = 'C '
d = ' D'
e = 'e E '
f = ' F'
strip(a, b, c, d, e, f)
'A B C D e E F'
I have hopefully attached the cal file ... just load it
but here is a picture. I don't have your data of fields... so pretend... I thought it would zip it, but it didn't need to
here is what it looks like if opened in a text editor
def strip(a, b, c, d, e, f):
""" provide the 6 fields to strip and concatenate
python parser"""
flds = [i.strip() for i in [a, b, c, d, e, f]]
result = "{} {} {} {} {} {}".format(*flds)
return result
__esri_field_calculator_splitter__
strip(!HOUSE_NUMB!, !PREFIX_DIR!, !PREFIX_TYP!, !STREET_TYP!, !SUFFIX_DIR!)
good luck... or back to Joe
Been taking peaks at this discussion, and can't contribute at the moment; I have my own addressing text mojo I'm dealing with at the moment. Hannah if you can post some of your data here I'll see if I can mess with it when I come up for air....