From 938478b101bf7c3c41f871c4bd969969dff73683 Mon Sep 17 00:00:00 2001 From: elpamart Date: Fri, 22 Nov 2024 11:47:37 +0100 Subject: [PATCH 1/3] Update high level overview calculations to include scorecard rating --- data/notebooks/High_level_overview.ipynb | 1136 ++++++++++- .../TNC_BlueCarbonTool_prototype.ipynb | 1765 +++++++++-------- 2 files changed, 1961 insertions(+), 940 deletions(-) diff --git a/data/notebooks/High_level_overview.ipynb b/data/notebooks/High_level_overview.ipynb index a79fab76..02a1fb0f 100644 --- a/data/notebooks/High_level_overview.ipynb +++ b/data/notebooks/High_level_overview.ipynb @@ -9,7 +9,7 @@ "# import libraries\n", "import sys\n", "\n", - "sys.path.append(\"../src/bcc_model/\")\n", + "sys.path.append(\"src/bcc_model/\")\n", "\n", "import itertools\n", "import math\n", @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -76,7 +76,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -302,7 +302,7 @@ "[5 rows x 36 columns]" ] }, - "execution_count": 3, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -310,7 +310,7 @@ "source": [ "# 1. Import master table, base size table and base increase table\n", "# with information for the project calculations\n", - "data_path = \"../../raw_data/data_ingestion.xlsm\"\n", + "data_path = \"raw_data/data_ingestion.xlsm\"\n", "\n", "# Open the excel file - tab 'master_table'\n", "master_table = pd.read_excel(data_path, sheet_name=\"master_table\")\n", @@ -326,7 +326,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -365,7 +365,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -469,7 +469,7 @@ "4 100 Market price " ] }, - "execution_count": 5, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -520,7 +520,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -584,7 +584,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -700,7 +700,7 @@ "4 100 Opex breakeven USA North America " ] }, - "execution_count": 7, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -719,7 +719,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -841,7 +841,7 @@ "4 100 Opex breakeven USA North America 500.0 " ] }, - "execution_count": 8, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -861,7 +861,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -996,7 +996,7 @@ "24 United StatesMangroveRestoration100 " ] }, - "execution_count": 9, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -1017,7 +1017,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -1842,7 +1842,6 @@ "for index, row in df_combinations.iterrows():\n", " projet_name = row[\"project_name\"]\n", " print(f\"Calculating project {projet_name}...\")\n", - " # initial_price_assumption = 30\n", "\n", " # Set up common BlueCarbonProject parameters\n", " project_params = {\n", @@ -1852,7 +1851,6 @@ " \"master_table\": master_table,\n", " \"base_size\": base_size,\n", " \"base_increase\": base_increase,\n", - " # 'carbon_price': initial_price_assumption,\n", " \"carbon_revenues_to_cover\": \"Opex\",\n", " \"project_size_ha\": row[\"project_size\"],\n", " \"restoration_activity\": row[\"activity_type\"],\n", @@ -1876,10 +1874,6 @@ " \"emission_factor_used\": \"Tier 1 - Global emission factor\",\n", " }\n", " )\n", - "\n", - " # # Initialize project\n", - " # project = BlueCarbonProject(**project_params)\n", - "\n", " # Determine the initial carbon price based on price type\n", " initial_price_assumption = 30\n", " project_params[\"carbon_price\"] = initial_price_assumption\n", @@ -1889,20 +1883,13 @@ "\n", " if row[\"price_type\"] == \"Market price\":\n", " df_combinations.loc[index, \"initial_price_assumption\"] = initial_price_assumption\n", - " # cost_calculator = CostCalculator(project)\n", - " # summary = cost_calculator.get_summary()\n", - " # cost_estimates = cost_calculator.get_cost_estimates()\n", " elif row[\"price_type\"] == \"Opex breakeven\":\n", " try:\n", " breakeven = calculate_breakeven_cost(project, max_iterations=150)\n", " breakeven_cost = breakeven[\"breakeven_carbon_price\"]\n", - " # print(f\"Breakeven cost for project {row['project_name']} is {breakeven_cost}\")\n", " df_combinations.loc[index, \"initial_price_assumption\"] = breakeven_cost\n", - " # summary = breakeven['cost_summary']\n", - " # cost_estimates = breakeven['cost_estimates']\n", " # Update project_params with breakeven carbon price\n", " project_params[\"carbon_price\"] = breakeven_cost\n", - "\n", " # Re-initialize project with breakeven price\n", " project = BlueCarbonProject(**project_params)\n", " except: # noqa: E722\n", @@ -1913,11 +1900,7 @@ " initial_price_assumption # <-- Set to initial price if error\n", " )\n", " project = BlueCarbonProject(**project_params)\n", - " # cost_calculator = CostCalculator(project)\n", - " # summary = cost_calculator.get_summary()\n", - " # cost_estimates = cost_calculator.get_cost_estimates()\n", "\n", - " # print('project params:', project_params)\n", " # Step 3: Calculate costs and extract data into dictionary\n", " cost_calculator = CostCalculator(project)\n", " cost_estimates = cost_calculator.get_cost_estimates()\n", @@ -1995,7 +1978,7 @@ " df_combinations.loc[index, \"total_revenue\"] = (\n", " summary.get(\"Total revenue (non-discounted)\", 0).replace(\"$\", \"\").replace(\",\", \"\")\n", " )\n", - " df_combinations.loc[index, \"total_revenu_npv\"] = (\n", + " df_combinations.loc[index, \"total_revenue_npv\"] = (\n", " summary.get(\"Total revenue (NPV)\", 0).replace(\"$\", \"\").replace(\",\", \"\")\n", " )\n", " df_combinations.loc[index, \"credits_issued\"] = summary.get(\"Credits issued\", 0)\n", @@ -2046,7 +2029,6 @@ " continent\n", " base_size\n", " ...\n", - " initial_price_assumption\n", " leftover_after_opex\n", " leftover_after_opex_npv\n", " total_revenue\n", @@ -2056,6 +2038,7 @@ " maintenance_npv\n", " monitoring\n", " maintenance\n", + " total_revenue_npv\n", " \n", " \n", " \n", @@ -2072,16 +2055,16 @@ " North America\n", " 500.0\n", " ...\n", - " 190.103739\n", " 191780.0\n", - " 0.0\n", + " NaN\n", " 4921553\n", - " 2916212\n", + " None\n", " 22,061\n", " 600463\n", " 290522\n", " 994000\n", " 353284\n", + " 2916212\n", " \n", " \n", " 6\n", @@ -2096,16 +2079,16 @@ " North America\n", " 500.0\n", " ...\n", - " 260.495904\n", " 1122892.0\n", - " 0.0\n", + " NaN\n", " 8429900\n", - " 4995044\n", + " None\n", " 27,576\n", " 600463\n", " 2264746\n", " 994000\n", " 2753998\n", + " 4995044\n", " \n", " \n", " 12\n", @@ -2120,16 +2103,16 @@ " North America\n", " 500.0\n", " ...\n", - " 251.892764\n", " 1048980.0\n", - " 0.0\n", + " NaN\n", " 8151494\n", - " 4830077\n", + " None\n", " 27,576\n", " 600463\n", " 2108028\n", " 994000\n", " 2563424\n", + " 4830077\n", " \n", " \n", " 18\n", @@ -2144,16 +2127,16 @@ " North America\n", " 500.0\n", " ...\n", - " 30\n", " -3745866.0\n", - " -2333208.0\n", + " NaN\n", " 776663\n", - " 460203\n", + " None\n", " 22,061\n", " 600463\n", " 290522\n", " 994000\n", " 353284\n", + " 460203\n", " \n", " \n", " 24\n", @@ -2168,20 +2151,20 @@ " North America\n", " 500.0\n", " ...\n", - " 30\n", " -5963226.0\n", - " -4198800.0\n", + " NaN\n", " 970829\n", - " 575254\n", + " None\n", " 27,576\n", " 600463\n", " 2264746\n", " 994000\n", " 2753998\n", + " 575254\n", " \n", " \n", "\n", - "

5 rows × 57 columns

\n", + "

5 rows × 58 columns

\n", "" ], "text/plain": [ @@ -2199,28 +2182,28 @@ "18 100 Market price USA North America 500.0 ... \n", "24 100 Market price USA North America 500.0 ... \n", "\n", - " initial_price_assumption leftover_after_opex leftover_after_opex_npv \\\n", - "0 190.103739 191780.0 0.0 \n", - "6 260.495904 1122892.0 0.0 \n", - "12 251.892764 1048980.0 0.0 \n", - "18 30 -3745866.0 -2333208.0 \n", - "24 30 -5963226.0 -4198800.0 \n", + " leftover_after_opex leftover_after_opex_npv total_revenue total_revenu_npv \\\n", + "0 191780.0 NaN 4921553 None \n", + "6 1122892.0 NaN 8429900 None \n", + "12 1048980.0 NaN 8151494 None \n", + "18 -3745866.0 NaN 776663 None \n", + "24 -5963226.0 NaN 970829 None \n", "\n", - " total_revenue total_revenu_npv credits_issued monitoring_npv \\\n", - "0 4921553 2916212 22,061 600463 \n", - "6 8429900 4995044 27,576 600463 \n", - "12 8151494 4830077 27,576 600463 \n", - "18 776663 460203 22,061 600463 \n", - "24 970829 575254 27,576 600463 \n", + " credits_issued monitoring_npv maintenance_npv monitoring maintenance \\\n", + "0 22,061 600463 290522 994000 353284 \n", + "6 27,576 600463 2264746 994000 2753998 \n", + "12 27,576 600463 2108028 994000 2563424 \n", + "18 22,061 600463 290522 994000 353284 \n", + "24 27,576 600463 2264746 994000 2753998 \n", "\n", - " maintenance_npv monitoring maintenance \n", - "0 290522 994000 353284 \n", - "6 2264746 994000 2753998 \n", - "12 2108028 994000 2563424 \n", - "18 290522 994000 353284 \n", - "24 2264746 994000 2753998 \n", + " total_revenue_npv \n", + "0 2916212 \n", + "6 4995044 \n", + "12 4830077 \n", + "18 460203 \n", + "24 575254 \n", "\n", - "[5 rows x 57 columns]" + "[5 rows x 58 columns]" ] }, "execution_count": 12, @@ -2239,15 +2222,1020 @@ "outputs": [], "source": [ "# export to csv\n", - "df_combinations.to_csv(\"../../raw_data/output.csv\", index=False)" + "df_combinations.to_csv(\"./raw_data/output.csv\", index=False)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Scorecard rating:" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size...leftover_after_opexleftover_after_opex_npvtotal_revenuetotal_revenu_npvcredits_issuedmonitoring_npvmaintenance_npvmonitoringmaintenancetotal_revenue_npv
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0...191780.00.049215530.022,0616004632905229940003532842916212
1United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0...1122892.00.084299000.027,576600463226474699400027539984995044
2United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0...1048980.00.081514940.027,576600463210802899400025634244830077
3United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0...-3745866.00.07766630.022,061600463290522994000353284460203
4United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0...-5963226.00.09708290.027,57660046322647469940002753998575254
\n", + "

5 rows × 58 columns

\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "1 United States Mangrove Restoration Hydrology Small \n", + "2 United States Mangrove Restoration Hybrid Small \n", + "3 United States Mangrove Restoration Planting Small \n", + "4 United States Mangrove Restoration Hydrology Small \n", + "\n", + " project_size price_type country_code continent base_size ... \\\n", + "0 100 Opex breakeven USA North America 500.0 ... \n", + "1 100 Opex breakeven USA North America 500.0 ... \n", + "2 100 Opex breakeven USA North America 500.0 ... \n", + "3 100 Market price USA North America 500.0 ... \n", + "4 100 Market price USA North America 500.0 ... \n", + "\n", + " leftover_after_opex leftover_after_opex_npv total_revenue \\\n", + "0 191780.0 0.0 4921553 \n", + "1 1122892.0 0.0 8429900 \n", + "2 1048980.0 0.0 8151494 \n", + "3 -3745866.0 0.0 776663 \n", + "4 -5963226.0 0.0 970829 \n", + "\n", + " total_revenu_npv credits_issued monitoring_npv maintenance_npv \\\n", + "0 0.0 22,061 600463 290522 \n", + "1 0.0 27,576 600463 2264746 \n", + "2 0.0 27,576 600463 2108028 \n", + "3 0.0 22,061 600463 290522 \n", + "4 0.0 27,576 600463 2264746 \n", + "\n", + " monitoring maintenance total_revenue_npv \n", + "0 994000 353284 2916212 \n", + "1 994000 2753998 4995044 \n", + "2 994000 2563424 4830077 \n", + "3 994000 353284 460203 \n", + "4 994000 2753998 575254 \n", + "\n", + "[5 rows x 58 columns]" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Open csv file\n", + "df_combinations = pd.read_csv(\"./raw_data/output.csv\")\n", + "# fill the nan values with 0\n", + "df_combinations.fillna(0, inplace=True)\n", + "df_combinations.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemlegal_feasibilityimplementation_risk_scoreavailability_of_experienced_laborsecurity_ratingavailability_of_alternative_fundingbiodiversity_benefitsocial_feasibilitycoastal_protection_benefit
0AustraliaMangrove1.03.01.01.01.01.011
1AustraliaSalt marsh1.03.01.01.01.01.011
2AustraliaSeagrass1.03.01.01.01.01.012
3CaribbeanMangrove3.01.03.02.02.03.021
4CaribbeanSalt marsh3.01.03.02.02.03.000
\n", + "
" + ], + "text/plain": [ + " country ecosystem legal_feasibility implementation_risk_score \\\n", + "0 Australia Mangrove 1.0 3.0 \n", + "1 Australia Salt marsh 1.0 3.0 \n", + "2 Australia Seagrass 1.0 3.0 \n", + "3 Caribbean Mangrove 3.0 1.0 \n", + "4 Caribbean Salt marsh 3.0 1.0 \n", + "\n", + " availability_of_experienced_labor security_rating \\\n", + "0 1.0 1.0 \n", + "1 1.0 1.0 \n", + "2 1.0 1.0 \n", + "3 3.0 2.0 \n", + "4 3.0 2.0 \n", + "\n", + " availability_of_alternative_funding biodiversity_benefit \\\n", + "0 1.0 1.0 \n", + "1 1.0 1.0 \n", + "2 1.0 1.0 \n", + "3 2.0 3.0 \n", + "4 2.0 3.0 \n", + "\n", + " social_feasibility coastal_protection_benefit \n", + "0 1 1 \n", + "1 1 1 \n", + "2 1 2 \n", + "3 2 1 \n", + "4 0 0 " + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Open scorecard rating uploaded file.\n", + "df_scorecard = pd.read_csv(\"raw_data/scorecard_rating/qualitative_scorecard_rating.csv\")\n", + "# fill the strings ' ' with 0\n", + "df_scorecard = df_scorecard.replace(\" \", 0)\n", + "# fill nans with 0\n", + "df_scorecard = df_scorecard.fillna(0)\n", + "df_scorecard.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemlegal_feasibilityimplementation_risk_scoreavailability_of_experienced_laborsecurity_ratingavailability_of_alternative_fundingbiodiversity_benefitsocial_feasibilitycoastal_protection_benefit
0AustraliaMangrove1.03.01.01.01.01.01.01.0
1AustraliaSalt marsh1.03.01.01.01.01.01.01.0
2AustraliaSeagrass1.03.01.01.01.01.01.02.0
3CaribbeanMangrove3.01.03.02.02.03.02.01.0
4CaribbeanSalt marsh3.01.03.02.02.03.00.00.0
\n", + "
" + ], + "text/plain": [ + " country ecosystem legal_feasibility implementation_risk_score \\\n", + "0 Australia Mangrove 1.0 3.0 \n", + "1 Australia Salt marsh 1.0 3.0 \n", + "2 Australia Seagrass 1.0 3.0 \n", + "3 Caribbean Mangrove 3.0 1.0 \n", + "4 Caribbean Salt marsh 3.0 1.0 \n", + "\n", + " availability_of_experienced_labor security_rating \\\n", + "0 1.0 1.0 \n", + "1 1.0 1.0 \n", + "2 1.0 1.0 \n", + "3 3.0 2.0 \n", + "4 3.0 2.0 \n", + "\n", + " availability_of_alternative_funding biodiversity_benefit \\\n", + "0 1.0 1.0 \n", + "1 1.0 1.0 \n", + "2 1.0 1.0 \n", + "3 2.0 3.0 \n", + "4 2.0 3.0 \n", + "\n", + " social_feasibility coastal_protection_benefit \n", + "0 1.0 1.0 \n", + "1 1.0 1.0 \n", + "2 1.0 2.0 \n", + "3 2.0 1.0 \n", + "4 0.0 0.0 " + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# check the dtypes of the columns\n", + "df_scorecard.dtypes\n", + "# Set the social_feasibility and the coastal_protection_benefit to float\n", + "df_scorecard[\"social_feasibility\"] = df_scorecard[\"social_feasibility\"].astype(float)\n", + "df_scorecard[\"coastal_protection_benefit\"] = df_scorecard[\"coastal_protection_benefit\"].astype(\n", + " float\n", + ")\n", + "df_scorecard.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size...legal_feasibility_colorimplementation_risk_score_colorsocial_feasibility_coloravailability_of_experienced_labor_colorsecurity_rating_coloravailability_of_alternative_funding_colorcoastal_protection_benefit_colorbiodiversity_benefit_colorscorecard_ratingscorecard_rating_color
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
1United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
2United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
3United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
4United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
\n", + "

5 rows × 78 columns

\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "1 United States Mangrove Restoration Hydrology Small \n", + "2 United States Mangrove Restoration Hybrid Small \n", + "3 United States Mangrove Restoration Planting Small \n", + "4 United States Mangrove Restoration Hydrology Small \n", + "\n", + " project_size price_type country_code continent base_size ... \\\n", + "0 100 Opex breakeven USA North America 500.0 ... \n", + "1 100 Opex breakeven USA North America 500.0 ... \n", + "2 100 Opex breakeven USA North America 500.0 ... \n", + "3 100 Market price USA North America 500.0 ... \n", + "4 100 Market price USA North America 500.0 ... \n", + "\n", + " legal_feasibility_color implementation_risk_score_color \\\n", + "0 High High \n", + "1 High High \n", + "2 High High \n", + "3 High High \n", + "4 High High \n", + "\n", + " social_feasibility_color availability_of_experienced_labor_color \\\n", + "0 High High \n", + "1 High High \n", + "2 High High \n", + "3 High High \n", + "4 High High \n", + "\n", + " security_rating_color availability_of_alternative_funding_color \\\n", + "0 Medium High \n", + "1 Medium High \n", + "2 Medium High \n", + "3 Medium High \n", + "4 Medium High \n", + "\n", + " coastal_protection_benefit_color biodiversity_benefit_color \\\n", + "0 High High \n", + "1 High High \n", + "2 High High \n", + "3 High High \n", + "4 High High \n", + "\n", + " scorecard_rating scorecard_rating_color \n", + "0 1.080645 High \n", + "1 1.080645 High \n", + "2 1.080645 High \n", + "3 1.080645 High \n", + "4 1.080645 High \n", + "\n", + "[5 rows x 78 columns]" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Add scoredcard rating to the df_combinations\n", + "\n", + "# Columns to add in df_combinations\n", + "columns_to_add = [\n", + " \"financial_feasibility\",\n", + " \"legal_feasibility\",\n", + " \"implementation_risk_score\",\n", + " \"social_feasibility\",\n", + " \"availability_of_experienced_labor\",\n", + " \"security_rating\",\n", + " \"availability_of_alternative_funding\",\n", + " \"coastal_protection_benefit\",\n", + " \"biodiversity_benefit\",\n", + "]\n", + "df_combinations[columns_to_add] = None\n", + "\n", + "for index, row in df_combinations.iterrows():\n", + " country = row[\"country\"]\n", + " ecosystem = row[\"ecosystem\"]\n", + " # 1. Category: Economic:\n", + " # 1.1 Financial_feasibility (weight 20)\n", + " if (\n", + " round(float(row[\"total_revenue_npv\"]) - float(row[\"opex_npv\"]))\n", + " < float(row[\"opex_npv\"]) * -0.25\n", + " ):\n", + " financial_feasibility = 1\n", + " elif round(float(row[\"total_revenue_npv\"]) - float(row[\"opex_npv\"])) < 0:\n", + " financial_feasibility = 2\n", + " else:\n", + " financial_feasibility = 3\n", + " df_combinations.loc[index, \"financial_feasibility\"] = financial_feasibility\n", + " # Add financial_feasibility_color\n", + " df_combinations.loc[index, \"financial_feasibility_color\"] = (\n", + " \"Low\"\n", + " if financial_feasibility == 1\n", + " else \"Medium\"\n", + " if financial_feasibility == 2\n", + " else \"High\"\n", + " if financial_feasibility == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2. Non-economic\n", + " # 2.1 Legal feasibility (weight 12)\n", + " # Get the legal feasibility score from the scorecard for the country and ecosystem\n", + " legal_feasibility = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"legal_feasibility\"].values[0]\n", + " df_combinations.loc[index, \"legal_feasibility\"] = legal_feasibility\n", + " # Add legal_feasibility_color\n", + " df_combinations.loc[index, \"legal_feasibility_color\"] = (\n", + " \"High\"\n", + " if legal_feasibility == 1\n", + " else \"Medium\"\n", + " if legal_feasibility == 2\n", + " else \"Low\"\n", + " if legal_feasibility == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.2 Implementation risk score (weight 12)\n", + " # Get the implementation risk score from the scorecard for the country and ecosystem\n", + " implementation_risk_score = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"implementation_risk_score\"].values[0]\n", + " df_combinations.loc[index, \"implementation_risk_score\"] = implementation_risk_score\n", + " # Add implementation_risk_score_color\n", + " df_combinations.loc[index, \"implementation_risk_score_color\"] = (\n", + " \"High\"\n", + " if implementation_risk_score == 1\n", + " else \"Medium\"\n", + " if implementation_risk_score == 2\n", + " else \"Low\"\n", + " if implementation_risk_score == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.3 Social feasibility (weight 12)\n", + " # Get the social feasibility score from the scorecard for the country and ecosystem\n", + " social_feasibility = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"social_feasibility\"].values[0]\n", + " df_combinations.loc[index, \"social_feasibility\"] = social_feasibility\n", + " # Add social_feasibility_color\n", + " df_combinations.loc[index, \"social_feasibility_color\"] = (\n", + " \"High\"\n", + " if social_feasibility == 1\n", + " else \"Medium\"\n", + " if social_feasibility == 2\n", + " else \"Low\"\n", + " if social_feasibility == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.4 Availability of experienced labor (weight 10)\n", + " # Get the availability of experienced labor score from the scorecard\n", + " # for the country and ecosystem\n", + " availability_of_experienced_labor = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"availability_of_experienced_labor\"].values[0]\n", + " df_combinations.loc[index, \"availability_of_experienced_labor\"] = (\n", + " availability_of_experienced_labor\n", + " )\n", + " # Add availability_of_experienced_labor_color\n", + " df_combinations.loc[index, \"availability_of_experienced_labor_color\"] = (\n", + " \"High\"\n", + " if availability_of_experienced_labor == 1\n", + " else \"Medium\"\n", + " if availability_of_experienced_labor == 2\n", + " else \"Low\"\n", + " if availability_of_experienced_labor == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.5 Security rating (weight 5)\n", + " # Get the security rating score from the scorecard for the country and ecosystem\n", + " security_rating = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"security_rating\"].values[0]\n", + " df_combinations.loc[index, \"security_rating\"] = security_rating\n", + " # Add security_rating_color\n", + " df_combinations.loc[index, \"security_rating_color\"] = (\n", + " \"High\"\n", + " if security_rating == 1\n", + " else \"Medium\"\n", + " if security_rating == 2\n", + " else \"Low\"\n", + " if security_rating == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.6 Availability of alternative funding (weight 5)\n", + " # Get the availability of alternative funding score from the scorecard\n", + " # for the country and ecosystem\n", + " availability_of_alternative_funding = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"availability_of_alternative_funding\"].values[0]\n", + " df_combinations.loc[index, \"availability_of_alternative_funding\"] = (\n", + " availability_of_alternative_funding\n", + " )\n", + " # Add availability_of_alternative_funding_color\n", + " df_combinations.loc[index, \"availability_of_alternative_funding_color\"] = (\n", + " \"High\"\n", + " if availability_of_alternative_funding == 1\n", + " else \"Medium\"\n", + " if availability_of_alternative_funding == 2\n", + " else \"Low\"\n", + " if availability_of_alternative_funding == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.7 Coastal protection benefit (weight 3)\n", + " # Get the coastal protection benefit score from the scorecard for the country and ecosystem\n", + " coastal_protection_benefit = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"coastal_protection_benefit\"].values[0]\n", + " df_combinations.loc[index, \"coastal_protection_benefit\"] = coastal_protection_benefit\n", + " # Add coastal_protection_benefit_color\n", + " df_combinations.loc[index, \"coastal_protection_benefit_color\"] = (\n", + " \"High\"\n", + " if coastal_protection_benefit == 1\n", + " else \"Medium\"\n", + " if coastal_protection_benefit == 2\n", + " else \"Low\"\n", + " if coastal_protection_benefit == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # 2.8 Biodiversity benefit (weight 3)\n", + " # Get the biodiversity benefit score from the scorecard for the country and ecosystem\n", + " biodiversity_benefit = df_scorecard[\n", + " (df_scorecard[\"country\"] == country) & (df_scorecard[\"ecosystem\"] == ecosystem)\n", + " ][\"biodiversity_benefit\"].values[0]\n", + " df_combinations.loc[index, \"biodiversity_benefit\"] = biodiversity_benefit\n", + " # Add biodiversity_benefit_color\n", + " df_combinations.loc[index, \"biodiversity_benefit_color\"] = (\n", + " \"High\"\n", + " if biodiversity_benefit == 1\n", + " else \"Medium\"\n", + " if biodiversity_benefit == 2\n", + " else \"Low\"\n", + " if biodiversity_benefit == 3\n", + " else \"Not Available\"\n", + " )\n", + "\n", + " # if value is Nan, set to 0 for the calculation\n", + " if math.isnan(legal_feasibility):\n", + " legal_feasibility = 0\n", + " if math.isnan(implementation_risk_score):\n", + " implementation_risk_score = 0\n", + " if math.isnan(social_feasibility):\n", + " social_feasibility = 0\n", + " if math.isnan(availability_of_experienced_labor):\n", + " availability_of_experienced_labor = 0\n", + " if math.isnan(security_rating):\n", + " security_rating = 0\n", + " if math.isnan(availability_of_alternative_funding):\n", + " availability_of_alternative_funding = 0\n", + " if math.isnan(coastal_protection_benefit):\n", + " coastal_protection_benefit = 0\n", + " if math.isnan(biodiversity_benefit):\n", + " biodiversity_benefit = 0\n", + "\n", + " # Add scorecard_rating\n", + " scorecard_rating = (\n", + " (float(legal_feasibility) * 0.12)\n", + " + (float(implementation_risk_score) * 0.12)\n", + " + (float(social_feasibility) * 0.12)\n", + " + (float(security_rating) * 0.05)\n", + " + (float(availability_of_experienced_labor) * 0.10)\n", + " + (float(availability_of_alternative_funding) * 0.05)\n", + " + (float(coastal_protection_benefit) * 0.03)\n", + " + (float(biodiversity_benefit) * 0.03)\n", + " ) / (0.12 + 0.12 + 0.12 + 0.05 + 0.10 + 0.05 + 0.03 + 0.03)\n", + " df_combinations.loc[index, \"scorecard_rating\"] = scorecard_rating\n", + " if scorecard_rating > 1 and scorecard_rating <= 1.666:\n", + " df_combinations.loc[index, \"scorecard_rating_color\"] = \"High\"\n", + " elif scorecard_rating > 1.666 and scorecard_rating <= 2.333:\n", + " df_combinations.loc[index, \"scorecard_rating_color\"] = \"Medium\"\n", + " elif scorecard_rating > 2.333 and scorecard_rating <= 3:\n", + " df_combinations.loc[index, \"scorecard_rating_color\"] = \"Low\"\n", + " else:\n", + " df_combinations.loc[index, \"scorecard_rating_color\"] = \"Not Available\"\n", + "\n", + "df_combinations.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "# export to csv\n", + "df_combinations.to_csv(\"./raw_data/output_scoring.csv\", index=False)" + ] } ], "metadata": { diff --git a/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb b/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb index baf4a516..e62798ce 100644 --- a/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb +++ b/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb @@ -10,6 +10,7 @@ }, { "cell_type": "code", + "execution_count": 1, "id": "f18e62b8", "metadata": { "ExecuteTime": { @@ -17,19 +18,19 @@ "start_time": "2024-10-31T08:16:58.777775Z" } }, + "outputs": [], "source": [ "import sys\n", "\n", "sys.path.append(\"../src/bcc_model/\")\n", "\n", "# import libraries\n", - "import pandas as pd # noqa: I001\n" - ], - "outputs": [], - "execution_count": 3 + "import pandas as pd # noqa: I001" + ] }, { "cell_type": "code", + "execution_count": 2, "id": "69a08c51", "metadata": { "ExecuteTime": { @@ -37,74 +38,9 @@ "start_time": "2024-10-31T08:17:35.168082Z" } }, - "source": [ - "# Import excel with the import datai\n", - "data_path = \"../raw_data/data_ingestion.xlsm\"\n", - "\n", - "# Open the excel file - tab 'master_table'\n", - "master_table = pd.read_excel(data_path, sheet_name=\"master_table\")\n", - "\n", - "# Open the excel file - tab 'base_size_table'\n", - "base_size = pd.read_excel(data_path, sheet_name=\"base_size_table\")\n", - "\n", - "# Open the excel file - tab 'base_increase'\n", - "base_increase = pd.read_excel(data_path, sheet_name=\"base_increase\")\n", - "\n", - "base_size.head()" - ], "outputs": [ { "data": { - "text/plain": [ - " base_size_id activity ecosystem \\\n", - "0 23f00d7a-bc73-4bdc-8da6-71a48e57c07a Restoration Mangrove \n", - "1 02ccaf4a-4f25-4180-bf8e-8b08659b4039 Conservation Mangrove \n", - "2 a7d5b3c5-3489-4eb9-aa4d-263dd1e2f498 Restoration Seagrass \n", - "3 e800d66e-fdb7-467e-9c4d-5f2e7223111f Conservation Seagrass \n", - "4 64334920-3e7b-4da9-b4e9-4e8a2c37b55c Restoration Salt marsh \n", - "\n", - " feasibility_analysis conservation_planning_and_admin \\\n", - "0 500 2500 \n", - "1 20000 20000 \n", - "2 500 2500 \n", - "3 20000 20000 \n", - "4 500 2500 \n", - "\n", - " data_collection_and_field_cost community_representation \\\n", - "0 500 2500 \n", - "1 20000 20000 \n", - "2 500 2500 \n", - "3 20000 20000 \n", - "4 500 2500 \n", - "\n", - " blue_carbon_project_planning establishing_carbon_rights financing_cost \\\n", - "0 500 500 500 \n", - "1 20000 20000 20000 \n", - "2 500 500 500 \n", - "3 20000 20000 20000 \n", - "4 500 500 500 \n", - "\n", - " validation implementation_labor_planting implementation_labor_hybrid \\\n", - "0 500 Unit: Unit: \n", - "1 20000 $/ha $/ha \n", - "2 500 Unit: Unit: \n", - "3 20000 $/ha $/ha \n", - "4 500 Unit: Unit: \n", - "\n", - " implementation_labor_hydrology monitoring baseline_reassessment MRV \\\n", - "0 Unit: 2500 500 500 \n", - "1 $/ha 20000 20000 20000 \n", - "2 Unit: 2500 500 500 \n", - "3 $/ha 20000 20000 20000 \n", - "4 Unit: 2500 500 500 \n", - "\n", - " long_term_project_operating_cost \n", - "0 2500 \n", - "1 20000 \n", - "2 2500 \n", - "3 20000 \n", - "4 2500 " - ], "text/html": [ "
\n", "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivitycountry_codecontinenthdiproject_size_hafeasibility_analysisconservation_planning_and_admindata_collection_and_field_cost...ecosystem_extentecosystem_extent_historicecosystem_loss_raterestorable_landtier_1_emission_factoremission_factor_AGBemission_factor_SOCtier_1_sequestration_ratetier_2_sequestration_rateother_community_cash_flow
0United StatesMangroveRestorationUSANorth America1.0500.0100000.0166766.66666726666.666667...2.315054e+052.312725e+05-0.0088689665.78051227.255.22760958.0020815.9417.2349Non-development
1IndonesiaMangroveRestorationIDNAsia2.0500.050000.0166766.66666726666.666667...2.901690e+062.930508e+06-0.003716204536.16790027.2355.39839471.8766425.9429.5000Development
2AustraliaMangroveRestorationAUSOceania1.0500.070000.0166766.66666726666.666667...1.004149e+061.013552e+06-0.00149869160.39725027.2197.88110859.7620895.947.2850Non-development
3CaribbeanMangroveRestorationBHSNorth America1.0500.070000.0166766.66666726666.666667...1.508391e+051.447886e+05-0.0073219842.16983327.221.830982107.9465285.947.5000Non-development
4KenyaMangroveRestorationKENAfrica3.0500.050000.0166766.66666726666.666667...5.412150e+045.408001e+04-0.0027811609.69810027.291.77981779.0400565.9419.0000Development
\n", - "

5 rows × 36 columns

\n", - "
" - ], - "text/plain": [ - " country ecosystem activity country_code continent hdi \\\n", - "0 United States Mangrove Restoration USA North America 1.0 \n", - "1 Indonesia Mangrove Restoration IDN Asia 2.0 \n", - "2 Australia Mangrove Restoration AUS Oceania 1.0 \n", - "3 Caribbean Mangrove Restoration BHS North America 1.0 \n", - "4 Kenya Mangrove Restoration KEN Africa 3.0 \n", - "\n", - " project_size_ha feasibility_analysis conservation_planning_and_admin \\\n", - "0 500.0 100000.0 166766.666667 \n", - "1 500.0 50000.0 166766.666667 \n", - "2 500.0 70000.0 166766.666667 \n", - "3 500.0 70000.0 166766.666667 \n", - "4 500.0 50000.0 166766.666667 \n", - "\n", - " data_collection_and_field_cost ... ecosystem_extent \\\n", - "0 26666.666667 ... 2.315054e+05 \n", - "1 26666.666667 ... 2.901690e+06 \n", - "2 26666.666667 ... 1.004149e+06 \n", - "3 26666.666667 ... 1.508391e+05 \n", - "4 26666.666667 ... 5.412150e+04 \n", - "\n", - " ecosystem_extent_historic ecosystem_loss_rate restorable_land \\\n", - "0 2.312725e+05 -0.008868 9665.780512 \n", - "1 2.930508e+06 -0.003716 204536.167900 \n", - "2 1.013552e+06 -0.001498 69160.397250 \n", - "3 1.447886e+05 -0.007321 9842.169833 \n", - "4 5.408001e+04 -0.002781 1609.698100 \n", - "\n", - " tier_1_emission_factor emission_factor_AGB emission_factor_SOC \\\n", - "0 27.2 55.227609 58.002081 \n", - "1 27.2 355.398394 71.876642 \n", - "2 27.2 197.881108 59.762089 \n", - "3 27.2 21.830982 107.946528 \n", - "4 27.2 91.779817 79.040056 \n", - "\n", - " tier_1_sequestration_rate tier_2_sequestration_rate \\\n", - "0 5.94 17.2349 \n", - "1 5.94 29.5000 \n", - "2 5.94 7.2850 \n", - "3 5.94 7.5000 \n", - "4 5.94 19.0000 \n", - "\n", - " other_community_cash_flow \n", - "0 Non-development \n", - "1 Development \n", - "2 Non-development \n", - "3 Non-development \n", - "4 Development \n", - "\n", - "[5 rows x 36 columns]" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# 1. Import master table, base size table and base increase table\n", "# with information for the project calculations\n", @@ -326,7 +98,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -365,115 +137,9 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_type
0United StatesMangroveRestorationPlantingSmall100Opex breakeven
1United StatesMangroveRestorationHydrologySmall100Opex breakeven
2United StatesMangroveRestorationHybridSmall100Opex breakeven
3United StatesMangroveRestorationPlantingSmall100Market price
4United StatesMangroveRestorationHydrologySmall100Market price
\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "1 United States Mangrove Restoration Hydrology Small \n", - "2 United States Mangrove Restoration Hybrid Small \n", - "3 United States Mangrove Restoration Planting Small \n", - "4 United States Mangrove Restoration Hydrology Small \n", - "\n", - " project_size price_type \n", - "0 100 Opex breakeven \n", - "1 100 Opex breakeven \n", - "2 100 Opex breakeven \n", - "3 100 Market price \n", - "4 100 Market price " - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# 3. Create all possible combinations for the overview page\n", "all_combinations = []\n", @@ -520,7 +186,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -584,127 +250,9 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinent
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
1United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
2United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
3United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
4United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "1 United States Mangrove Restoration Planting Small \n", - "2 United States Mangrove Restoration Planting Small \n", - "3 United States Mangrove Restoration Planting Small \n", - "4 United States Mangrove Restoration Planting Small \n", - "\n", - " project_size price_type country_code continent \n", - "0 100 Opex breakeven USA North America \n", - "1 100 Opex breakeven USA North America \n", - "2 100 Opex breakeven USA North America \n", - "3 100 Opex breakeven USA North America \n", - "4 100 Opex breakeven USA North America " - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# 5. Get the country name, country_code and continent information from the master table:\n", "\n", @@ -719,133 +267,9 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
1United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
2United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
3United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
4United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "1 United States Mangrove Restoration Planting Small \n", - "2 United States Mangrove Restoration Planting Small \n", - "3 United States Mangrove Restoration Planting Small \n", - "4 United States Mangrove Restoration Planting Small \n", - "\n", - " project_size price_type country_code continent base_size \n", - "0 100 Opex breakeven USA North America 500.0 \n", - "1 100 Opex breakeven USA North America 500.0 \n", - "2 100 Opex breakeven USA North America 500.0 \n", - "3 100 Opex breakeven USA North America 500.0 \n", - "4 100 Opex breakeven USA North America 500.0 " - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# 6. Get the project_size_ha from the master_table and rename it to base_size\n", "base_size_value_df = master_table[[\"country_code\", \"ecosystem\", \"activity\", \"project_size_ha\"]]\n", @@ -861,146 +285,9 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_sizeproject_name
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
6United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
12United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
18United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0United StatesMangroveRestoration100
24United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0United StatesMangroveRestoration100
\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "6 United States Mangrove Restoration Hydrology Small \n", - "12 United States Mangrove Restoration Hybrid Small \n", - "18 United States Mangrove Restoration Planting Small \n", - "24 United States Mangrove Restoration Hydrology Small \n", - "\n", - " project_size price_type country_code continent base_size \\\n", - "0 100 Opex breakeven USA North America 500.0 \n", - "6 100 Opex breakeven USA North America 500.0 \n", - "12 100 Opex breakeven USA North America 500.0 \n", - "18 100 Market price USA North America 500.0 \n", - "24 100 Market price USA North America 500.0 \n", - "\n", - " project_name \n", - "0 United StatesMangroveRestoration100 \n", - "6 United StatesMangroveRestoration100 \n", - "12 United StatesMangroveRestoration100 \n", - "18 United StatesMangroveRestoration100 \n", - "24 United StatesMangroveRestoration100 " - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# 7. Create a new column called \"project_name\" by concatenating the \"country\", \"ecosystem\",\n", "# \"activity\" and \"project_size\" columns\n", @@ -1017,778 +304,9 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration100...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration500...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveRestoration1000...\n", - "Calculating project United StatesMangroveConservation4000...\n", - "Calculating project United StatesMangroveConservation4000...\n", - "Calculating project United StatesMangroveConservation20000...\n", - "Calculating project United StatesMangroveConservation20000...\n", - "Calculating project United StatesMangroveConservation40000...\n", - "Calculating project United StatesMangroveConservation40000...\n", - "Calculating project United StatesSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project United StatesSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaMangroveRestoration100...\n", - "Calculating project IndonesiaMangroveRestoration100...\n", - "Calculating project IndonesiaMangroveRestoration100...\n", - "Calculating project IndonesiaMangroveRestoration100...\n", - "Calculating project IndonesiaMangroveRestoration500...\n", - "Calculating project IndonesiaMangroveRestoration500...\n", - "Calculating project IndonesiaMangroveRestoration500...\n", - "Calculating project IndonesiaMangroveRestoration500...\n", - "Calculating project IndonesiaMangroveRestoration1000...\n", - "Calculating project IndonesiaMangroveRestoration1000...\n", - "Calculating project IndonesiaMangroveRestoration1000...\n", - "Calculating project IndonesiaMangroveRestoration1000...\n", - "Calculating project IndonesiaMangroveConservation4000...\n", - "Calculating project IndonesiaMangroveConservation4000...\n", - "Calculating project IndonesiaMangroveConservation20000...\n", - "Calculating project IndonesiaMangroveConservation20000...\n", - "Calculating project IndonesiaMangroveConservation40000...\n", - "Calculating project IndonesiaMangroveConservation40000...\n", - "Calculating project IndonesiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndonesiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndonesiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaMangroveRestoration100...\n", - "Calculating project AustraliaMangroveRestoration100...\n", - "Calculating project AustraliaMangroveRestoration100...\n", - "Calculating project AustraliaMangroveRestoration100...\n", - "Calculating project AustraliaMangroveRestoration500...\n", - "Calculating project AustraliaMangroveRestoration500...\n", - "Calculating project AustraliaMangroveRestoration500...\n", - "Calculating project AustraliaMangroveRestoration500...\n", - "Calculating project AustraliaMangroveRestoration1000...\n", - "Calculating project AustraliaMangroveRestoration1000...\n", - "Calculating project AustraliaMangroveRestoration1000...\n", - "Calculating project AustraliaMangroveRestoration1000...\n", - "Calculating project AustraliaMangroveConservation4000...\n", - "Calculating project AustraliaMangroveConservation4000...\n", - "Calculating project AustraliaMangroveConservation20000...\n", - "Calculating project AustraliaMangroveConservation20000...\n", - "Calculating project AustraliaMangroveConservation40000...\n", - "Calculating project AustraliaMangroveConservation40000...\n", - "Calculating project AustraliaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project AustraliaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project AustraliaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanMangroveRestoration100...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration100...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration100...\n", - "Calculating project CaribbeanMangroveRestoration100...\n", - "Calculating project CaribbeanMangroveRestoration500...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration500...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration500...\n", - "Calculating project CaribbeanMangroveRestoration500...\n", - "Calculating project CaribbeanMangroveRestoration1000...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration1000...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveRestoration1000...\n", - "Calculating project CaribbeanMangroveRestoration1000...\n", - "Calculating project CaribbeanMangroveConservation4000...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveConservation4000...\n", - "Calculating project CaribbeanMangroveConservation20000...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveConservation20000...\n", - "Calculating project CaribbeanMangroveConservation40000...\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanMangroveConservation40000...\n", - "Calculating project CaribbeanSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project CaribbeanSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project CaribbeanSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Warning: Max iterations reached without convergence.\n", - "Calculating project CaribbeanSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaMangroveRestoration100...\n", - "Calculating project KenyaMangroveRestoration100...\n", - "Calculating project KenyaMangroveRestoration100...\n", - "Calculating project KenyaMangroveRestoration100...\n", - "Calculating project KenyaMangroveRestoration500...\n", - "Calculating project KenyaMangroveRestoration500...\n", - "Calculating project KenyaMangroveRestoration500...\n", - "Calculating project KenyaMangroveRestoration500...\n", - "Calculating project KenyaMangroveRestoration1000...\n", - "Calculating project KenyaMangroveRestoration1000...\n", - "Calculating project KenyaMangroveRestoration1000...\n", - "Calculating project KenyaMangroveRestoration1000...\n", - "Calculating project KenyaMangroveConservation4000...\n", - "Calculating project KenyaMangroveConservation4000...\n", - "Calculating project KenyaMangroveConservation20000...\n", - "Calculating project KenyaMangroveConservation20000...\n", - "Calculating project KenyaMangroveConservation40000...\n", - "Calculating project KenyaMangroveConservation40000...\n", - "Calculating project KenyaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project KenyaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project KenyaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration100...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration500...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveRestoration1000...\n", - "Calculating project MexicoMangroveConservation4000...\n", - "Calculating project MexicoMangroveConservation4000...\n", - "Calculating project MexicoMangroveConservation20000...\n", - "Calculating project MexicoMangroveConservation20000...\n", - "Calculating project MexicoMangroveConservation40000...\n", - "Calculating project MexicoMangroveConservation40000...\n", - "Calculating project MexicoSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project MexicoSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaMangroveRestoration100...\n", - "Calculating project ColombiaMangroveRestoration100...\n", - "Calculating project ColombiaMangroveRestoration100...\n", - "Calculating project ColombiaMangroveRestoration100...\n", - "Calculating project ColombiaMangroveRestoration500...\n", - "Calculating project ColombiaMangroveRestoration500...\n", - "Calculating project ColombiaMangroveRestoration500...\n", - "Calculating project ColombiaMangroveRestoration500...\n", - "Calculating project ColombiaMangroveRestoration1000...\n", - "Calculating project ColombiaMangroveRestoration1000...\n", - "Calculating project ColombiaMangroveRestoration1000...\n", - "Calculating project ColombiaMangroveRestoration1000...\n", - "Calculating project ColombiaMangroveConservation4000...\n", - "Calculating project ColombiaMangroveConservation4000...\n", - "Calculating project ColombiaMangroveConservation20000...\n", - "Calculating project ColombiaMangroveConservation20000...\n", - "Calculating project ColombiaMangroveConservation40000...\n", - "Calculating project ColombiaMangroveConservation40000...\n", - "Calculating project ColombiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ColombiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ColombiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaMangroveRestoration100...\n", - "Calculating project IndiaMangroveRestoration100...\n", - "Calculating project IndiaMangroveRestoration100...\n", - "Calculating project IndiaMangroveRestoration100...\n", - "Calculating project IndiaMangroveRestoration500...\n", - "Calculating project IndiaMangroveRestoration500...\n", - "Calculating project IndiaMangroveRestoration500...\n", - "Calculating project IndiaMangroveRestoration500...\n", - "Calculating project IndiaMangroveRestoration1000...\n", - "Calculating project IndiaMangroveRestoration1000...\n", - "Calculating project IndiaMangroveRestoration1000...\n", - "Calculating project IndiaMangroveRestoration1000...\n", - "Calculating project IndiaMangroveConservation4000...\n", - "Calculating project IndiaMangroveConservation4000...\n", - "Calculating project IndiaMangroveConservation20000...\n", - "Calculating project IndiaMangroveConservation20000...\n", - "Calculating project IndiaMangroveConservation40000...\n", - "Calculating project IndiaMangroveConservation40000...\n", - "Calculating project IndiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project IndiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project IndiaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaMangroveRestoration100...\n", - "Calculating project ChinaMangroveRestoration100...\n", - "Calculating project ChinaMangroveRestoration100...\n", - "Calculating project ChinaMangroveRestoration100...\n", - "Calculating project ChinaMangroveRestoration500...\n", - "Calculating project ChinaMangroveRestoration500...\n", - "Calculating project ChinaMangroveRestoration500...\n", - "Calculating project ChinaMangroveRestoration500...\n", - "Calculating project ChinaMangroveRestoration1000...\n", - "Calculating project ChinaMangroveRestoration1000...\n", - "Calculating project ChinaMangroveRestoration1000...\n", - "Calculating project ChinaMangroveRestoration1000...\n", - "Calculating project ChinaMangroveConservation4000...\n", - "Calculating project ChinaMangroveConservation4000...\n", - "Calculating project ChinaMangroveConservation20000...\n", - "Calculating project ChinaMangroveConservation20000...\n", - "Calculating project ChinaMangroveConservation40000...\n", - "Calculating project ChinaMangroveConservation40000...\n", - "Calculating project ChinaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassRestoration100...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassRestoration500...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation400...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation2000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSeagrassConservation4000...\n", - "No default Tier 2 sequestration rate data available for Seagrass.\n", - "Calculating project ChinaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration100...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration500...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshRestoration1000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation800...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation4000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n", - "Calculating project ChinaSalt marshConservation8000...\n", - "No default Tier 2 sequestration rate data available for Salt marsh.\n" - ] - } - ], + "outputs": [], "source": [ "# 8. Run the model for each project and calculate the costs\n", "\n", @@ -1994,230 +512,16 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size...leftover_after_opexleftover_after_opex_npvtotal_revenuetotal_revenu_npvcredits_issuedmonitoring_npvmaintenance_npvmonitoringmaintenancetotal_revenue_npv
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0...191780.0NaN4921553None22,0616004632905229940003532842916212
6United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0...1122892.0NaN8429900None27,576600463226474699400027539984995044
12United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0...1048980.0NaN8151494None27,576600463210802899400025634244830077
18United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0...-3745866.0NaN776663None22,061600463290522994000353284460203
24United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0...-5963226.0NaN970829None27,57660046322647469940002753998575254
\n", - "

5 rows × 58 columns

\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "6 United States Mangrove Restoration Hydrology Small \n", - "12 United States Mangrove Restoration Hybrid Small \n", - "18 United States Mangrove Restoration Planting Small \n", - "24 United States Mangrove Restoration Hydrology Small \n", - "\n", - " project_size price_type country_code continent base_size ... \\\n", - "0 100 Opex breakeven USA North America 500.0 ... \n", - "6 100 Opex breakeven USA North America 500.0 ... \n", - "12 100 Opex breakeven USA North America 500.0 ... \n", - "18 100 Market price USA North America 500.0 ... \n", - "24 100 Market price USA North America 500.0 ... \n", - "\n", - " leftover_after_opex leftover_after_opex_npv total_revenue total_revenu_npv \\\n", - "0 191780.0 NaN 4921553 None \n", - "6 1122892.0 NaN 8429900 None \n", - "12 1048980.0 NaN 8151494 None \n", - "18 -3745866.0 NaN 776663 None \n", - "24 -5963226.0 NaN 970829 None \n", - "\n", - " credits_issued monitoring_npv maintenance_npv monitoring maintenance \\\n", - "0 22,061 600463 290522 994000 353284 \n", - "6 27,576 600463 2264746 994000 2753998 \n", - "12 27,576 600463 2108028 994000 2563424 \n", - "18 22,061 600463 290522 994000 353284 \n", - "24 27,576 600463 2264746 994000 2753998 \n", - "\n", - " total_revenue_npv \n", - "0 2916212 \n", - "6 4995044 \n", - "12 4830077 \n", - "18 460203 \n", - "24 575254 \n", - "\n", - "[5 rows x 58 columns]" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df_combinations.head()" ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2234,223 +538,9 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size...leftover_after_opexleftover_after_opex_npvtotal_revenuetotal_revenu_npvcredits_issuedmonitoring_npvmaintenance_npvmonitoringmaintenancetotal_revenue_npv
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0...191780.00.049215530.022,0616004632905229940003532842916212
1United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0...1122892.00.084299000.027,576600463226474699400027539984995044
2United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0...1048980.00.081514940.027,576600463210802899400025634244830077
3United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0...-3745866.00.07766630.022,061600463290522994000353284460203
4United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0...-5963226.00.09708290.027,57660046322647469940002753998575254
\n", - "

5 rows × 58 columns

\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "1 United States Mangrove Restoration Hydrology Small \n", - "2 United States Mangrove Restoration Hybrid Small \n", - "3 United States Mangrove Restoration Planting Small \n", - "4 United States Mangrove Restoration Hydrology Small \n", - "\n", - " project_size price_type country_code continent base_size ... \\\n", - "0 100 Opex breakeven USA North America 500.0 ... \n", - "1 100 Opex breakeven USA North America 500.0 ... \n", - "2 100 Opex breakeven USA North America 500.0 ... \n", - "3 100 Market price USA North America 500.0 ... \n", - "4 100 Market price USA North America 500.0 ... \n", - "\n", - " leftover_after_opex leftover_after_opex_npv total_revenue \\\n", - "0 191780.0 0.0 4921553 \n", - "1 1122892.0 0.0 8429900 \n", - "2 1048980.0 0.0 8151494 \n", - "3 -3745866.0 0.0 776663 \n", - "4 -5963226.0 0.0 970829 \n", - "\n", - " total_revenu_npv credits_issued monitoring_npv maintenance_npv \\\n", - "0 0.0 22,061 600463 290522 \n", - "1 0.0 27,576 600463 2264746 \n", - "2 0.0 27,576 600463 2108028 \n", - "3 0.0 22,061 600463 290522 \n", - "4 0.0 27,576 600463 2264746 \n", - "\n", - " monitoring maintenance total_revenue_npv \n", - "0 994000 353284 2916212 \n", - "1 994000 2753998 4995044 \n", - "2 994000 2563424 4830077 \n", - "3 994000 353284 460203 \n", - "4 994000 2753998 575254 \n", - "\n", - "[5 rows x 58 columns]" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Open csv file\n", "df_combinations = pd.read_csv(\"./raw_data/output.csv\")\n", @@ -2461,147 +551,9 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemlegal_feasibilityimplementation_risk_scoreavailability_of_experienced_laborsecurity_ratingavailability_of_alternative_fundingbiodiversity_benefitsocial_feasibilitycoastal_protection_benefit
0AustraliaMangrove1.03.01.01.01.01.011
1AustraliaSalt marsh1.03.01.01.01.01.011
2AustraliaSeagrass1.03.01.01.01.01.012
3CaribbeanMangrove3.01.03.02.02.03.021
4CaribbeanSalt marsh3.01.03.02.02.03.000
\n", - "
" - ], - "text/plain": [ - " country ecosystem legal_feasibility implementation_risk_score \\\n", - "0 Australia Mangrove 1.0 3.0 \n", - "1 Australia Salt marsh 1.0 3.0 \n", - "2 Australia Seagrass 1.0 3.0 \n", - "3 Caribbean Mangrove 3.0 1.0 \n", - "4 Caribbean Salt marsh 3.0 1.0 \n", - "\n", - " availability_of_experienced_labor security_rating \\\n", - "0 1.0 1.0 \n", - "1 1.0 1.0 \n", - "2 1.0 1.0 \n", - "3 3.0 2.0 \n", - "4 3.0 2.0 \n", - "\n", - " availability_of_alternative_funding biodiversity_benefit \\\n", - "0 1.0 1.0 \n", - "1 1.0 1.0 \n", - "2 1.0 1.0 \n", - "3 2.0 3.0 \n", - "4 2.0 3.0 \n", - "\n", - " social_feasibility coastal_protection_benefit \n", - "0 1 1 \n", - "1 1 1 \n", - "2 1 2 \n", - "3 2 1 \n", - "4 0 0 " - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Open scorecard rating uploaded file.\n", "df_scorecard = pd.read_csv(\"raw_data/scorecard_rating/qualitative_scorecard_rating.csv\")\n", @@ -2614,147 +566,9 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemlegal_feasibilityimplementation_risk_scoreavailability_of_experienced_laborsecurity_ratingavailability_of_alternative_fundingbiodiversity_benefitsocial_feasibilitycoastal_protection_benefit
0AustraliaMangrove1.03.01.01.01.01.01.01.0
1AustraliaSalt marsh1.03.01.01.01.01.01.01.0
2AustraliaSeagrass1.03.01.01.01.01.01.02.0
3CaribbeanMangrove3.01.03.02.02.03.02.01.0
4CaribbeanSalt marsh3.01.03.02.02.03.00.00.0
\n", - "
" - ], - "text/plain": [ - " country ecosystem legal_feasibility implementation_risk_score \\\n", - "0 Australia Mangrove 1.0 3.0 \n", - "1 Australia Salt marsh 1.0 3.0 \n", - "2 Australia Seagrass 1.0 3.0 \n", - "3 Caribbean Mangrove 3.0 1.0 \n", - "4 Caribbean Salt marsh 3.0 1.0 \n", - "\n", - " availability_of_experienced_labor security_rating \\\n", - "0 1.0 1.0 \n", - "1 1.0 1.0 \n", - "2 1.0 1.0 \n", - "3 3.0 2.0 \n", - "4 3.0 2.0 \n", - "\n", - " availability_of_alternative_funding biodiversity_benefit \\\n", - "0 1.0 1.0 \n", - "1 1.0 1.0 \n", - "2 1.0 1.0 \n", - "3 2.0 3.0 \n", - "4 2.0 3.0 \n", - "\n", - " social_feasibility coastal_protection_benefit \n", - "0 1.0 1.0 \n", - "1 1.0 1.0 \n", - "2 1.0 2.0 \n", - "3 2.0 1.0 \n", - "4 0.0 0.0 " - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# check the dtypes of the columns\n", "df_scorecard.dtypes\n", @@ -2768,237 +582,9 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size...legal_feasibility_colorimplementation_risk_score_colorsocial_feasibility_coloravailability_of_experienced_labor_colorsecurity_rating_coloravailability_of_alternative_funding_colorcoastal_protection_benefit_colorbiodiversity_benefit_colorscorecard_ratingscorecard_rating_color
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
1United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
2United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
3United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
4United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0...HighHighHighHighMediumHighHighHigh1.080645High
\n", - "

5 rows × 78 columns

\n", - "
" - ], - "text/plain": [ - " country ecosystem activity activity_type project_size_filter \\\n", - "0 United States Mangrove Restoration Planting Small \n", - "1 United States Mangrove Restoration Hydrology Small \n", - "2 United States Mangrove Restoration Hybrid Small \n", - "3 United States Mangrove Restoration Planting Small \n", - "4 United States Mangrove Restoration Hydrology Small \n", - "\n", - " project_size price_type country_code continent base_size ... \\\n", - "0 100 Opex breakeven USA North America 500.0 ... \n", - "1 100 Opex breakeven USA North America 500.0 ... \n", - "2 100 Opex breakeven USA North America 500.0 ... \n", - "3 100 Market price USA North America 500.0 ... \n", - "4 100 Market price USA North America 500.0 ... \n", - "\n", - " legal_feasibility_color implementation_risk_score_color \\\n", - "0 High High \n", - "1 High High \n", - "2 High High \n", - "3 High High \n", - "4 High High \n", - "\n", - " social_feasibility_color availability_of_experienced_labor_color \\\n", - "0 High High \n", - "1 High High \n", - "2 High High \n", - "3 High High \n", - "4 High High \n", - "\n", - " security_rating_color availability_of_alternative_funding_color \\\n", - "0 Medium High \n", - "1 Medium High \n", - "2 Medium High \n", - "3 Medium High \n", - "4 Medium High \n", - "\n", - " coastal_protection_benefit_color biodiversity_benefit_color \\\n", - "0 High High \n", - "1 High High \n", - "2 High High \n", - "3 High High \n", - "4 High High \n", - "\n", - " scorecard_rating scorecard_rating_color \n", - "0 1.080645 High \n", - "1 1.080645 High \n", - "2 1.080645 High \n", - "3 1.080645 High \n", - "4 1.080645 High \n", - "\n", - "[5 rows x 78 columns]" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "# Add scoredcard rating to the df_combinations\n", "\n", @@ -3229,7 +815,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ diff --git a/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb b/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb index e62798ce..6ee335b8 100644 --- a/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb +++ b/data/notebooks/TNC_BlueCarbonTool_prototype.ipynb @@ -446,33 +446,6 @@ "cost_calculator.get_summary()" ] }, - { - "cell_type": "code", - "execution_count": 8, - "id": "646f4deb", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "962944.928098755" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# total avoided emissions\n", - "# annual avoided emissions\n", - "from sequestration_credits_calculator import SequestrationCreditsCalculator\n", - "\n", - "sequestration_credits_calculator = SequestrationCreditsCalculator(Project)\n", - "\n", - "sequestration_credits_calculator.calculate_abatement_potential()" - ] - }, { "cell_type": "code", "execution_count": 9, @@ -1787,51 +1760,6 @@ "print(f\"The breakeven cost is: {breakeven_cost}\")" ] }, - { - "cell_type": "code", - "execution_count": 35, - "id": "99227a72", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "3576250.5665318407" - ] - }, - "execution_count": 35, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# TOtal cost\n", - "cost_calculator.total_NPV" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "id": "a1c26847", - "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "Sequestration rate can only be calculated for restoration projects.", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn[14], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mProject\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_sequestration_rate\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/vizzuality/repos/tnc-blue-carbon-cost-tool/data/notebooks/../src/bcc_model/blue_carbon_project.py:274\u001b[0m, in \u001b[0;36mBlueCarbonProject.get_sequestration_rate\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 272\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mget_sequestration_rate\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[1;32m 273\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mactivity \u001b[38;5;241m!=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mRestoration\u001b[39m\u001b[38;5;124m\"\u001b[39m:\n\u001b[0;32m--> 274\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mSequestration rate can only be calculated for restoration projects.\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 275\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msequestration_rate_used \u001b[38;5;241m==\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mTier 1 - IPCC default value\u001b[39m\u001b[38;5;124m\"\u001b[39m:\n\u001b[1;32m 276\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msequestration_rate \u001b[38;5;241m=\u001b[39m get_value_from_master_table(\n\u001b[1;32m 277\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mmaster_table, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcountry_code, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mecosystem, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mtier_1_sequestration_rate\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 278\u001b[0m )\n", - "\u001b[0;31mValueError\u001b[0m: Sequestration rate can only be calculated for restoration projects." - ] - } - ], - "source": [ - "Project.get_sequestration_rate()" - ] - }, { "cell_type": "code", "execution_count": null, From fb5725c3294f08d096d2547e505b7970ef51ed25 Mon Sep 17 00:00:00 2001 From: elpamart Date: Tue, 14 Jan 2025 09:35:24 +0100 Subject: [PATCH 3/3] Highlight the key cost components --- data/notebooks/High_level_overview.ipynb | 1606 +++++++++++++++++++++- 1 file changed, 1559 insertions(+), 47 deletions(-) diff --git a/data/notebooks/High_level_overview.ipynb b/data/notebooks/High_level_overview.ipynb index 84ee92b7..b3da475e 100644 --- a/data/notebooks/High_level_overview.ipynb +++ b/data/notebooks/High_level_overview.ipynb @@ -2,14 +2,14 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# import libraries\n", "import sys\n", "\n", - "sys.path.append(\"src/bcc_model/\")\n", + "sys.path.append(\"../src/bcc_model/\")\n", "\n", "import itertools\n", "import math\n", @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -76,13 +76,241 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivitycountry_codecontinenthdiproject_size_hafeasibility_analysisconservation_planning_and_admindata_collection_and_field_cost...ecosystem_extentecosystem_extent_historicecosystem_loss_raterestorable_landtier_1_emission_factoremission_factor_AGBemission_factor_SOCtier_1_sequestration_ratetier_2_sequestration_rateother_community_cash_flow
0United StatesMangroveRestorationUSANorth America1.0500.0100000.0166766.66666726666.666667...2.315054e+052.312725e+05-0.0088689665.78051227.255.22760958.0020815.9417.2349Non-development
1IndonesiaMangroveRestorationIDNAsia2.0500.050000.0166766.66666726666.666667...2.901690e+062.930508e+06-0.003716204536.16790027.2355.39839471.8766425.9429.5000Development
2AustraliaMangroveRestorationAUSOceania1.0500.070000.0166766.66666726666.666667...1.004149e+061.013552e+06-0.00149869160.39725027.2197.88110859.7620895.947.2850Non-development
3CaribbeanMangroveRestorationBHSNorth America1.0500.070000.0166766.66666726666.666667...1.508391e+051.447886e+05-0.0073219842.16983327.221.830982107.9465285.947.5000Non-development
4KenyaMangroveRestorationKENAfrica3.0500.050000.0166766.66666726666.666667...5.412150e+045.408001e+04-0.0027811609.69810027.291.77981779.0400565.9419.0000Development
\n", + "

5 rows × 36 columns

\n", + "
" + ], + "text/plain": [ + " country ecosystem activity country_code continent hdi \\\n", + "0 United States Mangrove Restoration USA North America 1.0 \n", + "1 Indonesia Mangrove Restoration IDN Asia 2.0 \n", + "2 Australia Mangrove Restoration AUS Oceania 1.0 \n", + "3 Caribbean Mangrove Restoration BHS North America 1.0 \n", + "4 Kenya Mangrove Restoration KEN Africa 3.0 \n", + "\n", + " project_size_ha feasibility_analysis conservation_planning_and_admin \\\n", + "0 500.0 100000.0 166766.666667 \n", + "1 500.0 50000.0 166766.666667 \n", + "2 500.0 70000.0 166766.666667 \n", + "3 500.0 70000.0 166766.666667 \n", + "4 500.0 50000.0 166766.666667 \n", + "\n", + " data_collection_and_field_cost ... ecosystem_extent \\\n", + "0 26666.666667 ... 2.315054e+05 \n", + "1 26666.666667 ... 2.901690e+06 \n", + "2 26666.666667 ... 1.004149e+06 \n", + "3 26666.666667 ... 1.508391e+05 \n", + "4 26666.666667 ... 5.412150e+04 \n", + "\n", + " ecosystem_extent_historic ecosystem_loss_rate restorable_land \\\n", + "0 2.312725e+05 -0.008868 9665.780512 \n", + "1 2.930508e+06 -0.003716 204536.167900 \n", + "2 1.013552e+06 -0.001498 69160.397250 \n", + "3 1.447886e+05 -0.007321 9842.169833 \n", + "4 5.408001e+04 -0.002781 1609.698100 \n", + "\n", + " tier_1_emission_factor emission_factor_AGB emission_factor_SOC \\\n", + "0 27.2 55.227609 58.002081 \n", + "1 27.2 355.398394 71.876642 \n", + "2 27.2 197.881108 59.762089 \n", + "3 27.2 21.830982 107.946528 \n", + "4 27.2 91.779817 79.040056 \n", + "\n", + " tier_1_sequestration_rate tier_2_sequestration_rate \\\n", + "0 5.94 17.2349 \n", + "1 5.94 29.5000 \n", + "2 5.94 7.2850 \n", + "3 5.94 7.5000 \n", + "4 5.94 19.0000 \n", + "\n", + " other_community_cash_flow \n", + "0 Non-development \n", + "1 Development \n", + "2 Non-development \n", + "3 Non-development \n", + "4 Development \n", + "\n", + "[5 rows x 36 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# 1. Import master table, base size table and base increase table\n", "# with information for the project calculations\n", - "data_path = \"raw_data/data_ingestion.xlsm\"\n", + "data_path = \"../raw_data/data_ingestion.xlsm\"\n", "\n", "# Open the excel file - tab 'master_table'\n", "master_table = pd.read_excel(data_path, sheet_name=\"master_table\")\n", @@ -98,7 +326,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -137,9 +365,115 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_type
0United StatesMangroveRestorationPlantingSmall100Opex breakeven
1United StatesMangroveRestorationHydrologySmall100Opex breakeven
2United StatesMangroveRestorationHybridSmall100Opex breakeven
3United StatesMangroveRestorationPlantingSmall100Market price
4United StatesMangroveRestorationHydrologySmall100Market price
\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "1 United States Mangrove Restoration Hydrology Small \n", + "2 United States Mangrove Restoration Hybrid Small \n", + "3 United States Mangrove Restoration Planting Small \n", + "4 United States Mangrove Restoration Hydrology Small \n", + "\n", + " project_size price_type \n", + "0 100 Opex breakeven \n", + "1 100 Opex breakeven \n", + "2 100 Opex breakeven \n", + "3 100 Market price \n", + "4 100 Market price " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# 3. Create all possible combinations for the overview page\n", "all_combinations = []\n", @@ -186,7 +520,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -250,9 +584,127 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinent
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
1United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
2United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
3United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
4United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America
\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "1 United States Mangrove Restoration Planting Small \n", + "2 United States Mangrove Restoration Planting Small \n", + "3 United States Mangrove Restoration Planting Small \n", + "4 United States Mangrove Restoration Planting Small \n", + "\n", + " project_size price_type country_code continent \n", + "0 100 Opex breakeven USA North America \n", + "1 100 Opex breakeven USA North America \n", + "2 100 Opex breakeven USA North America \n", + "3 100 Opex breakeven USA North America \n", + "4 100 Opex breakeven USA North America " + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# 5. Get the country name, country_code and continent information from the master table:\n", "\n", @@ -267,9 +719,133 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_size
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
1United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
2United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
3United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
4United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0
\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "1 United States Mangrove Restoration Planting Small \n", + "2 United States Mangrove Restoration Planting Small \n", + "3 United States Mangrove Restoration Planting Small \n", + "4 United States Mangrove Restoration Planting Small \n", + "\n", + " project_size price_type country_code continent base_size \n", + "0 100 Opex breakeven USA North America 500.0 \n", + "1 100 Opex breakeven USA North America 500.0 \n", + "2 100 Opex breakeven USA North America 500.0 \n", + "3 100 Opex breakeven USA North America 500.0 \n", + "4 100 Opex breakeven USA North America 500.0 " + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# 6. Get the project_size_ha from the master_table and rename it to base_size\n", "base_size_value_df = master_table[[\"country_code\", \"ecosystem\", \"activity\", \"project_size_ha\"]]\n", @@ -285,9 +861,146 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countryecosystemactivityactivity_typeproject_size_filterproject_sizeprice_typecountry_codecontinentbase_sizeproject_name
0United StatesMangroveRestorationPlantingSmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
6United StatesMangroveRestorationHydrologySmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
12United StatesMangroveRestorationHybridSmall100Opex breakevenUSANorth America500.0United StatesMangroveRestoration100
18United StatesMangroveRestorationPlantingSmall100Market priceUSANorth America500.0United StatesMangroveRestoration100
24United StatesMangroveRestorationHydrologySmall100Market priceUSANorth America500.0United StatesMangroveRestoration100
\n", + "
" + ], + "text/plain": [ + " country ecosystem activity activity_type project_size_filter \\\n", + "0 United States Mangrove Restoration Planting Small \n", + "6 United States Mangrove Restoration Hydrology Small \n", + "12 United States Mangrove Restoration Hybrid Small \n", + "18 United States Mangrove Restoration Planting Small \n", + "24 United States Mangrove Restoration Hydrology Small \n", + "\n", + " project_size price_type country_code continent base_size \\\n", + "0 100 Opex breakeven USA North America 500.0 \n", + "6 100 Opex breakeven USA North America 500.0 \n", + "12 100 Opex breakeven USA North America 500.0 \n", + "18 100 Market price USA North America 500.0 \n", + "24 100 Market price USA North America 500.0 \n", + "\n", + " project_name \n", + "0 United StatesMangroveRestoration100 \n", + "6 United StatesMangroveRestoration100 \n", + "12 United StatesMangroveRestoration100 \n", + "18 United StatesMangroveRestoration100 \n", + "24 United StatesMangroveRestoration100 " + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# 7. Create a new column called \"project_name\" by concatenating the \"country\", \"ecosystem\",\n", "# \"activity\" and \"project_size\" columns\n", @@ -304,9 +1017,778 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration100...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration500...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveRestoration1000...\n", + "Calculating project United StatesMangroveConservation4000...\n", + "Calculating project United StatesMangroveConservation4000...\n", + "Calculating project United StatesMangroveConservation20000...\n", + "Calculating project United StatesMangroveConservation20000...\n", + "Calculating project United StatesMangroveConservation40000...\n", + "Calculating project United StatesMangroveConservation40000...\n", + "Calculating project United StatesSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project United StatesSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaMangroveRestoration100...\n", + "Calculating project IndonesiaMangroveRestoration100...\n", + "Calculating project IndonesiaMangroveRestoration100...\n", + "Calculating project IndonesiaMangroveRestoration100...\n", + "Calculating project IndonesiaMangroveRestoration500...\n", + "Calculating project IndonesiaMangroveRestoration500...\n", + "Calculating project IndonesiaMangroveRestoration500...\n", + "Calculating project IndonesiaMangroveRestoration500...\n", + "Calculating project IndonesiaMangroveRestoration1000...\n", + "Calculating project IndonesiaMangroveRestoration1000...\n", + "Calculating project IndonesiaMangroveRestoration1000...\n", + "Calculating project IndonesiaMangroveRestoration1000...\n", + "Calculating project IndonesiaMangroveConservation4000...\n", + "Calculating project IndonesiaMangroveConservation4000...\n", + "Calculating project IndonesiaMangroveConservation20000...\n", + "Calculating project IndonesiaMangroveConservation20000...\n", + "Calculating project IndonesiaMangroveConservation40000...\n", + "Calculating project IndonesiaMangroveConservation40000...\n", + "Calculating project IndonesiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndonesiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndonesiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaMangroveRestoration100...\n", + "Calculating project AustraliaMangroveRestoration100...\n", + "Calculating project AustraliaMangroveRestoration100...\n", + "Calculating project AustraliaMangroveRestoration100...\n", + "Calculating project AustraliaMangroveRestoration500...\n", + "Calculating project AustraliaMangroveRestoration500...\n", + "Calculating project AustraliaMangroveRestoration500...\n", + "Calculating project AustraliaMangroveRestoration500...\n", + "Calculating project AustraliaMangroveRestoration1000...\n", + "Calculating project AustraliaMangroveRestoration1000...\n", + "Calculating project AustraliaMangroveRestoration1000...\n", + "Calculating project AustraliaMangroveRestoration1000...\n", + "Calculating project AustraliaMangroveConservation4000...\n", + "Calculating project AustraliaMangroveConservation4000...\n", + "Calculating project AustraliaMangroveConservation20000...\n", + "Calculating project AustraliaMangroveConservation20000...\n", + "Calculating project AustraliaMangroveConservation40000...\n", + "Calculating project AustraliaMangroveConservation40000...\n", + "Calculating project AustraliaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project AustraliaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project AustraliaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanMangroveRestoration100...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration100...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration100...\n", + "Calculating project CaribbeanMangroveRestoration100...\n", + "Calculating project CaribbeanMangroveRestoration500...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration500...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration500...\n", + "Calculating project CaribbeanMangroveRestoration500...\n", + "Calculating project CaribbeanMangroveRestoration1000...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration1000...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveRestoration1000...\n", + "Calculating project CaribbeanMangroveRestoration1000...\n", + "Calculating project CaribbeanMangroveConservation4000...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveConservation4000...\n", + "Calculating project CaribbeanMangroveConservation20000...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveConservation20000...\n", + "Calculating project CaribbeanMangroveConservation40000...\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanMangroveConservation40000...\n", + "Calculating project CaribbeanSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project CaribbeanSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project CaribbeanSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Warning: Max iterations reached without convergence.\n", + "Calculating project CaribbeanSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaMangroveRestoration100...\n", + "Calculating project KenyaMangroveRestoration100...\n", + "Calculating project KenyaMangroveRestoration100...\n", + "Calculating project KenyaMangroveRestoration100...\n", + "Calculating project KenyaMangroveRestoration500...\n", + "Calculating project KenyaMangroveRestoration500...\n", + "Calculating project KenyaMangroveRestoration500...\n", + "Calculating project KenyaMangroveRestoration500...\n", + "Calculating project KenyaMangroveRestoration1000...\n", + "Calculating project KenyaMangroveRestoration1000...\n", + "Calculating project KenyaMangroveRestoration1000...\n", + "Calculating project KenyaMangroveRestoration1000...\n", + "Calculating project KenyaMangroveConservation4000...\n", + "Calculating project KenyaMangroveConservation4000...\n", + "Calculating project KenyaMangroveConservation20000...\n", + "Calculating project KenyaMangroveConservation20000...\n", + "Calculating project KenyaMangroveConservation40000...\n", + "Calculating project KenyaMangroveConservation40000...\n", + "Calculating project KenyaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project KenyaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project KenyaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration100...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration500...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveRestoration1000...\n", + "Calculating project MexicoMangroveConservation4000...\n", + "Calculating project MexicoMangroveConservation4000...\n", + "Calculating project MexicoMangroveConservation20000...\n", + "Calculating project MexicoMangroveConservation20000...\n", + "Calculating project MexicoMangroveConservation40000...\n", + "Calculating project MexicoMangroveConservation40000...\n", + "Calculating project MexicoSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project MexicoSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaMangroveRestoration100...\n", + "Calculating project ColombiaMangroveRestoration100...\n", + "Calculating project ColombiaMangroveRestoration100...\n", + "Calculating project ColombiaMangroveRestoration100...\n", + "Calculating project ColombiaMangroveRestoration500...\n", + "Calculating project ColombiaMangroveRestoration500...\n", + "Calculating project ColombiaMangroveRestoration500...\n", + "Calculating project ColombiaMangroveRestoration500...\n", + "Calculating project ColombiaMangroveRestoration1000...\n", + "Calculating project ColombiaMangroveRestoration1000...\n", + "Calculating project ColombiaMangroveRestoration1000...\n", + "Calculating project ColombiaMangroveRestoration1000...\n", + "Calculating project ColombiaMangroveConservation4000...\n", + "Calculating project ColombiaMangroveConservation4000...\n", + "Calculating project ColombiaMangroveConservation20000...\n", + "Calculating project ColombiaMangroveConservation20000...\n", + "Calculating project ColombiaMangroveConservation40000...\n", + "Calculating project ColombiaMangroveConservation40000...\n", + "Calculating project ColombiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ColombiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ColombiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaMangroveRestoration100...\n", + "Calculating project IndiaMangroveRestoration100...\n", + "Calculating project IndiaMangroveRestoration100...\n", + "Calculating project IndiaMangroveRestoration100...\n", + "Calculating project IndiaMangroveRestoration500...\n", + "Calculating project IndiaMangroveRestoration500...\n", + "Calculating project IndiaMangroveRestoration500...\n", + "Calculating project IndiaMangroveRestoration500...\n", + "Calculating project IndiaMangroveRestoration1000...\n", + "Calculating project IndiaMangroveRestoration1000...\n", + "Calculating project IndiaMangroveRestoration1000...\n", + "Calculating project IndiaMangroveRestoration1000...\n", + "Calculating project IndiaMangroveConservation4000...\n", + "Calculating project IndiaMangroveConservation4000...\n", + "Calculating project IndiaMangroveConservation20000...\n", + "Calculating project IndiaMangroveConservation20000...\n", + "Calculating project IndiaMangroveConservation40000...\n", + "Calculating project IndiaMangroveConservation40000...\n", + "Calculating project IndiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project IndiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project IndiaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaMangroveRestoration100...\n", + "Calculating project ChinaMangroveRestoration100...\n", + "Calculating project ChinaMangroveRestoration100...\n", + "Calculating project ChinaMangroveRestoration100...\n", + "Calculating project ChinaMangroveRestoration500...\n", + "Calculating project ChinaMangroveRestoration500...\n", + "Calculating project ChinaMangroveRestoration500...\n", + "Calculating project ChinaMangroveRestoration500...\n", + "Calculating project ChinaMangroveRestoration1000...\n", + "Calculating project ChinaMangroveRestoration1000...\n", + "Calculating project ChinaMangroveRestoration1000...\n", + "Calculating project ChinaMangroveRestoration1000...\n", + "Calculating project ChinaMangroveConservation4000...\n", + "Calculating project ChinaMangroveConservation4000...\n", + "Calculating project ChinaMangroveConservation20000...\n", + "Calculating project ChinaMangroveConservation20000...\n", + "Calculating project ChinaMangroveConservation40000...\n", + "Calculating project ChinaMangroveConservation40000...\n", + "Calculating project ChinaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassRestoration100...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassRestoration500...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation400...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation2000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSeagrassConservation4000...\n", + "No default Tier 2 sequestration rate data available for Seagrass.\n", + "Calculating project ChinaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration100...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration500...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshRestoration1000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation800...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation4000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n", + "Calculating project ChinaSalt marshConservation8000...\n", + "No default Tier 2 sequestration rate data available for Salt marsh.\n" + ] + } + ], "source": [ "# 8. Run the model for each project and calculate the costs\n", "\n", @@ -322,32 +1804,32 @@ " \"cost_per_tco2e\",\n", " \"feasibility_analysis_npv\",\n", " \"feasibility_analysis\",\n", - " \"conservation_planning_npv\",\n", - " \"conservation_planning\",\n", + " \"conservation_planning_npv\", # Key cost component\n", + " \"conservation_planning\", # Key cost component\n", " \"data_collection_npv\",\n", " \"data_collection\",\n", - " \"community_representation_npv\",\n", - " \"community_representation\",\n", + " \"community_representation_npv\", # Key cost component\n", + " \"community_representation\", # Key cost component\n", " \"blue_carbon_project_planning_npv\",\n", " \"blue_carbon_project_planning\",\n", " \"establishing_carbon_rights_npv\",\n", " \"establishing_carbon_rights\",\n", " \"validation_npv\",\n", " \"validation\",\n", - " \"implementation_labor_npv\",\n", - " \"implementation_labor\",\n", - " \"monitoring_maintenance_npv\",\n", - " \"monitoring_maintenance\",\n", - " \"community_benefit_npv\",\n", - " \"community_benefit\",\n", - " \"carbon_standard_fees_npv\",\n", - " \"carbon_standard_fees\",\n", + " \"implementation_labor_npv\", # Key cost component\n", + " \"implementation_labor\", # Key cost component\n", + " \"monitoring_maintenance_npv\", # Key cost component\n", + " \"monitoring_maintenance\", # Key cost component\n", + " \"community_benefit_npv\", # Key cost component\n", + " \"community_benefit\", # Key cost component\n", + " \"carbon_standard_fees_npv\", # Key cost component\n", + " \"carbon_standard_fees\", # Key cost component\n", " \"baseline_reassessment_npv\",\n", " \"baseline_reassessment\",\n", " \"mrv_npv\",\n", " \"mrv\",\n", - " \"long_term_project_operating_npv\",\n", - " \"long_term_project_operating\",\n", + " \"long_term_project_operating_npv\", # Key cost component\n", + " \"long_term_project_operating\", # Key cost component\n", " \"initial_price_assumption\",\n", " \"leftover_after_opex\",\n", " \"leftover_after_opex_npv\",\n", @@ -434,34 +1916,64 @@ " \"opex\": (\"Operating expenditure\", \"Total cost\"),\n", " \"feasibility_analysis_npv\": (\"Feasibility analysis\", \"NPV\"),\n", " \"feasibility_analysis\": (\"Feasibility analysis\", \"Total cost\"),\n", - " \"conservation_planning_npv\": (\"Conservation planning and admin\", \"NPV\"),\n", - " \"conservation_planning\": (\"Conservation planning and admin\", \"Total cost\"),\n", + " \"conservation_planning_npv\": (\n", + " \"Conservation planning and admin\",\n", + " \"NPV\",\n", + " ), # Key cost component # noqa: E501\n", + " \"conservation_planning\": (\n", + " \"Conservation planning and admin\",\n", + " \"Total cost\",\n", + " ), # Key cost component # noqa: E501\n", " \"data_collection_npv\": (\"Data collection and field costs\", \"NPV\"),\n", " \"data_collection\": (\"Data collection and field costs\", \"Total cost\"),\n", - " \"community_representation_npv\": (\"Community representation / liaison\", \"NPV\"),\n", - " \"community_representation\": (\"Community representation / liaison\", \"Total cost\"),\n", + " \"community_representation_npv\": (\n", + " \"Community representation / liaison\",\n", + " \"NPV\",\n", + " ), # Key cost component # noqa: E501\n", + " \"community_representation\": (\n", + " \"Community representation / liaison\",\n", + " \"Total cost\",\n", + " ), # Key cost component # noqa: E501\n", " \"blue_carbon_project_planning_npv\": (\"Blue carbon project planning\", \"NPV\"),\n", " \"blue_carbon_project_planning\": (\"Blue carbon project planning\", \"Total cost\"),\n", " \"establishing_carbon_rights_npv\": (\"Establishing carbon rights\", \"NPV\"),\n", " \"establishing_carbon_rights\": (\"Establishing carbon rights\", \"Total cost\"),\n", " \"validation_npv\": (\"Validation\", \"NPV\"),\n", " \"validation\": (\"Validation\", \"Total cost\"),\n", - " \"implementation_labor_npv\": (\"Implementation labor\", \"NPV\"),\n", - " \"implementation_labor\": (\"Implementation labor\", \"Total cost\"),\n", - " \"monitoring_npv\": (\"Monitoring\", \"NPV\"),\n", - " \"maintenance_npv\": (\"Maintenance\", \"NPV\"),\n", - " \"monitoring\": (\"Monitoring\", \"Total cost\"),\n", - " \"maintenance\": (\"Maintenance\", \"Total cost\"),\n", + " \"implementation_labor_npv\": (\"Implementation labor\", \"NPV\"), # Key cost component\n", + " \"implementation_labor\": (\"Implementation labor\", \"Total cost\"), # Key cost component\n", + " \"monitoring_npv\": (\n", + " \"Monitoring\",\n", + " \"NPV\",\n", + " ), # Key cost component - This would need to be summed with the maintenance value below # noqa: E501\n", + " \"maintenance_npv\": (\n", + " \"Maintenance\",\n", + " \"NPV\",\n", + " ), # Key cost component - This would need to be summed with the monitoring value above # noqa: E501\n", + " \"monitoring\": (\n", + " \"Monitoring\",\n", + " \"Total cost\",\n", + " ), # Key cost component - This would need to be summed with the maintenance value below # noqa: E501\n", + " \"maintenance\": (\n", + " \"Maintenance\",\n", + " \"Total cost\",\n", + " ), # Key cost component - This would need to be summed with the monitoring value above # noqa: E501\n", " \"community_benefit_npv\": (\"Community benefit sharing fund\", \"NPV\"),\n", " \"community_benefit\": (\"Community benefit sharing fund\", \"Total cost\"),\n", - " \"carbon_standard_fees_npv\": (\"Carbon standard fees\", \"NPV\"),\n", - " \"carbon_standard_fees\": (\"Carbon standard fees\", \"Total cost\"),\n", + " \"carbon_standard_fees_npv\": (\"Carbon standard fees\", \"NPV\"), # Key cost component\n", + " \"carbon_standard_fees\": (\"Carbon standard fees\", \"Total cost\"), # Key cost component\n", " \"baseline_reassessment_npv\": (\"Baseline reassessment\", \"NPV\"),\n", " \"baseline_reassessment\": (\"Baseline reassessment\", \"Total cost\"),\n", " \"mrv_npv\": (\"MRV\", \"NPV\"),\n", " \"mrv\": (\"MRV\", \"Total cost\"),\n", - " \"long_term_project_operating_npv\": (\"Long-term project operating\", \"NPV\"),\n", - " \"long_term_project_operating\": (\"Long-term project operating\", \"Total cost\"),\n", + " \"long_term_project_operating_npv\": (\n", + " \"Long-term project operating\",\n", + " \"NPV\",\n", + " ), # Key cost component # noqa: E501\n", + " \"long_term_project_operating\": (\n", + " \"Long-term project operating\",\n", + " \"Total cost\",\n", + " ), # Key cost component # noqa: E501\n", " }\n", "\n", " # Loop over each cost component and assign\n", @@ -473,7 +1985,7 @@ " .replace(\",\", \"\")\n", " )\n", "\n", - " # Add monitoring_maintenance_npv\n", + " # Add monitoring_maintenance_npv - Key cost component combined\n", " df_combinations.loc[index, \"monitoring_maintenance_npv\"] = float(\n", " df_combinations.loc[index, \"monitoring_npv\"]\n", " ) + float(df_combinations.loc[index, \"maintenance_npv\"])\n",