The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Policy-matrix calculations measure how much support agriculture
receives. They do not show who receives it, whether it
reaches smallholders, women farmers and resource-poor regions, or what
the same budget could achieve if allocated differently.
agriEquity answers these questions with household-level
data in four steps: incidence, progressivity and equity, distributional
effects, and budget-neutral reallocation with explicit
productivity-equity-sustainability trade-offs.
The farm_subsidy data are simulated for
1,500 households with three types of support: an input (fertiliser)
subsidy, a flat income transfer and an irrigation power subsidy.
bi <- benefit_incidence(farm_subsidy, "fertiliser_subsidy",
group = "size_class", weights = "weight",
area = "land_ha", income = "farm_income")
bi[, c("group", "population_share", "benefit_share", "parity_ratio",
"benefit_per_hectare")]
#> group population_share benefit_share parity_ratio benefit_per_hectare
#> 1 marginal 0.461831565 0.11730424 0.2539979 2507.501
#> 2 small 0.281331214 0.23150243 0.8228821 3134.584
#> 3 semi-medium 0.178218730 0.30924615 1.7352057 3442.711
#> 4 medium 0.069698383 0.26106825 3.7456859 3699.365
#> 5 large 0.008920109 0.08087894 9.0670346 3642.968Marginal farms make up almost half of households but receive about an eighth of the input subsidy.
with(farm_subsidy, progressivity_index(fertiliser_subsidy, farm_income,
weights = weight))
#> Progressivity of support
#>
#> index estimate
#> concentration 0.5449
#> gini_income 0.3903
#> kakwani -0.1547
#> gini_post 0.3964
#> redistributive_effect -0.0062
#> reynolds_smolensky -0.0060
#> reranking 0.0002
#> benefit_share_bottom40 0.0821
#>
#> Not pro-poor in absolute terms; regressive relative to income.
with(farm_subsidy, progressivity_index(income_transfer, farm_income,
weights = weight))
#> Progressivity of support
#>
#> index estimate
#> concentration 0.0101
#> gini_income 0.3903
#> kakwani 0.3801
#> gini_post 0.3763
#> redistributive_effect 0.0140
#> reynolds_smolensky 0.0142
#> reranking 0.0002
#> benefit_share_bottom40 0.3949
#>
#> Not pro-poor in absolute terms; progressive relative to income.se <- subsidy_equity(farm_subsidy, "fertiliser_subsidy",
dimensions = c("size_class", "gender", "region"),
weights = "weight",
target = list(size_class = c("marginal", "small"),
gender = "female",
region = c("Rainfed-East", "Hill-Tribal")))
se$summary
#> dimension groups reference min_parity_group min_parity_ratio
#> 1 size_class 5 large marginal 0.2539979
#> 2 gender 2 male female 0.9380689
#> 3 region 4 Irrigated-North Hill-Tribal 0.1352985
#> target_parity_ratio theil_total theil_between_share
#> 1 0.4693543 0.6777792 0.7194438962
#> 2 0.9380689 0.6777792 0.0004632798
#> 3 0.2818810 0.6777792 0.3971565548theil_between_share shows how much of the inequality in
benefits is explained by each dimension.
de <- with(farm_subsidy, distributional_effects(
farm_income,
list(fertiliser = fertiliser_subsidy, transfer = income_transfer,
power = power_subsidy),
weights = weight, poverty_line = 60000))
de$summary[, c("scenario", "gini", "fgt0", "fgt1", "lifted_out_share",
"cost_per_household_lifted")]
#> scenario gini fgt0 fgt1 lifted_out_share
#> 1 no_support 0.3902507 0.2185809 0.04384556 0.000000000
#> 2 fertiliser 0.3964115 0.2071613 0.04180761 0.011419574
#> 3 transfer 0.3762841 0.1707318 0.02796631 0.047849084
#> 4 power 0.3959803 0.2163337 0.04349092 0.002247225
#> cost_per_household_lifted
#> 1 NA
#> 2 471546.1
#> 3 107725.4
#> 4 1256189.6The same fertiliser-subsidy budget is reallocated under alternative
rules. The productivity response (marginal_return) and the
environmental damage cost per unit of support
(env_cost_per_rupee) are simulated household attributes; in
applied work they come from production-function estimates and
environmental valuation.
fs <- farm_subsidy
prio <- with(fs, 1 + (size_class %in% c("marginal", "small")) +
0.5 * (gender == "female") +
0.5 * (region %in% c("Rainfed-East", "Hill-Tribal")))
br <- budget_reallocation(fs$farm_income, fs$fertiliser_subsidy,
weights = fs$weight, area = fs$land_ha,
priority = prio,
target = fs$size_class %in% c("marginal", "small"),
return_rate = fs$marginal_return,
env_cost = fs$env_cost_per_rupee,
inequality_aversion = 1, env_weight = 1,
poverty_line = 60000)
m <- br$metrics
m[, c("rule", "productivity_gain", "environmental_cost", "gini_post",
"target_share", "poverty_headcount")]
#> rule productivity_gain environmental_cost gini_post
#> 1 current 226441260 576961797 0.3959534
#> 2 per_farm 356917261 407320825 0.3700034
#> 3 per_hectare 256766501 476982149 0.3908547
#> 4 per_hectare_capped 290473420 455157125 0.3838774
#> 5 targeted 365768571 363060480 0.3642975
#> 6 optimal 310423542 174027833 0.3383010
#> target_share poverty_headcount
#> 1 0.3488067 0.20471153
#> 2 0.7431628 0.15223041
#> 3 0.3978295 0.19616596
#> 4 0.5584257 0.18669551
#> 5 0.8502634 0.14086816
#> 6 0.9995285 0.00109686tf <- tradeoff_frontier(fs$farm_income, fs$fertiliser_subsidy,
weights = fs$weight,
target = fs$size_class %in% c("marginal", "small"),
return_rate = fs$marginal_return,
env_cost = fs$env_cost_per_rupee,
aversion = c(0, 0.5, 1, 2), env_weights = c(0, 1, 3))
tf
#> Productivity-equity-sustainability frontier
#>
#> inequality_aversion env_weight productivity_gain environmental_cost
#> 0.0 0 386,925,518.730 354,764,443.976
#> 0.5 0 342,509,118.499 243,158,426.328
#> 1.0 0 322,329,357.537 226,319,834.849
#> 2.0 0 308,229,244.508 217,162,936.931
#> 0.0 1 317,706,521.016 117,848,312.231
#> 0.5 1 312,931,485.218 147,087,873.198
#> 1.0 1 310,423,541.965 174,027,832.872
#> 2.0 1 305,215,650.758 198,953,381.187
#> 0.0 3 293,728,948.574 103,275,926.971
#> 0.5 3 291,549,115.866 113,110,101.739
#> 1.0 3 293,396,656.477 129,705,483.791
#> 2.0 3 299,419,782.503 171,819,569.621
#> net_social_value gini_post target_share
#> 32,161,074.754 0.357 0.905
#> 99,350,692.171 0.340 0.999
#> 96,009,522.687 0.338 1.000
#> 91,066,307.578 0.337 1.000
#> 199,858,208.786 0.351 0.939
#> 165,843,612.020 0.340 0.998
#> 136,395,709.093 0.338 1.000
#> 106,262,269.571 0.337 1.000
#> 190,453,021.603 0.353 0.943
#> 178,439,014.127 0.342 0.997
#> 163,691,172.686 0.340 0.999
#> 127,600,212.883 0.338 1.000
#>
#> Current allocation: productivity gain 226,441,259.807, environmental cost 576,961,796.652, Gini 0.396
plot(tf)The current allocation (star) lies inside the frontier: in this simulated example, the same budget could deliver higher productivity, lower inequality and lower environmental cost at once.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.