Catalogue de fonctions personnalisées
Ces fonctions encapsulent du code Python complexe, vous permettant de mettre en œuvre facilement des manipulations et calculs de données sophistiqués.
GeoPard propose un catalogue complet de fonctions personnalisées conçues pour améliorer la lisibilité et la fonctionnalité des analyses basées sur des équations. Ces fonctions encapsulent des python code, vous permettant de mettre en œuvre facilement des manipulations et des calculs de données sophistiqués.
Saisir l’équation

La liste des fonctions préintégrées disponibles pour créer des équations plus intuitives et plus faciles à maintenir dans GeoPard est incluse dans le geopard package :
fill_gaps_with_k_neighbors
Cette fonction restaure les vides de données ou les zéros dans un jeu de données à l’aide de l’algorithme K-Neighbors. En spécifiant la variable input_data (comme un jeu de données avec l’attribut sélectionné) et le nombre de voisins k, vous pouvez remplir sans difficulté les valeurs manquantes, garantissant la continuité et l’intégrité des données.
Cette fonction fonctionne bien lorsque les vides de données sont répartis dans le champ et n’ont pas été attribués à une partie particulière de la limite du champ.
determine_data_similarity
Utilisez cette fonction pour calculer la similarité pixel par pixel entre deux jeux de données. Les variables data_layer_1 et data_layer_2 doivent représenter la même mesure dans les mêmes unités afin de garantir une comparaison pertinente. En fournissant des variables data_layer_1 et data_layer_2 associées aux jeux de données, vous pouvez générer une carte de similarité avec des valeurs allant de 0 à 1, facilitant les études comparatives et la reconnaissance de motifs.
determine_data_similarity_from_normalized
Utilisez cette fonction pour calculer la similarité pixel par pixel entre deux jeux de données normalisés. La normalisation est recommandée lorsque les data_layer_1 et data_layer_2 originaux ont des échelles ou des unités différentes. En fournissant ces jeux de données en entrée, la fonction génère une carte de similarité avec des valeurs allant de 0 à 1, ce qui la rend adaptée aux études comparatives, à la reconnaissance de motifs et à l’analyse de la cohérence spatiale.
determine_low_high_similarity
Cette fonction évalue la similarité bas-haut entre deux jeux de données. En fournissant des variables data_layer_1 et data_layer_2 associées à des jeux de données, vous obtenez une carte de similarité catégorisée indiquant des combinaisons telles que bas-bas, bas-haut, haut-bas et haut-haut, ce qui est utile pour une classification nuancée des données.
get_value_for_zone
Utilisez cette fonction pour extraire toutes les valeurs d’un attribut de jeu de données dans une seule zone. Fournissez data_layer (la couche d’attribut), zones_layer (la carte des zones), et zone_id (le numéro de la zone) pour isoler les valeurs à des fins d’analyse, telles que le rendement, la dose d’application ou la dose de semis, à l’intérieur de cette zone.
drop_value
Cette fonction vous permet de supprimer des valeurs spécifiques d’un attribut de jeu de données. En spécifiant data_layer et value_to_drop, vous pouvez nettoyer le jeu de données en éliminant ces valeurs du résultat, en les remplaçant techniquement par NaN.
normalize_data
Normalisez un attribut de jeu de données avec cette fonction. En passant data_layer, vous pouvez mettre les données à l’échelle dans une plage standardisée de 0 à 1, ce qui facilite la comparaison et l’intégration entre différents jeux de données.
calculate_total_applied_fertilizer
Calcule la quantité totale d’engrais appliquée en unités par surface (par exemple, en kg/ha, l/ha, gal/ac, etc.). En fournissant application_list des jeux de données avec des attributs AppliedRate et les active_ingredient_coefficient_list correspondants avec des produits fertilisants, vous obtenez la quantité totale réelle d’engrais appliquée en unités (par exemple, en kg, l, gal, etc.).
calculate_total_applied_nitrogen
Calcule la quantité totale d’azote appliquée en kg/ha à l’aide de cette fonction. En fournissant application_list des jeux de données avec des attributs AppliedRate et les active_ingredient_coefficient_list avec des produits azotés pour convertir l’azote réel en kg/ha, vous pouvez calculer avec précision la quantité totale d’azote appliquée, essentielle pour la planification agricole et les évaluations de durabilité. La sortie est utilisée comme N_total_applied dansgeopard.calculate_nitrogen_use_efficiency.
calculate_nitrogen_uptake
Déterminez l’absorption d’azote en kg/ha avec cette fonction. En fournissant yield_wet_tha, moisture_pct, protein_pct à partir du jeu de données de rendement et protein_crop_correction_coefficient représentant le lien entre les protéines et l’absorption d’azote, vous pouvez évaluer l’efficacité d’utilisation de l’azote dans la production agricole. La sortie est utilisée comme N_uptake dansgeopard.calculate_nitrogen_use_efficiency .
calculate_nitrogen_use_efficiency
Évalue l’efficacité d’utilisation de l’azote en pourcentage à l’aide de cette fonction. En saisissant N_total_applied et N_uptake des variables (issues des fonctions précédentes), vous pouvez mesurer l’efficacité de l’application d’azote, ce qui aide à optimiser l’utilisation des engrais.
calculate_costs
Calcule les coûts totaux en fonction des doses d’application et des prix à l’aide de cette fonction. En fournissant une application_rate_list de jeux de données avec les attributs AppliedRate et une price_per_unit_listcorrespondante, vous pouvez agréger les dépenses liées à diverses activités agricoles, ce qui soutient la gestion budgétaire et la planification financière. La sortie est utilisée comme costs dansgeopard.calculate_profit.
calculate_revenue
Calcule le revenu à partir du jeu de données de rendement à l’aide de cette fonction. En saisissant yield_as_mass associé à l’attribut du jeu de données de rendement et le yield_price_per_unit, vous pouvez estimer le revenu généré par la production agricole, facilitant ainsi les évaluations économiques. La sortie est utilisée comme costs dansgeopard.calculate_profit .
calculate_profit
Détermine le bénéfice en soustrayant les coûts du revenu à l’aide de cette fonction. En fournissant les revenue et costs variables (issues des fonctions précédentes), vous pouvez calculer facilement le gain financier de leurs opérations agricoles, ce qui soutient l’analyse de la rentabilité et la prise de décision stratégique.
fill_value_for_range
Cette fonction filtre les valeurs dans une plage spécifiée dans le tableau d’ input . En fournissant le tableau, ainsi que les seuils optionnels input array, ainsi que les seuils optionnels min_value et optionnels max_value , vous pouvez isoler les valeurs qui se situent dans la plage souhaitée. Le paramètre value_to_fill permet de remplacer les valeurs hors plage par une valeur spécifiée, améliorant ainsi les processus de filtrage et de normalisation des données.
calculate_per_pixel_mae
Utilisez cette fonction pour calculer l’erreur absolue moyenne (MAE) par pixel entre deux jeux de données. Elle fournit une carte spatiale des différences absolues. La « différence absolue » est simplement la taille de l’écart entre les valeurs de pixels correspondantes, sans tenir compte du fait que l’une soit supérieure ou inférieure à l’autre.
La fonction aide à identifier les zones présentant des écarts plus importants.
calculate_per_pixel_relative_deviation
Cette fonction calcule l’écart relatif pour chaque pixel entre deux jeux de données, en exprimant la différence sous forme de pourcentage de la valeur dans dataset_1. En substance, elle montre de combien la valeur d’un pixel s’écarte de la valeur correspondante dans dataset_1 en termes proportionnels.
Cette approche est particulièrement utile lors de l’analyse des variations des propriétés du sol, du rendement des cultures ou des données de télédétection, car elle vous aide à repérer rapidement les zones présentant des différences proportionnelles importantes.
calculate_difference
Cette fonction soustrait un jeu de données d’un autre pour créer une carte de différence. Elle met en évidence les zones où les valeurs d’un jeu de données sont plus élevées ou plus faibles par rapport à l’autre, ce qui facilite l’identification des tendances et des changements au fil du temps.
Cet outil est particulièrement utile pour visualiser les variations des propriétés du sol, du rendement des cultures ou des données de télédétection, vous aidant à identifier rapidement les zones pouvant nécessiter une analyse plus approfondie ou une intervention.
calculate_relative_difference
Cette fonction calcule la différence relative pour chaque pixel en normalisant la différence entre les jeux de données à l’aide des valeurs de dataset_2. Cela signifie qu’elle montre à quel point le changement est important par rapport à la magnitude de dataset_2.
Une telle comparaison proportionnelle est particulièrement utile lorsqu’on travaille avec des jeux de données d’échelles différentes, car elle aide à révéler les variations relatives des propriétés du sol, des rendements des cultures ou des sorties de capteurs. Cette approche aide à repérer les zones présentant une variation notable.
calculate_normalized_difference
Cette fonction calcule la différence normalisée pour chaque pixel en mettant les deux jeux de données à l’échelle par rapport à leur valeur maximale globale. Ce processus rend les jeux de données directement comparables même s’ils ont à l’origine des plages différentes.
La carte résultante fournit une vue claire des variations des propriétés du sol, du rendement des cultures et des données de télédétection, vous permettant d’identifier et d’évaluer rapidement les différences clés.
build_zones_by_intervals
Cette fonction crée une carte de zones de gestion en classant une couche raster continue en zones discrètes selon des intervalles de valeurs définis par l’utilisateur.
Chaque intervalle définit une zone, et chaque pixel est affecté à la zone dans laquelle se situe sa plage de valeurs. Les pixels qui ne correspondent à aucun intervalle sont marqués comme -1.
Cette approche de zonage est couramment utilisée pour transformer des cartes de rendement, des propriétés du sol ou des indices de télédétection en zones de gestion exploitables pour des applications à dose variable.
Cas d’utilisation typiques
Créer des zones de gestion à partir de couches de rendement, de NDVI ou de sol
Préparer des cartes de zones pour les calculs de dose d’engrais ou de semis
Segmenter les champs en zones homogènes pour la prise de décision
calculate_nutrient_rate_as_active_ingredients_per_zone
Cette fonction calcule la dose d’apport nutritif requise (matière active) pour chaque zone de gestion.
Le calcul est basé sur :
un niveau nutritif cible,
l’apport en nutriments disponible pour la plante provenant du sol,
les nutriments déjà appliqués lors d’opérations précédentes (fumier, engrais, digestat, etc.).
Les opérations nutritives appliquées peuvent être fournies sous forme de constantes, de valeurs par zone, de couches raster ou de toute combinaison de ces éléments. Toutes les entrées sont automatiquement résolues et agrégées par zone.
Par défaut, la dose requise est calculée comme la différence entre le niveau nutritif cible et la somme de l’apport du sol et des nutriments appliqués. Le résultat est renvoyé sous forme de carte raster où chaque zone contient une dose nutritive uniforme.
convert_active_ingredient_and_product
Cette fonction convertit une couche raster entre les doses de matière active et les doses de produit à l’aide d’un coefficient de correction.
Le corrected_coefficient peut être un seul float (appliqué à tous les pixels) ou une matrice de coefficients (conversion par pixel). Elle est généralement utilisée pour traduire les besoins nutritifs calculés (matière active) en doses réelles d’application du produit, ou inversement, en fonction de la composition de l’engrais ou de la concentration nutritive.
La conversion est appliquée pixel par pixel, en préservant la structure spatiale de la couche d’origine.
Cas d’utilisation typiques
Convertir les doses nutritives en doses de produit fertilisant
Ajuster les cartes d’application en fonction de la concentration nutritive
Préparer les cartes de prescription finales pour les machines
estimate_texture_class_based_on_usda
Cette fonction estime la texture du sol selon l’USDA pour chaque pixel à l’aide des pourcentages de sable, de limon et d’argile.
Fournissez trois couches raster en pourcentage (0-100) représentant les fractions granulométriques. Le résultat est des noms de classes USDA tels que sand, loamy_sand, sandy_loam, loam, silt_loam, sandy_clay_loam, clay_loam, silty_clay_loam, silty_clay, ou undefined lorsque les entrées sont invalides.
estimate_texture_class_based_on_fao_wrb
Cette fonction estime la classe de texture du sol FAO/WRB (ISO 11277) pour chaque pixel sur la base des pourcentages de sable, de limon et d’argile.
Fournissez trois couches raster en pourcentage (0-100) représentant les fractions granulométriques. Le résultat est des codes de classe FAO/WRB tels que S, LS, SL, L, SiL, Si, SCL, CL, SiCL, SC, SiC, C, HC, ou undefined lorsque les entrées sont invalides.
calculate_soil_bulk_density
Cette fonction calcule la densité apparente du sol (g/cm³) en fonction de la classe de texture et de la matière organique du sol (SOM) optionnelle.
Le texture_class_layer doit contenir des noms ou des codes de classe produits par la fonction de texture USDA ou la fonction de texture FAO/WRB mentionnée ci-dessus.
Si som_pct_layer est fourni sous forme de pourcentage, la fonction ajuste la densité apparente à l’aide du SOM. Sinon, elle renvoie des valeurs de densité apparente du sol en g/cm³ associées aux classes de texture selon la recherche USDA ou FAO/WRB.
Mis à jour
Ce contenu vous a-t-il été utile ?