<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: DISTANCE MATRIX between 30 points in Geoprocessing Questions</title>
    <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496523#M16548</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Or if you lack the license level &lt;A _jive_internal="true" href="https://community.esri.com/blogs/dan_patterson/2017/01/23/generate-near-table-for-points"&gt;Generate Near Table&lt;/A&gt; for points&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 13 Jul 2017 18:42:17 GMT</pubDate>
    <dc:creator>DanPatterson_Retired</dc:creator>
    <dc:date>2017-07-13T18:42:17Z</dc:date>
    <item>
      <title>DISTANCE MATRIX between 30 points</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496521#M16546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is there a way to generate a matrix of distances between points like the way one could do with Hawths Analysis tool using ArcGIS 9.3? Hawths tool is not supported in ArcGIS 10.x. I am using ArcGIS 10.5&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Jul 2017 16:28:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496521#M16546</guid>
      <dc:creator>alfrednjeru</dc:creator>
      <dc:date>2017-07-13T16:28:36Z</dc:date>
    </item>
    <item>
      <title>Re: DISTANCE MATRIX between 30 points</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496522#M16547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Perhaps&amp;nbsp;&lt;A class="link-titled" href="http://desktop.arcgis.com/en/arcmap/latest/tools/analysis-toolbox/generate-near-table.htm" title="http://desktop.arcgis.com/en/arcmap/latest/tools/analysis-toolbox/generate-near-table.htm"&gt;Generate Near Table—Help | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;could work&amp;nbsp;followed by&amp;nbsp;&lt;A class="link-titled" href="http://desktop.arcgis.com/en/arcmap/latest/tools/data-management-toolbox/pivot-table.htm" title="http://desktop.arcgis.com/en/arcmap/latest/tools/data-management-toolbox/pivot-table.htm"&gt;Pivot Table—Help | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;(or do this in Excel).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Jul 2017 17:15:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496522#M16547</guid>
      <dc:creator>XanderBakker</dc:creator>
      <dc:date>2017-07-13T17:15:50Z</dc:date>
    </item>
    <item>
      <title>Re: DISTANCE MATRIX between 30 points</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496523#M16548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Or if you lack the license level &lt;A _jive_internal="true" href="https://community.esri.com/blogs/dan_patterson/2017/01/23/generate-near-table-for-points"&gt;Generate Near Table&lt;/A&gt; for points&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Jul 2017 18:42:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496523#M16548</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2017-07-13T18:42:17Z</dc:date>
    </item>
    <item>
      <title>Re: DISTANCE MATRIX between 30 points</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496524#M16549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;See below&amp;nbsp;the result of the script posted further down (after pasting the data into Excel):&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/362744_pastedImage_1.png" style="width: 620px; height: 245px;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code used:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;def&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;main&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; random
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;overwriteOutput &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token boolean"&gt;True&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# create a featureclass with 30 random points&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; fc &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; r&lt;SPAN class="string token"&gt;'C:\GeoNet\NearMatrix\data.gdb\points'&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; sr &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SpatialReference&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;3857&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; x_range &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;8418055&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;8408208&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; y_range &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;689582&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;705039&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; num_points &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;30&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; feats &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; cnt &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; range&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;30&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; random&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;randrange&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;x_range&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; x_range&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; y &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; random&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;randrange&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;y_range&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; y_range&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pntg &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;PointGeometry&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Point&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; y&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; sr&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; feats&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;append&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;pntg&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;CopyFeatures_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;feats&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; fc&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# analyze points and create matrix&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; flds &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'OID@'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'SHAPE@'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_pnts &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;r&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; r&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; r &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;da&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SearchCursor&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;fc&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; flds&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_res &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; oids &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; sorted&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;dct_pnts&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;keys&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; oid_from &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; oids&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_i &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; oid_to &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; oids&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; oid_from &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; oid_to&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; dct_pnts&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;oid_from&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;distanceTo&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;dct_pnts&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;oid_to&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_i&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;oid_to&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; dist
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_res&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;oid_from&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; dct_i

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# print the result&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'oid\t'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'\t'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;join&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;str&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; a &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; oids&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; oid &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; oids&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dct_i &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; dct_res&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;oid&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; oid&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'\t'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'\t'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;join&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;str&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;dct_i&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;replace&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'.'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;','&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; a &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; oids&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;


&lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; __name__ &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'__main__'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; main&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;In this case the&amp;nbsp;part until line 20 is to create a featureclass with 30 random points in it&amp;nbsp;(using a projected coordinate system).&lt;/P&gt;&lt;P&gt;Lines 22 to 36 are used to loop through the points and determine the distance between them. In this case the distance between each point pair is calculated twice (both directions) and could be enhanced.&lt;/P&gt;&lt;P&gt;Lines 38 to 42 is used to print the data with TAB as separator and in my case line 42 contains an additional ".replace('.', ',')" to change the decimal sign from point to comma.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The printed code was copied from the intermediate window and pasted in Excel and that's basically all there is to it.&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:50:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496524#M16549</guid>
      <dc:creator>XanderBakker</dc:creator>
      <dc:date>2021-12-11T21:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: DISTANCE MATRIX between 30 points</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496525#M16550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Details of einsum (as e_dist) and art.frmt_ in blogs.&amp;nbsp; If a featureclass is needed, then two more columns (X and Y) can be inserted&amp;nbsp;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# ---- create 10 random points, 'a' 10 and produce a distance matrix ----&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#&lt;/SPAN&gt;
a &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;random&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;randint&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;10&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; size&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;10&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; a&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;reshape&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;prod&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;shape&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; a&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;shape&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="comment token"&gt;# magic 1&lt;/SPAN&gt;
diff &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; a &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; b
dist_arr &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;einsum&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'ijk,ijk-&amp;gt;ij'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; diff&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; diff&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# magic 2, einsum distance&lt;/SPAN&gt;
dist_arr &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;sqrt&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;dist_arr&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;squeeze&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ---- also available in scipy as cdist ----&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#&lt;/SPAN&gt;
art&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;frmt_&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;dist_arr&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; deci&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; title&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'Distance matrix...'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#&lt;/SPAN&gt;
Distance matrix&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;shape &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;10&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;10&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; ndim &lt;SPAN class="number token"&gt;3&lt;/SPAN&gt;
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.10&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.62&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.60&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.49&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;2.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.00&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.94&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;10.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;9.90&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.16&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.10&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.25&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.32&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.07&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.00&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.62&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.94&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.25&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;4.47&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.16&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;2.24&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.54&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.28&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.60&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;10.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.32&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;4.47&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.62&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.49&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;9.90&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.07&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.16&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;4.12&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.21&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;2.24&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;4.12&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.61&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.21&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;2.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.16&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.62&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.21&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;3.61&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;8.54&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.21&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.71&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.00&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;7.28&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;6.08&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.83&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;5.39&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;1.41&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="number token"&gt;0.00&lt;/SPAN&gt;&amp;nbsp; ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;The featureclass can be constructed as follows... done verbosely&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# ---- construct a data type so that the data can be sent to a featureclass ----&lt;/SPAN&gt;
dt0 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'X'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'&amp;lt;f8'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'Y'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'&amp;lt;f8'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
dt1 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'p{}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;format&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;i&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'&amp;lt;f8'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; i &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; range&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;len&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
dt &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; dt0 &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; dt1
&lt;SPAN class="comment token"&gt;#&lt;/SPAN&gt;
b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;c_&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; dist_arr&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# combine coordinates and data&lt;/SPAN&gt;
out &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; np&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;zeros&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;len&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; dtype&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;dt&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# prepare a structured array to fill&lt;/SPAN&gt;
names &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; out&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;dtype&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;names
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; i &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; range&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;shape&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; out&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;names&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;i&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; b&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; i&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ---- off to a shapefile or featureclass&lt;/SPAN&gt;
arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;da&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;NumPyArrayToFeatureClass&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;out&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; r&lt;SPAN class="string token"&gt;'c:\temp\test.shp'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'X'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'Y'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Of course, helper functions (and a module with these) make these steps greatly reduced.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:50:06 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/distance-matrix-between-30-points/m-p/496525#M16550</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2021-12-11T21:50:06Z</dc:date>
    </item>
  </channel>
</rss>

