أكثر

يعمل ApplySymbologyFromLayer في ArcMap ولكن ليس في برنامج Python النصي


لذلك لا يبدو أن أداة ApplySymbologyFromLayer_management () تحبني ، على الأقل عندما أحاول استخدامها في برنامج نصي. لدي ملف Field_Boundary2.lyr له لون تعبئة "أجوف" ومخطط أسود لحد مضلع. في ArcMap ، عندما أقوم باستيراد رموز هذه الطبقة إلى طبقة أخرى ، يبدو الأمر كما يلي:

لكن إذا حاولت استخدامه مع Arcpy.ApplySymbologyFromLayer () في نص برمجي ، فإنه يعطيني هذا:

ها هو الكود:

df = arcpy.mapping.ListDataFrames (mxd، "dfElevation") [0] fc1 = arcpy.mapping.Layer (fcGrid) arcpy.ApplySymbologyFromLayer_management (fc1، arcpy.mapping.Layer (symbologyTemplate ArcPath +) Elevation.lyr " mapping.AddLayer (df، fc1، "BOTTOM") fc2 = arcpy.mapping.Layer (fcBound) arcpy.ApplySymbologyFromLayer_management (fc1، arcpy.mapping.Layer (symbologyTemplatePath + "Field_Boundary2.lyr")) ، fc2، "TOP")

من الصورة أعلاه ، يمكنك أن ترى أنه يتم استيراد رموز "Elevation.lyr" بشكل صحيح ، ولكن ليس "Field_Boundary2.lyr". أي فكرة لماذا هذا يمكن أن يحدث؟


في السطر 6 ، التغييرإف سي 1لfc2.


ثلاث طرق لإعداد بياناتك لطبقة Voxel

يأتي ArcGIS Pro 2.6 مزودًا بوظيفة Voxel جديدة ، مما يسمح لك بتصور شبكات البيانات ثلاثية الأبعاد بمليارات من مكعبات voxel أثناء الاستفادة من تصفية البيانات ، والتحكم في الرموز المخصصة لتصور البيانات ثلاثية الأبعاد ، والرسوم المتحركة للوقت وميزات الاستكشاف التفاعلية الأخرى. من تصور طرائق تغير المناخ ، والنظم الإيكولوجية البحرية ، والظواهر الجيولوجية إلى السلاسل الزمنية للفجوة الرقمية ، ومقاييس العدالة البيئية والاجتماعية & # 8211 ، يمكن أن يساعد هذا الشكل من التصور في نقل المعلومات الهامة ، بشرط أن تكون البيانات صحيحة.

Voxel Layer تأخذ نوعًا معينًا من بيانات NetCDF كمدخلات لها. يوفر تنسيق NetCDF قدرًا كبيرًا من المرونة من حيث تخزين البيانات. ومع ذلك ، فإن هذه المرونة تجعلها أيضًا "الغرب المتوحش" الذي يضرب به المثل في تنسيقات البيانات. يجب أن تكون البيانات متوافقة مع متطلبات بيانات طبقة Voxel لتصورها بشكل صحيح كمجلد فوكسل.

توضح هذه المدونة استخدام Python لتحرير ملفات NetCDF وجعلها متوافقة مع تصور voxel. تتوفر معظم هذه الوظائف أيضًا في كائن البيانات النقطية في ArcGIS Pro. تتوفر أدوات إضافية لإدارة البيانات متعددة الأبعاد وتحليلها في ArcGIS Pro.

سنستخدم بيئة Jupyter Notebook في ArcGIS Pro للأنواع الثلاثة من عمليات البيانات الموضحة في هذه المدونة. افتح ArcGIS Pro وافتح مشهدًا محليًا جديدًا. في علامة تبويب التحليل ، في مجموعة المعالجة الجغرافية ، حدد خيار Python. سيتم فتح دفتر ملاحظات جديد من Python.

نحن الآن جاهزون للنظر في السيناريوهات الثلاثة.

دمج سلسلة زمنية من ملفات netCDF في netCDF واحد

غالبًا ما تأتي بيانات NetCDF في ملفات منفصلة تمتد عبر طوابع زمنية مختلفة أو طوابع ارتفاع ، وغالبًا ما قد ترغب في تصور هذه البيانات كطبقة Voxel مع دمج جميع معلومات الوقت أو الارتفاع الفردية في نفس الملف. على سبيل المثال ، تحتوي بيانات هطول الأمطار هذه التي تم تنزيلها من NOAA Physical Science Laboratory Server على ملفات netCDF لسنوات مختلفة ، وهي متاحة للتنزيل بشكل منفصل.

فكيف يمكننا الانتقال من ملفات netCDF المفككة إلى ملف netCDF واحد؟

قم بإنشاء مجلد يحتوي على جميع البيانات التي يجب دمجها. قم بتنزيل البيانات من موقع PSL المذكور أعلاه في هذا المجلد. كان لدي مجلد يسمى "هطول" مع بيانات هطول الأمطار كل ساعة المذكورة أعلاه. كما في لقطة الشاشة ، تمت تسمية البيانات بهذا التنسيق - "precip.hour.yyy.nc" ، yyyy هي سنة تسجيل الملاحظة.

الآن ، من أجل الكود. أولاً ، قم باستيراد مكتبات xarray و netCDF4.

(اضغط على Shift + Enter لتنفيذ الكود في الخلية وفتح خلية جديدة)

أولاً ، نحتاج إلى تأكيد اسم البعد الزمني. يمكننا القيام بذلك عن طريق استيراد ملف فردي ، والتحقق من أبعاده.

نرى في نافذة النتائج أن البعد الزمني يسمى "الوقت" ليست كل متغيرات netCDF لها مثل هذه الأسماء المترابطة بوضوح ، لذلك من الجيد دائمًا التحقق من اسم البُعد.

نحتاج الآن إلى البرنامج النصي لفتح أي ملف netCDF في مجلدي الذي يبدأ بـ "precip.hour" ، حيث يمثل * أن كل ما يأتي هناك سلسلة لا تهتم. الطريقة التي نريد دمج البيانات بها هي استخدام بُعد إحداثيات الوقت ، وهو البعد الذي يحدد علاقات البيانات والنظام فيما يتعلق ببعضهما البعض. يتم إدخال بيانات هطول الأمطار المختلفة هذه إلى طريقة الجمع ، على وجه التحديد بالقول إننا نريد دمجها بواسطة البعد الإحداثي & # 8211 "الوقت" (الجمع بين = "by_coords" و concat_dim = "الوقت" على التوالي). يوفر xarray مزيدًا من الخيارات لسلسلة البيانات مع احتياجات أكثر تعقيدًا مثل الدمج في بعدين. لمزيد من المعلومات ، انظر هنا

ds_combined = xarray.open_mfdataset ('precip.hour. *. nc' ، دمج = 'by_coords' ، concat_dim = "time")

يمكننا الآن تصدير هذه البيانات إلى netCDF مجمعة ،

والآن يمكننا رسم هذه البيانات على شكل فوكسل أو مكعب الزمكان.

إعادة ترتيب الأبعاد في بيانات netCDF

لا يفرض توافق CF لبيانات NetCDF قيودًا على ترتيب الأبعاد ، لذلك قد لا يتم طلب البيانات التي تحتاجها لتصور طبقة Voxel وفقًا لمتطلبات الطبقة. في هذه الحالة ، أثناء تحميل بيانات netCDF في مربع حوار Add Voxel Layer ، قد تتلقى هذا التحذير

تحذير: ترتيب أبعاد المتغير & # 8216 & ltvariable name & gt & # 8216 غير مدعوم. أو من المتوقع الطلب (مع z أو t اختياري). سيتم تجاهل المتغير.

ينطبق هذا التحذير على الأبعاد المستندة إلى خطوط الطول والعرض أيضًا ، حيث يكون الترتيب المقبول للأبعاد أيضًا أو .

على سبيل المثال ، إذا أخذت بيانات الرطوبة النسبية هنا ، والتي تستند إلى بيانات الرطوبة النسبية من بيانات NCEP / NCAR Reanalysis 1 للرطوبة النسبية على مستويات متعددة ، المتوسطات اليومية لعام 2003.

عندما نحاول إضافة هذه البيانات من خلال حوار Add Multidimensional Voxel ، لا تظهر أي متغيرات في الحوار ، ونحصل على نفس التحذير على النحو الوارد أعلاه.

نحتاج إلى نقل البيانات إلى الأبعاد التي تقبلها طبقة فوكسل. يمكنك استخدام نفس دفتر الملاحظات Jupyter المفتوح أعلاه. افتح الملف باستخدام xarray.

نتحقق أولاً من أسماء أبعاد الإحداثيات عن طريق كتابة اسم مجموعة البيانات.

سنقوم الآن بتطبيق عملية تبديل مصفوفة رياضية على البيانات التي سيتم ترتيبها إما كـ أو .

يمكننا تصدير هذه البيانات إلى netcdf المعاد ترتيبها rhum_ordered.2003.nc

يمكننا الآن إضافة هذه البيانات لتصور على أنها فوكسل.

ثلاث طرق لتصحيح اتجاه محور الارتفاع

قد يتم محاذاة بيانات NetCDF بشكل غير صحيح على طول بُعد معين - x أو y أو z أو t. في هذه الحالة ، نريد عكس (أو إلغاء عكس ما شئت) البيانات الموجودة على طول هذا المحور مع الحفاظ على الهيكل على طول المحاور الأخرى. بعد الارتفاع هو الأكثر عرضة للتخزين بهذه الطريقة المعكوسة ، ولكن من الشائع أيضًا أننا قد نرغب في عكس البعد الزمني بحيث يكون لمكعب الزمكان voxel أقدم طابع زمني كأعلى مستوى.

هناك أربع حالات يمكن فيها محاذاة البيانات كما هو موضح في الشكل. وبالتالي ، هناك 24 تبديلًا قد نرغب في تصحيح اتجاه المحاذاة فيها.
قد تكون البيانات على الجانب الآخر من الأرض ، وتحتاج إلى التقليب (الموضع (1) إلى الموضع (4) أعلاه) ، أو الإزاحة (الموضع (1) إلى الموضع (3)). بدلاً من ذلك ، قد تحتاج البيانات إلى عكس اتجاهها أثناء احتلال نفس المنطقة الجغرافية كما كان من قبل (الموضع (الموضع (1) إلى الموضع (2)).

(معلومات سريعة: إذا كنت لا تريد معالجة بيانات netCDF نفسها والتخيل فقط ، يمكن عكس حجم فوكسل من خلال معالجة الرسم. للقيام بذلك ، يمكنك تعيين قيمة سالبة في الحقل "زيادة رأسية" في مجموعة الارتفاع بشريط المظهر. ثم استخدم حقل الإزاحة لوضع الحجم أعلى / أسفل سطح الأرض.)

دعنا نلقي نظرة على بيانات إعادة تحليل أول أكسيد الكربون من خدمة مراقبة كوبرنيكوس للغلاف الجوي (CAMS) كحجم فوكسل ، والذي تم استخدامه في الشكل أعلاه. توضح الأسطورة أن الغلاف الجوي العلوي يحتوي على قيم أعلى من أول أكسيد الكربون ، والتي تتناقص بالقرب من الأرض. سيدرك خبير الغلاف الجوي بسرعة أنه بينما يتم وضع حجم فوكسل بشكل صحيح جغرافيًا ، فإن البيانات مقلوبة.

علينا تحويل البيانات من الموضع (1) إلى الموضع (2) الموضح في الجدول 1.

يمكننا استخدام نفس دفتر ملاحظات Jupyter الذي تم فتحه أعلاه في واجهة ArcGIS Pro ، واستيراد المكتبات الضرورية والبيانات التي سنعمل معها.

ثم نكتشف بعد ذلك اسم بُعد الارتفاع ، عن طريق كتابة اسم مجموعة البيانات

بعد الارتفاع يسمى "المستوى". يمكننا معرفة المزيد من السمات الخاصة بأبعاد الارتفاع من خلال النقر

يتم ترتيب بُعد المستوى من 1 إلى 60 ، مع سمة الاسم الطويل "model_level_number".

من هنا ، هناك ثلاث خطوات لعكس بيانات netCDF

      اعكس اتجاه البيانات

    أخيرًا ، نقوم بتصدير مجموعة البيانات إلى netCDF جديد

    يمكن استخدام مجموعة من البرامج النصية أعلاه لإنجاز أي تبديل موصوف في الجدول 1.

    في الختام ، يمكنك استخدام Python لتحويل بياناتك إلى تنسيق متوافق مع Voxel ، من خلال دمج الملفات المختومة بالوقت الفردية في مصدر بيانات واحد ، أو تغيير أبعاد البيانات ، أو تصحيح اتجاه الارتفاع. هناك تغييرات في الأساليب المذكورة أعلاه قد تنطبق على بياناتك ، ونأمل أن يفسح تصور voxel نفسه لاكتشاف وجهات نظر نقدية جديدة لمعلوماتك.


    صور iPhone إلى قاعدة البيانات الجغرافية لملف Esri عبر ArcPy Python Script

    هنا & # 8217s نص تقريبي (لكنه يعمل) يقرأ معلومات EXIF ​​من الصور التي تم تنزيلها بالفعل (تم اختبارها باستخدام iPhone) وإنشاء قاعدة بيانات جغرافية للملف باستخدام خط العرض وخط الطول المخزنين مع الصورة.

    يجب أن يكون GPS الخاص بك نشطًا أثناء التقاط الصور. يتم نقل الصور إلى قاعدة البيانات الجغرافية للملف ويتم تخزين مسار مشفر. في النهاية ، أود حساب ذلك كمسار نسبي وترك الصور في مكانها. ميزة نقلها إلى قاعدة البيانات الجغرافية تعني أنها فازت & # 8217t تضيع ، لكنك تنسخ الصور وتزيد من احتياجات التخزين.

    إعدادات تشغيل البرنامج النصي لقبول الوسائط ، أو للتشغيل بمسار ثابت مشفر ، قريبة من الأسفل. تأكد من تعديل المسارات لتكون ما تريد.

    انقر للوصول إلى البرنامج النصي:

    لقد جئت بهذا النص في بوابة Utah GIS وكان المؤلف الأصلي هو Kevin Bell. لقد قمت بتحديثه إلى الإصدار 10. Kevin & # 8217s لعمل الملاحظات وقائمة الرغبات موجودة في البرنامج النصي أيضًا إذا أراد أي شخص المساعدة في معالجة ذلك وتحسينه.


    على الأقل يمكننا تصدير Model Builder إلى Python الآن

    أعتقد أنني & # x27m في الأقلية ، لكني أحب ArcGIS Pro. أنا & # x27v أستخدمه منذ حوالي 4 سنوات. استغرق الأمر بعض التعود على ذلك ، ولكن بعد شهر أو نحو ذلك ، بدا الأمر وكأنني & # x27d استخدمه إلى الأبد.

    يسير في الاتجاه الصحيح. مع 2.5 اتخذوا العديد من الخطوات إلى الأمام.

    شكواي أنه تم إصداره ، بشكل أو بآخر ، كمنتج & quotbeta & quot مع المستخدمين الذين يتعين عليهم دفع ثمن المنتج كـ & quottesters & quot. باستثناء أننا ندفع مقابل المنتج ونقضي بعض الوقت في استكشاف الأخطاء وإصلاحها. علاوة على ذلك ، فإن متطلبات الأجهزة من أجل & quot؛ الشعور & quot؛ حقًا & quot؛ التحسينات في الإجراءات الهادفة & quot؛ هي خطوة للأمام (وقد تكون مكلفة جدًا) للعديد من المؤسسات

    ومع ذلك ، فمع كل إصدار ، يعملون على حل المزيد من المشكلات ، وإضافة الوظائف التي كانت في الأصل في ArcMap ، (هذا التصدير من Model Builder إلى Python هو مثال كلاسيكي). يؤدي ذلك ، جنبًا إلى جنب مع واجهة الشريط المبسطة والأكثر حداثة ، إلى سير عمل أسرع وأسرع. كل إصدار يجعل المنتج أفضل.

    بمجرد أن يصلوا إلى التكافؤ مع ArcMap مع التعليقات التوضيحية والرسومات ، (وتحسين تجربة & quot إنهاء المنتج & quot) ، فإنهم & # x27ll قد تجاوزوا تجربة ArcMap رسميًا على الأقل لاستخدامي.

    2.5 ربما يكون أكبر خطوة إلى الأمام. كما أنه يعكس أكبر عدد من التحسينات & quot التي يطلبها المستخدم & quot. & quotImprovements & quot ، في علامات اقتباس لتعكس أن بعضًا منها كانت مجرد جهود لمطابقة ArcMap مع & quot التحسينات & quot القادمة من واجهة Pro & # x27s الأسرع - بمجرد أن يتكيف المستخدمون مع تلك الواجهة. مهام سير العمل التي تم إجراؤها لسنوات في ArcMap ليست دائمًا بديهية في Pro. قد يستغرق الأمر أسابيع أو شهورًا أو ربما حتى عام حتى تشعر المؤسسات بأن تجربة Pro تستفيد منها حقًا.

    ولكن عندما يفعلون ذلك ، فهذه خطوة إلى الأمام.

    لقد تعلمت درسا. أي عندما تطلق ESRI سفينة علم جديدة ، WAIT.

    انتظر سنة كاملة على الأقل وعدد من الإصدارات قبل إجراء التبديل.

    يعد الإصدار Pro متفوقًا على العديد من المستخدمين في الوقت الحالي ، حتى أنني أقول ، غالبية المستخدمين ، لكنه لا يزال ترحيلًا متناقضًا ولا يزال هناك بعض الأشياء التي يقوم بها ArcMap بشكل أفضل أو يفعل ذلك ببساطة لا يفعله Pro. حتى الآن.


    دورات عبر الإنترنت لتطبيق بايثون في نظم المعلومات الجغرافية

    أنا أدرس للحصول على درجة الماجستير في نظم المعلومات الجغرافية وأكملت وحدة تعتمد على بايثون. ولكن ليس كما ينطبق بشكل مباشر على الاستخدام مع نظم المعلومات الجغرافية. يا لها من فكرة مجنونة من شأنها أن تكون هاه.

    هل هناك أي قنوات جيدة على YouTube أو أفضل من ذلك ، دورات عبر الإنترنت تجمع بين هذين التخصصين جيدًا؟

    اي افكار يمكن ان تكون رائعه للعرض.

    هل تركز على استخدام Python مع Esri / ArcGIS أو المصدر المفتوح؟ لديّ دروس Youtube على كليهما ، لكن لدي المزيد حول استخدامها مع Esri.

    حظا سعيدا! اسمحوا لي أن أعرف إذا كان لديك أي أسئلة.

    وو هوو! أنت تنشر هذا هدية صباح الاثنين! شكرا جزيلا.

    لقد تعرفت على اسم المستخدم الخاص بك من قناة YT الخاصة بك! لقد ساعدتني مقاطع الفيديو الخاصة بك على TON مؤخرًا (على وجه التحديد تحويل البرامج النصية الخاصة بي إلى ArcToolboxes / Script Tools). نقدر حقًا الوقت والجهد اللذين بذلتهما في ذلك.

    رائع ، شكرا لك على هذا. لقد رأيت للتو الاسم ، لقد اشتركت مؤخرًا في قناتك. بمجرد الانتهاء من الكلية الحالية وصيفي مجاني ، فإن أهدافي هي أن أقحم نفسي في هذا. نتطلع إلى مشاهدة كل المحتوى الخاص بك!

    التعليق للرجوع اليها لاحقا ، شكرا!

    اذهب لبعض دورات ESRI MOOC.

    لدى Michael Miller بعض دورات Udemy حول تطبيق Python على QGIS

    ولكن ليس كما ينطبق بشكل مباشر على الاستخدام مع نظم المعلومات الجغرافية. يا لها من فكرة مجنونة من شأنها أن تكون هاه.

    أقول مرارًا وتكرارًا للناس هنا تعلم الثعبان أولاً. هناك الكثير لنتعلمه لدمجها في دورة واحدة. إذا علموك Python جيدًا بما فيه الكفاية ، فيجب أن يكون تطبيق gis عليها أمرًا سهلاً للغاية لأنها حرفياً مجرد حزمة أخرى لـ Python. لا يبدو أن هذا هو الحال ، لذلك أقترح استثمار المزيد من الوقت في تعلم أساسيات بايثون الآن حتى لا تواجه صراعات كبيرة في وقت لاحق.

    لقد رأيت مرارًا وتكرارًا أشخاصًا يتخطون الأساسيات ويواصلون التعلم معًا. في معظم الأوقات ، يكتب هؤلاء الأشخاص نصوصًا محسّنة بشكل سيئ ويعانون من أشياء مثل الفئات ، والميراث ، والتكوين ، والديكور ، والفهم ، واستخدام الحزم الأخرى ، وهيكل الكود العام.


    يعمل ApplySymbologyFromLayer في ArcMap ولكن ليس في برنامج Python النصي - أنظمة المعلومات الجغرافية

    التحليل التوافقي للسلاسل الزمنية (هانتس)

    هذا المستودع هو تنفيذ بيثون للتحليل التوافقي للسلاسل الزمنية (HANTS) المطبق على البيانات الجغرافية المكانية. يمكن استخدام وحدة python لإجراء خوارزمية HANTS لمجموعة من البيانات النقطية ذات الوقت المتغير في كل بكسل.

    الغرض الرئيسي من تنفيذ HANTS باستخدام الثعبان هو ملء الفجوات في السلسلة الزمنية ، مثل تلك التي تسببها السحب. يوضح الشكل 1 مثالاً للسلسلة الزمنية Proba-V لمؤشر NDVI في فيتنام من أغسطس 2015 إلى يوليو 2016. تم تجهيز السلسلة الزمنية الأصلية (باللون الأزرق) بواسطة خوارزمية HANTS (باللون الأحمر) والقيم أقل بكثير من المنحنى (على سبيل المثال ، القيم القريبة من صفر في أكتوبر 2015) على أنها قيم متطرفة واستبدالها بـ HANTS.

    الشكل 1: قيم مؤشر NDVI من مهمة Proba-V (باللون الأزرق) وقيم منحنى HANTS (باللون الأحمر) لنقطة في جنوب شرق فيتنام (خط الطول: 108.87 ، خط العرض 11.47) بين أغسطس 2015 ويوليو 2016. قيم Proba-V الأصلية التي تقع أسفل منحنى HANTS يمكن تحديدها على أنها قيم متطرفة (على سبيل المثال أكتوبر - ديسمبر 2015) ويمكن الحصول على تقدير NDVI لتلك التواريخ من منحنى HANTS.

    يوجد خياران للبرنامج لتشغيل HANTS على بيثون:

    الخياران متكافئان ، والفرق الوحيد يتعلق بالمكتبة الأساسية لمعالجة البيانات الجغرافية المكانية.


    بعض عملائنا

    ينمو بسرعة!

    نتطلع إلى توسيع وجودنا في جنوب إفريقيا!

    بصفتك مدير تطوير الأعمال ، سوف تقوم بما يلي:

    • توسيع الأعمال التجارية في جنوب أفريقيا
    • توظيف المواهب المحلية (المبيعات والوكلاء والمدربين والاستشاريين)
    • تعيين مدربين ومستشارين محليين

    نحن نقدم:

    • أنظمة الذكاء الاصطناعي والبيانات الضخمة لدعم عملياتك المحلية
    • أتمتة عالية التقنية
    • ترقية كتالوج الدورة التدريبية والمحتوى بشكل مستمر
    • متعة جيدة في الفريق الدولي

    إذا كنت مهتمًا بإدارة أعمال تدريبية واستشارية عالية التقنية وعالية الجودة.


    يعمل ApplySymbologyFromLayer في ArcMap ولكن ليس في برنامج Python النصي - أنظمة المعلومات الجغرافية

    خلفية

    قام قسم الأبحاث الحكومية (DGR) في UNM بتطوير نموذج جاذبية لغرض خاص لقياس الوصول الجغرافي إلى مرافق الرعاية الصحية ومقدميها في نيو مكسيكو. تم تنفيذ هذا العمل للجنة السياسة الصحية لنيو مكسيكو (NM HPC) من عام 1988 حتى عام 2002. تم نشر نتائج هذا العمل التمهيدي فقط على صفحة الويب السابقة لـ DGR وأيضًا في منشور توزيع محدود بواسطة NM HPC (HPC Quick Facts 2003) - مستخلص اللون). تم أيضًا إعداد عرض ملصق خاص فاز في مسابقة الملصقات في مؤتمر ESRI SWUG لعام 2002 الذي عقد في تاوس ، نيو مكسيكو (الآن مؤتمر مستخدمي جنوب غرب Esri).

    كان نموذج الجاذبية مبتكرًا للغاية ويحتمل أن يكون مفيدًا في العديد من الأماكن الأخرى خارج نيو مكسيكو حيث سيكون الحصول على دقة أعلى ومقياس أكثر دقة وموثوقية لإمكانية الوصول الجغرافي إلى الرعاية الصحية مفيدًا لقرارات السياسة. سيستمر هذا البحث في تطوير نموذج الجاذبية هذا (انظر خريطة القصة) ومقارنته أيضًا بالنتائج التي تم الحصول عليها من التقنيات المطورة حديثًا والتي استخدمها باحثون آخرون. تم تطوير نموذج الجاذبية الأصلي باستخدام (SAS) و ESRI's ArcGIS. سيتم إجراء هذه التحديثات باستخدام ArcGIS ModelBuilder ونصوص Python و R والآن مع ArcGIS Pro.

    ملحوظة: تركزت معظم الجهود حتى الآن على التطوير التقني والتعلم وتطبيق مختلف برامج الحوسبة ومرافق البرمجيات الإحصائية. سيتم في النهاية إتاحة النماذج والنصوص الناتجة للباحثين الآخرين لاستخدامها وتعديلها. نأمل أن توضح هذه التطورات التقنية بوضوح استخدام تقنية GIS المحسنة هذه وتشجع وكالات الدولة على حل مشكلات جودة البيانات ومشاركة البيانات. تشجع Esri أيضًا الوكالات الحكومية على المشاركة في برنامج البيانات المفتوحة الخاص بها والذي نأمل أن يؤدي إلى إتاحة المزيد من بيانات نيو مكسيكو للاستخدام العام في المستقبل.

    التحديثات الأولية (2012 إلى 2015)

    لقد أحرزت تقدمًا مؤخرًا في تطوير إصدار ArcGIS ModelBuilder من نموذج الجاذبية هذا باستخدام أكواد ZIP وبيانات الموفر الأقدم (المتوفرة سابقًا). في الوقت الحالي ، توجد خريطة (PDF) للنتائج الأولية للسكان لكل طبيب رعاية أولية بالإضافة إلى (PDF) تعرض التصميم والمكونات المستخدمة في ArcGIS ModelBuilder المتاحة أدناه. في الآونة الأخيرة ، بدأت عملية تطوير أداة نصوص Python وهناك وثائق مع لقطات الشاشة المتاحة أدناه والتي سيتم تحديثها مع استمرار هذه العملية (انظر أيضًا العرض التقديمي للفصل). حاليًا ، تعمل أداة Python النصية بشكل جيد باستثناء أنني أواجه مشكلات في أتمتة الرموز بشكل كامل مع إدخال محدد من قبل المستخدم لفواصل الفصل. في الوقت الحالي ، الخطوة الأخيرة هي عملية يدوية حيث يمكن تعديل الرموز من تصنيف الفواصل الطبيعية الافتراضي. آمل في حل هذه المشكلة مع دعم ESRI الفني في المستقبل.

    لا تزال النتائج بحاجة إلى التحقق من دقتها من خلال مقارنتها مع تلك التي تم الحصول عليها باستخدام SAS Macro الحالي الذي تم تطويره في DGR. ومع ذلك ، لم يعد بإمكاني الوصول إلى إصدار Windows من SAS كما كان لدي لسنوات عديدة كموظف في UNM. في UNM ، لا يتوفر إصدار للطلاب من SAS للتثبيت على أجهزة الكمبيوتر الشخصية كما هو الحال في العديد من الجامعات الأخرى مثل PSU و BU و Texas A&M و Stanford. إصدار Windows متاح فقط لاستخدام الطلاب في عدد قليل من أجهزة الكمبيوتر وللاستخدامات الإدارية التي يتم شراؤها باستخدام حساب UNM. يوجد إصدار Linux ، لكن حصص مساحة القرص تحد من فائدته. أصدرت SAS مؤخرًا إصدارًا جامعيًا جديدًا سيسمح بالمقارنة ، لكنه يفتقر إلى SAS Bridge الذي يعمل مع إصدار Windows والذي سيكون مفيدًا للغاية. ما زلت آمل في استخدام جسر SAS مع نصوص ArcGIS ModelBuilder و Python النصية (الوظائف الإضافية). لست متأكدًا بعد من أيهما سيثبت أنه أكثر كفاءة. ما زلت أعتزم إتاحة نصوص ArcGIS ModelBuilder و Python النصية في وقت ما في المستقبل بمجرد توثيقها بشكل صحيح وحزمها ليستخدمها الآخرون.

    ما زلت أخطط لبعض التطورات الأخرى باستخدام مسارات التعداد والوحدات الجغرافية بخلاف الرموز البريدية مثل المناطق الصغيرة في نيو مكسيكو التي طورتها وزارة الصحة في نيو مكسيكو (انظر خريطة القصة - الإصدار الأول). نأمل أن يتم الحصول على بيانات المزود والمرفق المشفر جغرافيًا في المستقبل والتي من شأنها أن تسمح بمقارنة النتائج مع التقنيات الأخرى المعمول بها مثل IDW و Kernel Density وطريقة منطقة المستجمعات العائمة المكونة من خطوتين (2SFCA). كما أن الحصول على بيانات حديثة عن المزودين والمرافق للمناطق الحدودية للولايات المتاخمة لنيو مكسيكو (أريزونا وكولورادو وتكساس) سيوفر نتائج أكثر موثوقية حيث يعبر العديد من المرضى حدود الولاية ويذهب البعض أيضًا إلى المكسيك للحصول على الرعاية. مشكلة الحدود / الحافة هي مشكلة منهجية شائعة جدًا يجب معالجتها في التصميم المناسب لتطبيقات التحليل المكاني. علاوة على ذلك ، إذا تم تطوير قاعدة بيانات جيدة لشبكة طرق نيو مكسيكو لاستخدامها في ArcGIS Network Analyst ، فيمكن استخدام مسافة السفر الفعلية والوقت على الطرق بدلاً من المسافات الإقليدية. سيكون من المثير للاهتمام مقارنة النتائج ومعرفة ما إذا كانت هناك أي تحسينات رئيسية أصبحت واضحة بالنظر إلى الجهد المبذول في إنشاء مجموعة بيانات جيدة لشبكة الطرق للولاية. ومع ذلك ، هناك حاجة ماسة إلى هذا الجهد للعديد من التطبيقات القائمة على الشبكة بخلاف تلك الخاصة بالرعاية الصحية.

    نظرًا لبعض المشكلات الطفيفة التي لا تزال بحاجة إلى حل باستخدام ArcGIS (غالبًا أتمتة الرموز) ، فقد بدأت في استكشاف استخدام QGIS و Python لنموذج جاذبية الرعاية الصحية. يتم حاليًا تطوير إصدار Python العام لنموذج الجاذبية والذي سيسمح باستخدام كل من الرموز البريدية ، ومسارات التعداد ، والمناطق الصغيرة في نيو مكسيكو (NMDOH) لأي نوع من مقدمي الرعاية الصحية والمرافق. آمل أن يكون لدي إصدارات تعمل في كل من ArcGIS و QGIS. سوف أنشر النتائج كلما أصبحت أكثر دراية بنظم المعلومات الجغرافية مفتوحة المصدر في المستقبل.

    لقد اختبرت أيضًا نسخة منقحة من نموذج الجاذبية SAS باستخدام مساحات التعداد و New Mexico (NMDOH) مع تقديرات السكان لعام 2002 وبيانات طبيب الرعاية الأولية لعام 2002 (انظر خريطة المنطقة الصغيرة وخريطة التعداد السكاني). ملحوظة: تم استخدام وصلة مكانية لتعيين بيانات طبيب الرمز البريدي لمسارات التعداد ومنطقة NMDOH الصغيرة. في المستقبل ، ستكون مواقع الأطباء المشفرة جغرافيًا أكثر دقة. ومع ذلك ، بالنظر إلى الاستيفاء الذي يقوم به نموذج الجاذبية ، أعتقد أن النتائج لن تكون مختلفة تمامًا. ستتوفر بعض هذه النتائج على ArcGIS Online في العديد من تنسيقات GIS (خرائط الويب التفاعلية ، وحزمة الخريطة ، وخدمات الخريطة ، وطبقات الخريطة ، وملفات الأشكال) مع استمرار التطوير. لقد تم تزويدي مؤخرًا بحساب مؤسسي عندما قمت بتجديد ترخيص الاستخدام المنزلي لـ ArcGIS الذي لم يكن لدي من قبل. شكرا esri!

    لقد أعددت برنامج نصي بلغة Python (GDAL / OGR) يقرأ ملف الشكل ، ويحسب نموذج الجاذبية ، ويكتب ملف أشكال جديدًا بالبيانات والنتائج الأصلية. لقد انتهيت في الغالب من تحويل برنامج Python النصي هذا إلى برنامج نصي لمعالجة QGIS للسماح بمزيد من تفاعل المستخدم وعرض النتائج تلقائيًا في النهاية (انظر لقطة شاشة لواجهة المستخدم والوثائق التي تعمل بشكل فوري). قد أفكر أيضًا في خيار إعداد مصمم نماذج رسوم QGIS بمجرد اكتمال البرنامج النصي لمعالجة QGIS. لقد بدأت أيضًا في تطوير مكون إضافي لـ QGIS (انظر الوثائق) بناءً على هذه البرامج النصية التي سيتم إتاحتها للاستخدام العام (راجع مستودع مكونات QGIS). سيكون المكون الإضافي المشترك عامًا (يمكن استخدامه في أماكن أخرى غير نيو مكسيكو). في الوقت الحالي ، لا تتوفر سوى لقطة شاشة لنتائج QGIS حتى اكتمال المكون الإضافي. بالإضافة إلى ذلك ، تم التخطيط لمزيد من التطويرات التي تستخدم Ubuntu-Linux وغيرها من البرامج الجغرافية المكانية مفتوحة المصدر في المستقبل. ملحوظة: على الرغم من أن تطويرات QGIS قيد الإعداد باستخدام Ubuntu-Linux ، فإنها ستعمل أيضًا على إصدارات Windows و Mac (انظر لقطة شاشة واجهة مستخدم البرنامج النصي لمعالجة Windows). الروابط أدناه مع هذه التطورات سيتم نشرها قريبًا !.

    نظرًا لأنني الآن أعمل على كود Python QGIS (PyQGIS) لنموذج الجاذبية DGR ، فقد قمت أيضًا بتطوير نص برمجي Python في الغالب (انظر الوثائق) باستخدام ArcGIS (ArcPy) وبدأت في تطوير وظيفة R. أثبت تطويري السابق لتطبيق ArcGIS ModelBuilder وأداة Python النصية المستمدة من ModelBuilder أنه مرهق وبطيء للغاية على الرغم من أنه يعمل بشكل جيد. نظرًا لأن كل من ArcGIS (R-ArcGIS) و QGIS (تطبيق خارجي) قد طورا واجهات محسّنة لـ R ، فقد حان الوقت الآن للقيام ببعض التطوير مع هذا البرنامج الإحصائي مفتوح المصدر واسع الاستخدام.

    التطورات الجديدة (مستمرة منذ 2015)

    • لقد بدأت في استكشاف بيانات مجموعة المعلومات التي تم الحصول عليها مؤخرًا من قبل قسم NM لتكنولوجيا المعلومات والتي قدمتها NM Community Data Collaborative كمصدر لمزيد من بيانات الرعاية الصحية الحديثة للاستخدام مع نموذج الجاذبية DGR. النتائج الأولية (راجع ArcGIS Online Web Map) باستخدام البيانات غير المحررة تعد واعدة. سأستخدم كلاً من نظام تحديد المواقع العالمي (GPS) الخاص بـ UNM و Esri Demographics كمصدر لتقديرات بيانات السكان في منطقة التعداد وكذلك مستويات مجموعة الكتلة الجغرافية. توجد بعض الاختلافات على مستوى مسار التعداد بين كلا التقديرين (راجع ArcGIS Online Web Map Viewer - NM 2015 Census Tract Population Estimates) وتوفر Esri فقط تقديرات لمجموعات الكتل. سأستخدم أيضًا SAS لإعداد البيانات للاستخدام اللاحق وحل مشكلات جودة البيانات. مزيد من العمل ضروري لمقارنة هذه البيانات مع قواعد بيانات الترخيص الحكومية ومصادر أخرى مثل قوائم US News Doctors Listings. سيساعد هذا في التحقق من مقدمي الخدمة النشطين وأعباء العمل بالإضافة إلى إزالة إدخالات البيانات المتعددة والسجلات المكررة. سيصبح نموذج الجاذبية أكثر فائدة مع تحسن جودة البيانات تدريجيًا.
    • مع استمرار Esri في تحسين تكامل ArcGIS مع الحزم الإحصائية مفتوحة المصدر (راجع الجلسة التقنية لقمة المطورين لعام 2016) ، أقوم بتطوير نص Python النصي المحدث باستخدام كائن بيانات الإحصاء المكاني. لقد بدأت أيضًا في استخدام جسر R-ArcGIS للوصول إلى ArcGIS من R Studio وأيضًا لتطوير أداة R Script في ArcGIS Pro (راجع مدونة ArcGIS وجلسة 2016 Developer Summit). تم الانتهاء من نص R الذي يستخدم إطار البيانات المكانية كجزء من فئة أنهيتها مؤخرًا (Geog 580L - الإحصاء المكاني - ربيع 2017). تمت مقارنة نتائج نموذج الجاذبية DGR أيضًا مع عوامل اجتماعية واقتصادية مختارة باستخدام الانحدار الموزون جغرافيًا (GWR). يتوفر عرض PowerPoint تقديمي يصف هذه النتائج الاستكشافية.
    • بناءً على التطورات السابقة ، بدأت في إعداد دالة R لنموذج الجاذبية DGR. أعتزم أيضًا إعداد نسخة نصية R من نموذج الجاذبية (2SFCA) ومقارنة النتائج مع نموذج الجاذبية السابق الذي طورته DGR. يجب أن تكون هذه التطورات متاحة في المستقبل بعد مزيد من التطوير والاختبار.
    • أنا مستمر في توسيع جهودي في هذا المجال وهناك المزيد من التطورات المخطط لها. الهدف الرئيسي والهدف البحثي هو مقارنة مختلف نماذج الوصول الجغرافي والجاذبية (DGR و 2SFCA و E2SFCA) بمستويات جغرافية أكثر تفصيلاً من مقاطعات نيو مكسيكو (عن طريق التعداد وربما الرمز البريدي). على الرغم من أنه سيكون من المفيد أن تتوفر في نهاية المطاف بيانات موفر محدثة تحتفظ بها UNM Health Sciences ، يمكن استبدال مصادر البيانات الأخرى المتاحة بشكل دائم والأقل دقة للاختبار. تتوفر حاليًا تقديرات سكانية مقدمة من Esri وأيضًا UNM Geospatial and Population Studies (GPS). كجزء من هذا العمل ، أعتزم استخدام كل من البيانات المجمعة (عن طريق التعداد السكاني) وبيانات المزود جغرافيًا. أيضًا ، سيتم تقييم قياسات كل من الإقليدية وشبكة الطرق (المسافات وأوقات السفر). يمكن إجراء بحث إضافي لتحليل مختلف العوامل الاجتماعية والاقتصادية (Census ACS وبيانات نسيج نمط الحياة Esri) والمؤشرات الصحية المختارة (NM DOH - IBIS) لتقييم العلاقات مع نتائج نموذج إمكانية الوصول الجغرافي المختلفة باستخدام العديد من طرق الانحدار المكاني. سيتم استخدام كل من R و Python جنبًا إلى جنب مع ArcGIS Pro لهذا العمل ويجب أن تكون التطورات التقنية الأخيرة لـ Esri مفيدة. سيتم نشر النتائج هنا مع إحراز تقدم.
    • سابقا: (لـ Geog 591 - المشاكل - خريف 2017) ركز على تطويرات أداة نصوص ArcGIS Pro Python لمختلف نماذج الوصول الجغرافي والجاذبية (DGR و 2SFCA و E2SFCA) مع مكتبات Python الإضافية (Pandas و SciPy و NumPy و GeoPandas). أنا أتعلم Anaconda و Jupyter Notebooks و PyCharm. سيتم استخدام كل من المسافات الإقليدية (صفائف Numpy) والمسافات القائمة على الطريق (ArcGIS Pro OD مصفوفة التكلفة) لإجراء مقارنات إحصائية. تم إعداد حالة اختبار باستخدام 33 مقاطعة في نيو مكسيكو فقط ومكانًا مأهولًا محددًا (مقر مقاطعة أو مدينة - مدينة أخرى). استخدم اختبار التطوير هذا بيانات طبية أكثر موثوقية لعام 2015 أعدتها العلوم الصحية بجامعة UNM وتقديرات السكان من نظام تحديد المواقع العالمي (GPS) التابع لـ UNM على مستوى المقاطعة. هذه النتائج واعدة (انظر خريطة المسافة الإقليدية أو خريطة مسافة الطريق أو خريطة الويب أو تطبيق خريطة الويب). مقاييس نموذج الجاذبية لإمكانية الوصول الجغرافي المحتملة التي تزيل آثار الحدود السياسية (المقاطعة) أو غيرها من جمع البيانات (مسارات التعداد ، والرموز البريدية ، وما إلى ذلك) تخلق صورة أكثر اكتمالا وواقعية حيث يتحرك المرضى بحرية عبر الحدود للحصول على خدمات الرعاية الصحية. توفر الطرق التقليدية القائمة على المقاطعة (معيار سعة الخدمة) مقياسًا جزئيًا فقط لإمكانية الوصول. يمكن تعديل نتائج حالة الاختبار القائمة على المقاطعة لتجاهل حدود المقاطعة باستخدام ArcGIS Inverse Distancw Weighted Tool (انظر IDW - خريطة مسافة الطريق) ، ولكن يجب تفسير هذا السطح الإحصائي الأكثر سلاسة بمزيد من الحذر.

    لقد اشتقت مصفوفة تكلفة OD لجميع مسارات تعداد نيو مكسيكو باستخدام أداة مصفوفة تكلفة وجهة المنشأ. يمكن الآن تطبيق نموذج الجاذبية DGR مع المسافات القائمة على الطريق. في الوقت الحالي ، سأستخدم بيانات طبيب الرعاية الأولية لعام 2002 التي كانت متاحة سابقًا أثناء العمل السابق الذي قامت به DGR للجنة السياسة الصحية لنيو مكسيكو (NM HPC) من عام 1988 حتى عام 2002. على الرغم من أن هذا العمل السابق كان يعتمد على الرموز البريدية ، إلا أنه حديث تم إجراء تعديلات (ربط مكاني) (انظر خريطة القصة) لاستخدام مساحات التعداد وتقديرات السكان لعام 2002 من UNM GPS. These results are very informative (see 2002 Gravity Model - Road Distance Map). The census tract test case results can be further modified to disregard county boundaries using the ArcGIS Inverse Distancw Weighted Tool (see IDW - Road Distance Map), but this smoother statistical surface should be interpreted with more caution. A Web Map and Web Map Application). are also available with these results. If the recent physician data for census tracts (499) or ZIP Codes (426) are eventually made available, the DGR gravity model results can provide a higher resolution and more useful picture of geographic accessibility.

    Begun to focus on the primary research goal, to statistically compare various geographic access and gravity models (DGR, 2SFCA, and E2SFCA) at various levels of geography including those with higher resolution than New Mexico counties (by census tract, ZIP Code, and perhaps census block group). Also to compare the results for each model using both Euclidean and road based distances. Preliminary results have been informative and somewhat suprising. There are pronounced differences ( measured using both relative difference and correlation coefficent) between the results when comparing Euclidean and road distances for the DGR gravity model at the county (r = 0.8088695) and census tract (r = 0.6584075) levels of geography (see 2015 County Relative Difference Map or 2002 Census Tract Relative Difference Map or Web Map or Web Map Application). Obviously accessibility depends on where you are located with respect to the network of roads. Assumming equal accessibility as measured by Euclidean distance (isotrophic surface) is not very realistic. The geography of New Mexico supports this, although I did not think the differences woud be as large as they are in some places.

    I have started using the Two-Step Floating Catchment Area (2SFCA) methods with the ArcGIS Desktop (ArcPy) script tools provided by Dr. Fahui Wang ( Wang, 2017). A Web Map showing results for the generalized 2SFCA method has been prepared using the 2002 primary care physician data that was previously available during the earlier work performed by DGR for the New Mexico Health Policy Commission (NM HPC) from 1988 through 2002. This class provided an excellent review and more in-depth background for various Python modules including Python - GeoPandas. I have re-programmed the generalized two-step floating catchment area methods using both SAS and Python3 - GeoPandas within Jupyter Notebook (see class PowerPoint Presentation). However, I did not make as much progress as I would have liked on the statistical comparison portion of my research project and more work will continue this summer and during the fall semester.

    lspear/images/New-icon.png" /> Recently: (Summer 2018 and for Geog 591 - Problems - Fall 2018) Continuing the focus on the primary research goal to statistically compare various geographic access and gravity models (1SHGM, 2SFCA, and E2SFCA). Some minor modifications of the previously developed Python3 - GeoPandas code are necessary and still need to be completed to allow for a better comparision to the DGR-1SHGM method that follows the specifications set out by the New Mexico State Legislature (Senate Joint Memorial 36, 1996) that suggests maximum travel time of 45 minutes or about 35 miles of distance (rule based, three-zone hybrid approach). Also more work needs to be done to combine the various methods (1SHGM, 2SFCA and E2SFCA) with a better user interface and flow of control using the PyCharm IDE. This modified code is currently being prepared plus a detailed statistical comparison of these results using the SAS University Edition and the R-ArcGIS Bridge will be available as progress is made. In addition, the spatial access ratio (SPAR), a recently developed method used to reduce uncertainty in model results has been employed by other researchers (see recent publication by a UNM research group). I plan to compare the SPAR with both the one-step and two-step model results as part of future analyses. I am also working on developing a version using the new ArcGIS API for Python and have been able to perform the calculations using the SpatialDataFrame but have not been able to directly display the results (see GeoNet Question). I have also started to develop another version using both NumPy and Pandas in ArcGIS Pro with FeatureClassToNumPyArray (see Python: Working with Feature Data) but there is not yet a direct way to go back to a feature class from a Pandas data frame (see GeoNet Question). Eventually, there will be a Story Map with a discussion and results.

    Exploratory Data Analysis : Some very preliminary results and data visualizations are now available that have been prepared using the SAS University Edition. These results (see summary statistics PDF) suggest that there is a significant difference in the results obtained from the 2SFCA methods compared with the 1SHGM method. However, these results based on a standard ANOVA should be interpreted with caution as several of the basic ANOVA assumptions are not met, primarily the independence of the data that are spatially autocorrelated and also not normally distributed plus non-common variances. More work is currently underway to research and apply more appropriate statistical methods. These additional statistical methods within R will be used to compare results from various models (one-step vs. two-step with various distance decay functions) and will be available as progress is made (see R Results). In addition, both absolute and relative differences will be calculated to investigate how results vary at each census tract location (see Preliminary Results (1SHGM and 2SFCA) Web Mapping Application - Note: a more efficient version is being prepared using the ArcGIS API for JavaScript).

    Hybrid-Zonal Model Results with Various Distance Decay Functions : The boxplot (below) shows the distribution of Physicians per Population (PHYS_PER_POP) from the various models (Acc Methods - Accessibility Methods), all using a hybrid-zonal approach with various distance decay functions (1SED - 1SHGM with DGR type power distance decay 2SEE - 2SFCA with exponential distance decay 2SEG - 2SFCA with gaussian distance decay 2SEP - 2SFCA with power distance decay). Note: the means and medians are close for the 2SFCA and only slightly different than the 1SHGM. It may be that the ANOVA results (can reject the null hypothesis that the means of the different methods are the same p Power Based Distance Decay Results : This boxplot (below) and histograms and boxplot PDF. shows the distribution of Physicians per Population (PHYS_PER_POP) from various models (Acc Methods - Accessibility Methods), using a hybrid-zonal approach with power based distance decay functions and also the distribution using the county based service area approach (COSVAR). This visual comparison indicates that the one-step methods (1SED and 1SEP) tend to produce more similar results to the widely used county based service area method (COSVAR) than a reasonably comparable two-step method (2SEP). An interactive web map has been prepared showing these results and the relative difference between the one-step and two-step methods at each census tract. There are also some special web mapping applications (see 1SEP and 2SEP, 1SED and 2SEP, and 1SED and 1SEP) that are more useful for comparing these results side-by-side. Note: The county based service area method (COSVAR) is only a population-to-physician ratio, it's the service capacity standard or "rational service area" used by the U.S. Department of Health and Human Services (DHHS) for defining physician shortage areas.

    Recently: (for Geog 591 - Problems - Spring 2019 and Summer 2019) I have started working on completing a more in-depth statistical analysis and review of the one-step and two-step models. These more detailed results will eventually be presented using Esri's ArcGIS Online Story Map facility. I am also evaluating several ways to develop improved scripts using Python3 - GeoPandas and the PyCharm IDE. A QGIS(PyQGIS) script, plugin, and standalone application will eventually be developed providing GeoPandas is compatible with the new QGIS 3.x versions. Given recent developments in the ArcGIS API for Python and the new Spatially Enabled DataFrame (SEDF) this may now provide an efficient web based development environment. The SEDF can now be used within ArcGIS Pro (ArcPy) and I will also explore developing a jupyter notebook and script here using a special Conda environment. Eventually these Python scripts (see draft documentation) will calculate selected models, compares results using both exploratory and statistical data analysis methods, plus hopefully include a spatial version of ANOVA. ملحوظة: please see "All models are wrong but some are useful".

    I spent more time than expected this summer viewing selected technical sessions from the recent Esri Developer Summit and becoming familiar with the ArcGIS API for Python and the new Spatially Enabled DataFrame (SEDF). Replacing GeoPandas with the SEDF was easy and the calculations of a test 2SEE model were successful. However, the map visualization of results within Jupyter Notebook was more problematic. Using an ArcGIS Online WebMap with the Jupyter Notebook Mapping Widget (arcgis.widgets.MapView) was the best alternative as it allows for a map legend to also be displayed (see below). But I have had problems after adding a results layer directly to the webmap. I can't display the polygon symnology without saving it to ArcGIS Online for rendering with smart mapping and then loading it again in another jupyter notebook cell to display. I hope to learn more about the proper way to do this and resolve my problems shortly. Recently: (for Geog 591 - Problems - Fall 2019) I am still working on completing a more in-depth statistical analysis and review of the one-step and two-step models. These more detailed results will eventually be presented using Esri's ArcGIS Online StoryMap facility. I hope to make more progress evaluating several ways to develop improved scripts using Python3 - GeoPandas and the PyCharm IDE. A QGIS(PyQGIS) script, plugin, and standalone application will be developed providing GeoPandas is compatible with the new QGIS 3.x versions. However, I think ArcGIS Pro is currently the most suitable GIS environment for development given the new ArcGIS API for Python and the Spatially Enabled DataFrame (SEDF). I will also be using the Spyder IDE for developing a geoprocessing script tool. I will continue more research to see if a spatial version of ANOVA can be included with the exploratory and statistical data analysis methods used in these scripts to compare results and allow the user to make a more informed decision of which model to use. I have been making good progress developing a geoprocessing script tool for both the 1SHGM and G2SFCA models (exponential, Gaussian, powers including DGR's variation) using ArcGIS Pro and the API for Python that also includes diagnostics such as summary statistics, histogram, and a boxplot (see preliminary test versions below). Although the model results and maps (natural breaks) are similar in many census tracts, there are noticeable differences in the physician per population values for other census tracts that influence the statistical comparisons (see scatter plot below). Additional statistical comparisons of results plus technical documentation for these geoprocessing tools are currently being prepared and will be available soon.

    The additional statistical analyses of results has clearly shown that significant differences are apparent in the comparisons of the one-step (1SHGM) and two-step (G2SFCA) models. A series of scatterplots were prepared and correlation coefficients were calculated that support the results obtained from the previous histograms and T-Tests. The table (see below) summarizes these results. The most similar results when comparing the one-step and two-step models was for those that used a power based distance decay method (1SEP and 2SEP). The one-step (1SEP) model also seemed to produce the most realistic results with a mean value close to the statewide mean (0.6225) and a more even numerical distribution of census tracts below (244) and at or above (255) the national proviter-to-population benchmark (0.79). However, there was not a very even geographical distribution (see map below) as most of the census tracts below the benchmark seem to be in the larger rural census tracts with some exceptions in the southern and southeastern urban areas close to New Mexico's borders with Arizona, Texas and Mexico. Additional research using spatial statistical regression models is planned that will evaluate how results from these geographic access models are related to various measures of health inequality and health disparities.






    Currently: (Independent Research 2020 - 2021) I am continuing work to develop both a QGIS and ArcGIS Pro geoprocessing scripts for the one-step and two-step models. I will also be using both Conda Python and R enviornments with Jupyter Notebooks and the new ArcGIS Pro Notebooks with both the R-ArcGIS Bridge and the SAS-ArcGIS Bridge (see Spatial Data Science ArcGIS Blog and Spatial Data Science in ArcGIS, YouTube). More data analysis and data visualization methods plus statistical comparisons including a spatial ANOVA will be performed if possible. I am also conducting further spatial statistical analyses using methods such as geographically weighted regression. (GWR). These spatial methods will be useful to see how results from the geographic access models are related to various measures of health inequality (health disparities). For instance, several methods to classify rural or urban census tracts (See Rural Definitions for Health Policy and Rural-Urban New Mexico, Healthcare Access) have been developed. Plus the CDC has a well developed Social Vulnerability Index for census tracts. These classifications and other socio-economic and demographic attributes used to identify Health Professional Shortage Areas (HPSAs) and Medically Underserviced Areas (MUAs) will be evaluated as components of several spatial statistical models (see Esri Spatial Statistics Resources). The results from these analyses (including better graphics) are currently being prepared as StoryMap. I am also currently learning more about Geographic Artificial Intelligence ( GeoAI) and hope to expand this research to use some of these methods in the future ( see AI-ML Class Project, YouTube).

    Previous Results (ArcGIS Online Web Map)

    Web Maps and Mapping Applications:


    What tasks do you use Python for in your GIS work?

    I'm trying to incorporate python in my day to day GIS job. What have you made scripts for that made your day easier? It could be geoprocessing tasks or even folder structure tasks.

    Basically I'm trying to get ideas on what I can practice writing at home to impress the ol' boss man.

    Primarily automation, I have various parameters for model runs stored in CSVs that i can just run using a Python API. It saves me from having to manually input parameters each run and the script will just work its way through all of them until its done. All I need to do is change the name/directory of whatever csv I want to run.

    I've also used it to automate raster operations, for instance when you might be using raster calculator to produce maps multiple times with a single method (although changing some of the inputs each time) along with other processes. Writing a single Python script usually reduces the tedium of such tasks.

    I've also used it to run a bunch of SQL scripts one after another, produce plots, vector maths and converting quickly between file formats (especially GeoJSON).


    ApplySymbologyFromLayer works in ArcMap but not in python script - Geographic Information Systems

    Today s fast evolving power systems require engineers to perform thorough studies for the purpose of evaluating the operation of their networks under different conditions. Although informative, some of these studies could be repetitive and time-consuming. Automation relieves engineers from any redundant and laborious procedures, and provides them the information and results required in an effortless manner.

    Aiming to ease the effort required in performing several simulations by hand and to extend the customization of the CYME applications, Python scripting has been integrated into the CYME power system analysis software.

    Python scripting comes with a Site Package, a Console, a Toolbox and a built-in script editor. It can be used in a stand-alone mode or in a mode directly embedded into the CYME software.

    • The Python Site Package contains all the modules and functions required to access network properties, manipulate equipments and devices, perform various analyses and more importantly, obtain meaningful results.
    • The Console allows the users to carry out commands directly in the CYME application to allow command testing, variable value inspection and quickly retrieve information. A command manager keeps track of the history of commands.
    • The Toolbox allows the users to add and execute scripts. Variables defined in the scripts can be accessed through the Toolbox without having the scripts being modified.
    • The built-in script editor that is simple to use and includes features such as syntax highlighting, color-coding and code-completion.

    With Python scripting, users can easily perform batch analysis, automate routine studies, create new algorithms, quickly retrieve information and create charts through a simple mouse-click on a script. Take advantage of all the possibilities offered by the CYME Scripting Tool and appreciate the increase in productivity brought by the creativity of your scripts.

    Easy Scripting with Python

    Python is a scripting language that is open-source and cross-platform.

    Unlike other programming languages, Python does not have difficult syntax and offers code completion. Its high readability combined with the CYME function names make Python easy to learn for beginners while staying powerful for experts.

    Not only does it take care of exception handling, the CYME Scripting Tool with Python has also been robustly designed to provide you with the latest data model so that you can always be up to date.

    Python scripting takes advantage of all the power accessible through regular expressions, along with an advanced filtering mode that comes to hand when accessing data collection.

    Python suit your needs and style

    The Python Console and Toolbox allow an embedded Python usage within the CYME software for the rapid execution of several commands and scripts.

    The user can write scripts using the built-in script editor, and can as well write scripts in any text editor and execute them in a stand-alone way outside of the CYME application environment, via your favorite Python IDE (IDLE, Komodo IDE, Eclipse, PythonWin, PyCharm, etc.)

    Whether scripts and commands are run in the embedded or non-embedded way, the possibilities to extend the capabilities of the CYME software are unlimited.

    The Site Package developed offers many modules designed to be powerful and easy-to-use: network modeling, database access, equipment, report and error management. These modules are constantly evolving to better suit the growth of the application.

    Besides quickly retrieving information through several command lines or to run routine analysis through the use of scripts, the users can also create their own algorithms and write their own analysis. For example, you can create your own Load Growth analysis to modify the loads in a complex way that cannot be easily achieved with the default Load Growth analysis. Likewise, your commands can be inserted to apply modifications to the network. Charts and reports are easily customizable to display the results according to your preferences.

    Several device controls and customization tools now offer embedded scripting functionalities. Scripts can now be used to define the control for capacitors, regulators, BESSbattery energy storage systems and centralized capacitor control systems. They can also be used to create custom keywords and filters.

    Python s power and user-friendliness make it the ideal tool for writing any large application to suit your needs and simplify your work.

    Combined with your creativity, Python scripting can extend the already-robust capabilities of the CYME software beyond imagination.


    شاهد الفيديو: 20 ВЕЩЕЙ ДЛЯ ШКОЛЫ С Aliexpress, От Которых Ты Офигеешь. Безумные Вещи с Алиэкспресс + КОНКУРС (شهر اكتوبر 2021).