Преобразование Google Earth Engine в Python API: пространственные соединения

В настоящее время я перевожу свой GEE с Javascript на Python API. Одна первоначальная проблема, с которой я столкнулся, связана с пространственными соединениями. По сути, у меня есть шейп-файл и ряд случайных точек, и я пытаюсь создать набор функций, который сообщает значения из шейп-файла для каждой точки. Синтаксис следующий:


#1. A shapefile of sub-Saharan Africa, which I made open for public usage 
SSA = ee.FeatureCollection('users/salem043/Africa_Districts')

#2. 100 random points within the SSA shapefile
points = ee.FeatureCollection.randomPoints(SSA, 100)

#3. The properties I want to retain from the SSA shapefile (admin. districts)
properties = ["ADM0","ADM1", "ADM2"]

#4. This spatial filter function which used to work in Javascript
spatialFilter = ee.Filter.intersects({leftField: '.geo', rightField: '.geo'})

#5. Using the spatial filter and the join command I then create a feature var 

joinAll = ee.Join.saveAll('matched').apply(points, SSA, spatialFilter)


Для шейп-файла SSA ссылка: https://code.earthengine.google.com/?asset=users/salem043/Africa_Districts.

Ошибка, которую я получаю, происходит на шаге 4: Python сообщает, что «имя 'leftField' не определено». Если вы можете помочь мне понять, как преобразовать Javascript на шаге 4 (и шаге 5, если это тоже будет проблемой) в Python, я был бы очень благодарен!

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
393
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

С Python вам нужно окружить ключи dict с помощью".
Заменить
spatialFilter = ee.Filter.intersects({leftField: '.geo', rightField: '.geo'})
автор
spatialFilter = ee.Filter.intersects({"leftField": '.geo', "rightField": '.geo'})

Другие вопросы по теме