# Özel Fonksiyonlar Kataloğu

GeoPard, denklem tabanlı analizlerin okunabilirliğini ve işlevselliğini artırmak için tasarlanmış kapsamlı bir özel fonksiyon kataloğu sunar. Bu fonksiyonlar karmaşık `python` kodunu kapsülleştirerek gelişmiş veri işlemlerini ve hesaplamaları kolayca uygulamanıza olanak tanır.

### Denklem Girin

<figure><img src="https://docs.geopard.tech/~gitbook/image?url=https%3A%2F%2F3272281156-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FYICBELdyAXXebKAzfLOR%252Fuploads%252FdHTdBE1CN2gSJbE7Bfo0%252Fimage.png%3Falt%3Dmedia%26token%3Dd8e3544f-feca-43a6-b6a1-f1305068de88&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=508ec9e0&#x26;sv=2" alt=""><figcaption><p>Bir Denklem Girin</p></figcaption></figure>

GeoPard içinde daha sezgisel ve bakımı daha kolay denklemler oluşturmak için kullanılabilen hazır fonksiyonların listesi `geopard` paketine dahildir:

### fill\_gaps\_with\_k\_neighbors

```python
# input_data bir Veri Kümesi öznitelik katmanıdır (ör. Verim, NDVI)
filled_layer = geopard.fill_gaps_with_k_neighbors(yield_layer, k=5)
```

Bu fonksiyon, bir veri kümesindeki veri boşluklarını veya sıfırları K-Komşular algoritmasını kullanarak geri doldurur.  `input_data` değişkenini (seçilen özniteliğe sahip Veri Kümesi olarak) ve komşu sayısını `k`belirterek eksik değerleri sorunsuz şekilde doldurabilir, veri sürekliliğini ve bütünlüğünü sağlayabilirsiniz.

Bu fonksiyon, veri boşlukları tarla geneline dağılmışsa ve tarla sınırının belirli bir bölümünde toplanmamışsa iyi çalışır.

### determine\_data\_similarity

```python
similarity = geopard.determine_data_similarity(yield_2023, yield_2024)
```

Bu fonksiyonu, iki Veri Kümesi arasındaki piksel bazlı benzerliği hesaplamak için kullanın.  `data_layer_1` ve `data_layer_2` değişkenleri **aynı ölçümü** ve **aynı birimleri** temsil etmelidir; böylece anlamlı bir karşılaştırma sağlanır. Veri Kümeleriyle ilişkili değişkenleri sağlayarak 0 ile 1 arasında değerler alan bir benzerlik haritası oluşturabilir, karşılaştırmalı çalışmalar ve desen tanıma işlemlerini kolaylaştırabilirsiniz. `data_layer_1` ve `data_layer_2` Veri Kümeleriyle ilişkili değişkenleri sağlayarak 0 ile 1 arasında değerler alan bir benzerlik haritası oluşturabilir, karşılaştırmalı çalışmalar ve desen tanıma işlemlerini kolaylaştırabilirsiniz.

### determine\_data\_similarity\_from\_normalized

```python
layer_1_norm = geopard.normalize_data(layer_1)
layer_2_norm = geopard.normalize_data(layer_2)

similarity = geopard.determine_data_similarity_from_normalized(layer_1_norm, layer_2_norm)
```

Bu fonksiyonu, normalize edilmiş iki veri kümesi arasındaki piksel bazlı benzerliği hesaplamak için kullanın. Orijinal `data_layer_1` ve `data_layer_2` farklı ölçeklere veya birimlere sahipse normalizasyon önerilir. Bu veri kümelerini girdi olarak vererek fonksiyon, 0 ile 1 arasında değerler alan bir benzerlik haritası üretir; bu da onu karşılaştırmalı çalışmalar, desen tanıma ve mekânsal tutarlılık analizi için uygun hâle getirir.

### determine\_low\_high\_similarity

```python
zones = geopard.determine_low_high_similarity(soil_ph, yield_layer)
```

Bu fonksiyon, iki Veri Kümesi arasındaki düşük-yüksek benzerliğini değerlendirir. Veri Kümeleriyle ilişkili değişkenleri girdi olarak verdiğinizde, düşük-düşük, düşük-yüksek, yüksek-düşük ve yüksek-yüksek gibi kombinasyonları gösteren kategorize edilmiş bir benzerlik haritası elde edersiniz; bu da ayrıntılı veri sınıflandırması için faydalıdır. `data_layer_1` ve `data_layer_2` Veri Kümeleriyle ilişkili değişkenleri girdi olarak verdiğinizde, düşük-düşük, düşük-yüksek, yüksek-düşük ve yüksek-yüksek gibi kombinasyonları gösteren kategorize edilmiş bir benzerlik haritası elde edersiniz; bu da ayrıntılı veri sınıflandırması için faydalıdır.

### get\_value\_for\_zone

```python
zone_3_values = geopard.get_value_for_zone(yield_layer, zone_map, zone_id=3)
```

Bu fonksiyonu, bir Veri Kümesi özniteliğindeki tüm değerleri tek bir bölge içinden çıkarmak için kullanın.  `data_layer` (öznitelik katmanı), `zones_layer` (bölge haritası) ve `zone_id` (bölge numarası) vererek o bölgenin içindeki verim, uygulama oranı veya ekim oranı gibi değerleri analiz için ayırabilirsiniz.

### drop\_value

```python
clean_layer = geopard.drop_value(elevation_layer, value_to_drop=0)
```

Bu fonksiyon, bir veri kümesi özniteliğinden belirli değerleri kaldırmanıza olanak tanır.  `data_layer` ve `value_to_drop`belirterek veri kümesini, bu değerleri sonuçtan çıkarıp teknik olarak `NaN`.

### normalize\_data

```python
ndvi_normalized = geopard.normalize_data(ndvi_layer)
```

Bu fonksiyonla bir veri kümesi özniteliğini normalize edin.  `data_layer`vererek veriyi 0 ile 1 arasında standartlaştırılmış bir aralığa ölçekleyebilir, farklı veri kümeleri arasında karşılaştırma ve entegrasyonu kolaylaştırabilirsiniz.

### calculate\_total\_applied\_fertilizer

```python
applications = [urea_rate, map_rate]
coefficients = [1.0, 1.0]  # birimleri korumak için 1.0 kullanın veya ürün konsantrasyonuna göre ayarlayın

total_applied = geopard.calculate_total_applied_fertilizer(applications, coefficients)
```

Bu fonksiyonla birim alan başına Toplam Uygulanan Gübreyi hesaplayın (örneğin kg/ha, l/ha, gal/ac vb.).  `application_list` UygulamaOranı özniteliklerine sahip Veri Kümeleri ve bunlara karşılık gelen `active_ingredient_coefficient_list` gübre ürünleriyle birlikte verilerek gerçek toplam uygulanan gübreyi birim olarak (örneğin kg, l, gal vb.) elde edebilirsiniz.

### calculate\_total\_applied\_nitrogen

```python
applications = [urea_rate, uan_rate]
nitrogen_coefficients = [0.46, 0.32]  # her üründeki N oranı (aktif madde)

N_total_applied = geopard.calculate_total_applied_nitrogen(applications, nitrogen_coefficients)
```

Bu fonksiyonla kg/ha cinsinden Toplam Uygulanan Azotu hesaplayın.  `application_list` UygulamaOranı özniteliklerine sahip Veri Kümeleri ve bunlara karşılık gelen `active_ingredient_coefficient_list` azot ürünleriyle birlikte vererek gerçek azotu kg/ha değerine dönüştürebilir ve tarımsal planlama ile sürdürülebilirlik değerlendirmeleri için önemli olan Toplam Uygulanan Azotu doğru şekilde hesaplayabilirsiniz. Çıktı, `N_total_applied` olarak[`geopard.calculate_nitrogen_use_efficiency`](#calculate_nitrogen_use_efficiency).

### calculate\_nitrogen\_uptake

```python
N_uptake = geopard.calculate_nitrogen_uptake(
    yield_wet_tha=yield_layer,
    moisture_pct=moisture_layer,
    protein_pct=protein_layer,
    protein_crop_correction_coefficient=6.25
)
```

Bu fonksiyonla kg/ha cinsinden Azot Alımını belirleyin.  `yield_wet_tha`, `moisture_pct`, `protein_pct` değerlerini Verim Veri Kümesinden ve `protein_crop_correction_coefficient` değerini proteinin azot alımıyla ilişkisini temsil edecek şekilde vererek, ürün üretiminde Azot Kullanım Etkinliğini değerlendirebilirsiniz. Çıktı, `N_uptake` olarak[`geopard.calculate_nitrogen_use_efficiency`](#calculate_nitrogen_use_efficiency) .

### calculate\_nitrogen\_use\_efficiency

```python
NUE_pct = geopard.calculate_nitrogen_use_efficiency(N_total_applied, N_uptake)
```

Bu fonksiyonu kullanarak Azot Kullanım Etkinliğini yüzde olarak değerlendirin.  [`N_total_applied`](#calculate_total_applied_nitrogen) ve [`N_uptake`](#calculate_nitrogen_uptake) değişkenlerini (önceki fonksiyonlardan) girerek azot uygulamasının etkinliğini ölçebilir, gübre kullanımını optimize etmeye yardımcı olabilirsiniz.

### calculate\_costs

```python
rates = [seed_rate, fertilizer_rate]
prices = [1.2, 0.8]  # her oran katmanı için birim fiyat
costs = geopard.calculate_costs(rates, prices)
```

Bu fonksiyonla uygulama oranları ve fiyatlara göre Toplam Maliyetleri hesaplayın. Bir `application_rate_list` olarak AppliedRate özniteliklerine sahip Veri Kümeleri ve buna karşılık gelen bir `price_per_unit_list`sağlayarak çeşitli tarımsal faaliyetlere ilişkin giderleri toplayabilir, bütçe yönetimi ve mali planlamayı destekleyebilirsiniz. Çıktı, `costs` olarak[`geopard.calculate_profit`](#calculate_profit).

### calculate\_revenue

```python
revenue = geopard.calculate_revenue(yield_as_mass=yield_layer, yield_price_per_unit=0.25)
```

Bu fonksiyonla Verim Veri Kümesinden Gelir hesaplayın.  `yield_as_mass` Verim Veri Kümesi özniteliğiyle ilişkili olarak ve `yield_price_per_unit`değerini girerek ürün üretiminden elde edilen geliri tahmin edebilir, ekonomik değerlendirmeleri kolaylaştırabilirsiniz. Çıktı, `costs` olarak[`geopard.calculate_profit`](#calculate_profit) .

### calculate\_profit

```python
profit = geopard.calculate_profit(revenue, costs)
```

Bu fonksiyonla Gelirden Maliyetleri çıkararak Kârı belirleyin.  [`revenue`](#calculate_revenue) ve [`costs`](#calculate_costs) değişkenlerini (önceki fonksiyonlardan) vererek tarımsal faaliyetlerinden elde edilen mali kazancı kolayca hesaplayabilir, kârlılık analizi ve stratejik karar almayı destekleyebilirsiniz.

### fill\_value\_for\_range

```python
# yalnızca 10 ile 20 arasındaki değerleri tutun, kalanını 0 ile değiştirin
filtered = geopard.fill_value_for_range(layer, min_value=10, max_value=20, value_to_fill=0)
```

Bu fonksiyon, belirtilen bir aralıktaki değerleri `input` dizisi içinde filtreler.  `input` array `ile birlikte isteğe bağlı` min\_value `ve isteğe bağlı` max\_value `eşiklerini vererek istenen aralığa düşen değerleri ayırabilirsiniz.` value\_to\_fill

### calculate\_per\_pixel\_mae

```python
mae_layer = geopard.calculate_per_pixel_mae(predicted_yield, observed_yield)
```

Bu fonksiyonu, iki veri kümesi arasındaki piksel başına Ortalama Mutlak Hata'yı (MAE) hesaplamak için kullanın. Mutlak farkların mekânsal bir haritasını sağlar. "Mutlak fark", birinin daha yüksek ya da daha düşük olmasına bakılmaksızın, karşılık gelen piksel değerleri arasındaki farkın büyüklüğüdür.

Fonksiyon, uyuşmazlıkların daha büyük olduğu alanların belirlenmesine yardımcı olur.

### calculate\_per\_pixel\_relative\_deviation

```python
relative_dev = geopard.calculate_per_pixel_relative_deviation(observed_yield, modeled_yield)
```

Bu fonksiyon, iki veri kümesi arasındaki her piksel için göreli sapmayı hesaplar ve farkı `dataset_1`içindeki değerin yüzdesi olarak ifade eder. Temelde, bir pikselin değerinin karşılık gelen değerden ne kadar saptığını gösterir `dataset_1` oransal açıdan.

Bu yaklaşım özellikle toprak özellikleri, ürün verimi veya uzaktan algılama verilerindeki değişimleri analiz ederken değerlidir; çünkü önemli oransal farkların olduğu alanları hızlıca fark etmenize yardımcı olur.

### calculate\_difference

```python
difference = geopard.calculate_difference(yield_2024, yield_2023)
```

Bu fonksiyon, bir fark haritası oluşturmak için bir veri kümesinden diğerini çıkarır. Bir veri kümesindeki değerlerin diğerine göre daha yüksek ya da daha düşük olduğu alanları vurgular; böylece zaman içindeki eğilimleri ve değişimleri fark etmek kolaylaşır.

Bu araç, özellikle toprak özellikleri, ürün verimi veya uzaktan algılama verilerindeki değişimleri görselleştirmek için faydalıdır; daha fazla analiz veya müdahale gerektirebilecek alanları hızlıca belirlemenize yardımcı olur.

### calculate\_relative\_difference

```python
relative_diff = geopard.calculate_relative_difference(yield_2024, yield_2023)
```

Bu fonksiyon, veri kümeleri arasındaki farkı `dataset_2`değerlerini kullanarak normalize edip her piksel için göreli farkı hesaplar. Bu, değişimin büyüklüğe göre ne kadar önemli olduğunu gösterir `dataset_2`.

Böylesi oransal bir karşılaştırma, özellikle farklı ölçeklerdeki veri kümeleriyle çalışırken yararlıdır; toprak özellikleri, ürün verimleri veya sensör çıktılarındaki göreli kaymaları ortaya çıkarmaya yardımcı olur. Bu yaklaşım, dikkat çekici değişimin olduğu alanların belirlenmesini sağlar.

### calculate\_normalized\_difference

```python
normalized_diff = geopard.calculate_normalized_difference(layer_1, layer_2)
```

Bu fonksiyon, her iki veri kümesini de kendi küresel maksimum değerlerine göre ölçekleyerek her piksel için normalize edilmiş farkı hesaplar. Bu işlem, veri kümeleri başlangıçta farklı aralıklara sahip olsa bile doğrudan karşılaştırılabilir olmalarını sağlar.

Ortaya çıkan harita, toprak özellikleri, ürün verimi ve uzaktan algılama verilerindeki farklılıkların net bir görünümünü sunar; temel farkları hızlıca belirlemenize ve değerlendirmenize olanak tanır.

### build\_zones\_by\_intervals

```python
# bölgeleme için aralıklar
intervals = [
    (4, 8),
    (8, 12),
    (12, 16)
]

# kullanım
zones = geopard.build_zones_by_intervals(
    layer, 
    intervals
)
```

Bu fonksiyon, sürekli bir raster katmanını kullanıcı tanımlı değer aralıklarına göre ayrık bölgelere sınıflandırarak bir yönetim bölgesi haritası oluşturur.

Her aralık bir bölgeyi tanımlar ve her piksel, değer aralığına düştüğü bölgeye atanır. Hiçbir aralıkla eşleşmeyen pikseller -1 olarak işaretlenir.

Bu bölgeleme yaklaşımı, verim haritalarını, toprak özelliklerini veya uzaktan algılama indekslerini değişken oranlı uygulamalar için uygulanabilir yönetim bölgelerine dönüştürmek amacıyla yaygın olarak kullanılır.

**Tipik kullanım alanları**

* Verim, NDVI veya toprak katmanlarından yönetim bölgeleri oluşturma
* Besin maddesi veya ekim oranı hesaplamaları için bölge haritaları hazırlama
* Karar verme için tarlaları homojen bölgelere ayırma

### calculate\_nutrient\_rate\_as\_active\_ingredients\_per\_zone

```python
# target_nutrient seçenekleri
target_nutrient_option1 = 50 # sabit sayı
# VEYA
target_nutrient_option2 = {1: 20, 2: 40} # bölge başına sözlük
# VEYA
target_nutrient_option3 = np.array([[1, 1], [2, 3]], dtype=float) # sürekli raster katmanı

# applied_nutrient_operations seçenekleri
applied_operations = [
    5,                                      # işlem1 sabit sayı olarak
    {1: 2, 2: 4},                           # işlem2 bölge başına sözlük olarak
    np.array([[1, 1], [2, 3]], dtype=float) # işlem3 sürekli raster katmanı olarak
]

# kullanım
rates_as_active_ingredients = geopard.calculate_nutrient_rate_as_active_ingredients_per_zone(
    zone_map, 
    target_nutrient, 
    plant_available_soil_nutrient, 
    applied_nutrient_operations = applied_operations # veya []
)
```

Bu fonksiyon, her yönetim bölgesi için gerekli besin maddesi uygulama oranını (aktif madde) hesaplar.

Hesaplama şunlara dayanır:

* hedef bir besin maddesi düzeyi,
* topraktan bitkiye yarayışlı besin maddesi arzı,
* önceki uygulamalarla verilmiş besin maddeleri (çiftlik gübresi, ticari gübreler, digestat vb.).

Uygulanan besin maddesi işlemleri sabit değerler, bölge başına değerler, raster katmanları veya bunların herhangi bir birleşimi olarak verilebilir. Tüm girdiler otomatik olarak çözülür ve bölge bazında toplanır.

Varsayılan olarak gerekli oran, hedef besin maddesi düzeyi ile toprak arzı ve uygulanmış besin maddelerinin toplamı arasındaki fark olarak hesaplanır. Sonuç, her bölgenin tekdüze bir besin maddesi oranı içerdiği bir raster harita olarak döndürülür.

### convert\_active\_ingredient\_and\_product

```python
# aktif maddeyi ürüne ve tersini dönüştürme katsayısı
corrected_coefficient = 1.5  # sabit katsayı
# VEYA
corrected_coefficient = np.array([[np.nan, 5], [np.nan, 1]], dtype=float)  # piksel başına katsayılar

# kullanım
rates_as_products = geopard.convert_active_ingredient_and_product(
    layer, 
    corrected_coefficient
)
```

Bu fonksiyon, bir raster katmanını **aktif madde oranları ile ürün oranları** arasında bir düzeltme katsayısı kullanarak dönüştürür.

Bu `corrected_coefficient` tek bir **float** (tüm piksellere uygulanır) veya bir katsayı **matrix** (piksel başına dönüşüm) olabilir. Genellikle hesaplanan besin maddesi ihtiyacını (aktif madde) gübre bileşimine veya besin maddesi konsantrasyonuna göre gerçek ürün uygulama oranlarına dönüştürmek ya da tersini yapmak için kullanılır.

Dönüşüm, orijinal katmanın mekânsal yapısını koruyacak şekilde piksel bazında uygulanır.

**Tipik kullanım alanları**

* Besin maddesi oranlarını gübre ürünü oranlarına dönüştürme
* Uygulama haritalarını besin maddesi konsantrasyonuna göre ayarlama
* Makine için son reçete haritalarını hazırlama

### estimate\_texture\_class\_based\_on\_usda

```python
usda_texture = geopard.estimate_texture_class_based_on_usda(
    sand_pct_layer,
    silt_pct_layer,
    clay_pct_layer
)
```

Bu fonksiyon, kum, mil ve kil yüzdelerini kullanarak her piksel için USDA toprak bünyesini tahmin eder.

Parçacık boyutu fraksiyonlarını temsil eden yüzde (0-100) cinsinden üç raster katmanı sağlayın. Çıktı, <mark style="background-color:green;">şu gibi USDA sınıf adlarıdır:</mark> *<mark style="background-color:green;">kum, tınlı\_kum, kumlu\_tın, tın, milli\_tın, kumlu\_killi\_tın, killi\_tın, milli\_killi\_tın, milli\_kil veya tanımsız</mark>* <mark style="background-color:green;">girdiler geçersiz olduğunda.</mark>

### estimate\_texture\_class\_based\_on\_fao\_wrb

```python
fao_wrb_texture = geopard.estimate_texture_class_based_on_fao_wrb(
    sand_pct_layer,
    silt_pct_layer,
    clay_pct_layer
)
```

Bu fonksiyon, kum, mil ve kil yüzdelerine göre her piksel için FAO/WRB (ISO 11277) toprak bünye sınıfını tahmin eder.

Parçacık boyutu fraksiyonlarını temsil eden yüzde (0-100) cinsinden üç raster katmanı sağlayın. Çıktı, <mark style="background-color:green;">şu gibi FAO/WRB sınıf kodları:</mark> *<mark style="background-color:green;">S, LS, SL, L, SiL, Si, SCL, CL, SiCL, SC, SiC, C, HC veya tanımsız</mark>* <mark style="background-color:green;">girdiler geçersiz olduğunda</mark>.

### calculate\_soil\_bulk\_density

```python
bulk_density = geopard.calculate_soil_bulk_density(texture_class_layer, som_pct_layer)
```

Bu fonksiyon <mark style="background-color:green;">toprak hacim ağırlığını (g/cm³), bünye sınıfına ve isteğe bağlı toprak organik maddesine (SOM) göre hesaplar</mark>.

Bu `texture_class_layer` yukarıda belirtilen [USDA bünye fonksiyonu](#estimate_texture_class_based_on_usda) veya [FAO/WRB bünye fonksiyonu](#estimate_texture_class_based_on_fao_wrb) tarafından üretilen sınıf adlarını ya da kodlarını içermelidir.

Eğer `som_pct_layer` yüzde değeri olarak sağlanırsa, fonksiyon SOM kullanarak hacim ağırlığını ayarlar. Aksi takdirde, USDA veya FAO/WRB eşleştirme tablosuna göre bünye sınıflarıyla ilişkili g/cm³ cinsinden toprak hacim ağırlığı değerlerini döndürür.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.geopard.tech/geopard-tutorials/tr/urun-turu-web-uygulamasi/denklem-tabanli-analitik/ozel-fonksiyonlar-katalogu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
