Last active
December 9, 2024 22:41
-
-
Save twolfson/728ea57ea9aafcb731ab43fce52be711 to your computer and use it in GitHub Desktop.
Project Drawdown extraction, 2024-12-09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"provenance": [] | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
}, | |
"language_info": { | |
"name": "python" | |
} | |
}, | |
"cells": [ | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "QXAjHYV4LL1D", | |
"outputId": "2cd7f0e8-0ad0-4dd5-ba73-b4588fa0b397" | |
}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Collecting requests-cache\n", | |
" Downloading requests_cache-1.2.1-py3-none-any.whl.metadata (9.9 kB)\n", | |
"Requirement already satisfied: attrs>=21.2 in /usr/local/lib/python3.10/dist-packages (from requests-cache) (24.2.0)\n", | |
"Collecting cattrs>=22.2 (from requests-cache)\n", | |
" Downloading cattrs-24.1.2-py3-none-any.whl.metadata (8.4 kB)\n", | |
"Requirement already satisfied: platformdirs>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests-cache) (4.3.6)\n", | |
"Requirement already satisfied: requests>=2.22 in /usr/local/lib/python3.10/dist-packages (from requests-cache) (2.32.3)\n", | |
"Collecting url-normalize>=1.4 (from requests-cache)\n", | |
" Downloading url_normalize-1.4.3-py2.py3-none-any.whl.metadata (3.1 kB)\n", | |
"Requirement already satisfied: urllib3>=1.25.5 in /usr/local/lib/python3.10/dist-packages (from requests-cache) (2.2.3)\n", | |
"Requirement already satisfied: exceptiongroup>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from cattrs>=22.2->requests-cache) (1.2.2)\n", | |
"Requirement already satisfied: typing-extensions!=4.6.3,>=4.1.0 in /usr/local/lib/python3.10/dist-packages (from cattrs>=22.2->requests-cache) (4.12.2)\n", | |
"Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.22->requests-cache) (3.4.0)\n", | |
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.22->requests-cache) (3.10)\n", | |
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.22->requests-cache) (2024.8.30)\n", | |
"Requirement already satisfied: six in /usr/local/lib/python3.10/dist-packages (from url-normalize>=1.4->requests-cache) (1.16.0)\n", | |
"Downloading requests_cache-1.2.1-py3-none-any.whl (61 kB)\n", | |
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m61.4/61.4 kB\u001b[0m \u001b[31m4.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", | |
"\u001b[?25hDownloading cattrs-24.1.2-py3-none-any.whl (66 kB)\n", | |
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m66.4/66.4 kB\u001b[0m \u001b[31m5.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", | |
"\u001b[?25hDownloading url_normalize-1.4.3-py2.py3-none-any.whl (6.8 kB)\n", | |
"Installing collected packages: url-normalize, cattrs, requests-cache\n", | |
"Successfully installed cattrs-24.1.2 requests-cache-1.2.1 url-normalize-1.4.3\n" | |
] | |
} | |
], | |
"source": [ | |
"# Install our dependencies\n", | |
"!pip install requests-cache" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"# Load our dependencies\n", | |
"import requests_cache\n", | |
"import pandas as pd\n", | |
"\n", | |
"# Create a cache store for our requests\n", | |
"session = requests_cache.CachedSession('project_drawdown_cache')\n", | |
"\n", | |
"# Load our table of solutions into pandas\n", | |
"DRAWDOWN_BASE_URL = \"https://drawdown.org\"\n", | |
"TABLE_OF_SOLUTIONS_URL = f\"{DRAWDOWN_BASE_URL}/solutions/table-of-solutions\"\n", | |
"table_of_solutions_res = session.get(TABLE_OF_SOLUTIONS_URL)\n", | |
"parsed_df_list = pd.read_html(table_of_solutions_res.content, extract_links=\"body\")\n", | |
"assert parsed_df_list, \"Received more than 1 dataframe, expected 1\"\n", | |
"solutions_df = parsed_df_list[0]\n", | |
"\n", | |
"# Remove last row which is totals\n", | |
"assert pd.isna(solutions_df.iloc[-1][\"Solution\"]), \"Expected last row to be total row\"\n", | |
"solutions_df = solutions_df[:-1]\n", | |
"assert not pd.isna(solutions_df.iloc[-1][\"Solution\"]), \"Expected new last row to normal\"\n", | |
"\n", | |
"# Clean up excess tuple data from `extract_links`\n", | |
"# DEV: We had the following, which worked but kept getting SettingWithCopyWarning, despite `loc` fix attempts\n", | |
"# solutions_df[\"URL\"] = solutions_df[\"Solution\"].apply(lambda link_tuple: link_tuple[1])\n", | |
"solutions_df = solutions_df.assign(url_path=solutions_df[\"Solution\"].apply(lambda link_tuple: link_tuple[1]))\n", | |
"for column in solutions_df.columns:\n", | |
" if column == \"url_path\":\n", | |
" continue\n", | |
" solutions_df[column] = solutions_df[column].apply(lambda link_tuple: link_tuple[0])\n", | |
"solutions_df" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 424 | |
}, | |
"id": "vnwRJoRhLfmZ", | |
"outputId": "6b14808a-8c42-48bb-c7b4-f97d00d15b02" | |
}, | |
"execution_count": 99, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
" Solution Sector(s) Scenario 1 * \\\n", | |
"0 Abandoned Farmland Restoration Land Sinks 12.48 \n", | |
"1 Alternative Cement Industry 7.70 \n", | |
"2 Alternative Refrigerants Industry / Buildings 42.73 \n", | |
"3 Bamboo Production Land Sinks 7.70 \n", | |
"4 Bicycle Infrastructure Transportation 2.73 \n", | |
".. ... ... ... \n", | |
"88 Utility-Scale Energy Storage Electricity \n", | |
"89 Utility-Scale Solar Photovoltaics Electricity 40.83 \n", | |
"90 Walkable Cities Transportation 2.83 \n", | |
"91 Waste to Energy Electricity / Industry 6.27 \n", | |
"92 Water Distribution Efficiency Electricity 0.61 \n", | |
"\n", | |
" Scenario 2 * url_path \n", | |
"0 20.32 /solutions/abandoned-farmland-restoration \n", | |
"1 15.56 /solutions/alternative-cement \n", | |
"2 48.75 /solutions/alternative-refrigerants \n", | |
"3 19.60 /solutions/bamboo-production \n", | |
"4 4.63 /solutions/bicycle-infrastructure \n", | |
".. ... ... \n", | |
"88 /solutions/utility-scale-energy-storage \n", | |
"89 111.59 /solutions/utility-scale-solar-photovoltaics \n", | |
"90 3.51 /solutions/walkable-cities \n", | |
"91 5.24 /solutions/waste-to-energy \n", | |
"92 0.86 /solutions/water-distribution-efficiency \n", | |
"\n", | |
"[93 rows x 5 columns]" | |
], | |
"text/html": [ | |
"\n", | |
" <div id=\"df-4de4f2f1-70b3-4075-8280-422e0b50e960\" class=\"colab-df-container\">\n", | |
" <div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>Solution</th>\n", | |
" <th>Sector(s)</th>\n", | |
" <th>Scenario 1 *</th>\n", | |
" <th>Scenario 2 *</th>\n", | |
" <th>url_path</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>Abandoned Farmland Restoration</td>\n", | |
" <td>Land Sinks</td>\n", | |
" <td>12.48</td>\n", | |
" <td>20.32</td>\n", | |
" <td>/solutions/abandoned-farmland-restoration</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>Alternative Cement</td>\n", | |
" <td>Industry</td>\n", | |
" <td>7.70</td>\n", | |
" <td>15.56</td>\n", | |
" <td>/solutions/alternative-cement</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>Alternative Refrigerants</td>\n", | |
" <td>Industry / Buildings</td>\n", | |
" <td>42.73</td>\n", | |
" <td>48.75</td>\n", | |
" <td>/solutions/alternative-refrigerants</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>Bamboo Production</td>\n", | |
" <td>Land Sinks</td>\n", | |
" <td>7.70</td>\n", | |
" <td>19.60</td>\n", | |
" <td>/solutions/bamboo-production</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>Bicycle Infrastructure</td>\n", | |
" <td>Transportation</td>\n", | |
" <td>2.73</td>\n", | |
" <td>4.63</td>\n", | |
" <td>/solutions/bicycle-infrastructure</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>...</th>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>88</th>\n", | |
" <td>Utility-Scale Energy Storage</td>\n", | |
" <td>Electricity</td>\n", | |
" <td></td>\n", | |
" <td></td>\n", | |
" <td>/solutions/utility-scale-energy-storage</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>89</th>\n", | |
" <td>Utility-Scale Solar Photovoltaics</td>\n", | |
" <td>Electricity</td>\n", | |
" <td>40.83</td>\n", | |
" <td>111.59</td>\n", | |
" <td>/solutions/utility-scale-solar-photovoltaics</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>90</th>\n", | |
" <td>Walkable Cities</td>\n", | |
" <td>Transportation</td>\n", | |
" <td>2.83</td>\n", | |
" <td>3.51</td>\n", | |
" <td>/solutions/walkable-cities</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>91</th>\n", | |
" <td>Waste to Energy</td>\n", | |
" <td>Electricity / Industry</td>\n", | |
" <td>6.27</td>\n", | |
" <td>5.24</td>\n", | |
" <td>/solutions/waste-to-energy</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>92</th>\n", | |
" <td>Water Distribution Efficiency</td>\n", | |
" <td>Electricity</td>\n", | |
" <td>0.61</td>\n", | |
" <td>0.86</td>\n", | |
" <td>/solutions/water-distribution-efficiency</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"<p>93 rows × 5 columns</p>\n", | |
"</div>\n", | |
" <div class=\"colab-df-buttons\">\n", | |
"\n", | |
" <div class=\"colab-df-container\">\n", | |
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-4de4f2f1-70b3-4075-8280-422e0b50e960')\"\n", | |
" title=\"Convert this dataframe to an interactive table.\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n", | |
" <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
"\n", | |
" <style>\n", | |
" .colab-df-container {\n", | |
" display:flex;\n", | |
" gap: 12px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" .colab-df-buttons div {\n", | |
" margin-bottom: 4px;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
"\n", | |
" <script>\n", | |
" const buttonEl =\n", | |
" document.querySelector('#df-4de4f2f1-70b3-4075-8280-422e0b50e960 button.colab-df-convert');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" async function convertToInteractive(key) {\n", | |
" const element = document.querySelector('#df-4de4f2f1-70b3-4075-8280-422e0b50e960');\n", | |
" const dataTable =\n", | |
" await google.colab.kernel.invokeFunction('convertToInteractive',\n", | |
" [key], {});\n", | |
" if (!dataTable) return;\n", | |
"\n", | |
" const docLinkHtml = 'Like what you see? Visit the ' +\n", | |
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n", | |
" + ' to learn more about interactive tables.';\n", | |
" element.innerHTML = '';\n", | |
" dataTable['output_type'] = 'display_data';\n", | |
" await google.colab.output.renderOutput(dataTable, element);\n", | |
" const docLink = document.createElement('div');\n", | |
" docLink.innerHTML = docLinkHtml;\n", | |
" element.appendChild(docLink);\n", | |
" }\n", | |
" </script>\n", | |
" </div>\n", | |
"\n", | |
"\n", | |
"<div id=\"df-133d7545-e248-474f-8638-059696f1f282\">\n", | |
" <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-133d7545-e248-474f-8638-059696f1f282')\"\n", | |
" title=\"Suggest charts\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
"<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <g>\n", | |
" <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n", | |
" </g>\n", | |
"</svg>\n", | |
" </button>\n", | |
"\n", | |
"<style>\n", | |
" .colab-df-quickchart {\n", | |
" --bg-color: #E8F0FE;\n", | |
" --fill-color: #1967D2;\n", | |
" --hover-bg-color: #E2EBFA;\n", | |
" --hover-fill-color: #174EA6;\n", | |
" --disabled-fill-color: #AAA;\n", | |
" --disabled-bg-color: #DDD;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-quickchart {\n", | |
" --bg-color: #3B4455;\n", | |
" --fill-color: #D2E3FC;\n", | |
" --hover-bg-color: #434B5C;\n", | |
" --hover-fill-color: #FFFFFF;\n", | |
" --disabled-bg-color: #3B4455;\n", | |
" --disabled-fill-color: #666;\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart {\n", | |
" background-color: var(--bg-color);\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: var(--fill-color);\n", | |
" height: 32px;\n", | |
" padding: 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart:hover {\n", | |
" background-color: var(--hover-bg-color);\n", | |
" box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: var(--button-hover-fill-color);\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart-complete:disabled,\n", | |
" .colab-df-quickchart-complete:disabled:hover {\n", | |
" background-color: var(--disabled-bg-color);\n", | |
" fill: var(--disabled-fill-color);\n", | |
" box-shadow: none;\n", | |
" }\n", | |
"\n", | |
" .colab-df-spinner {\n", | |
" border: 2px solid var(--fill-color);\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" animation:\n", | |
" spin 1s steps(1) infinite;\n", | |
" }\n", | |
"\n", | |
" @keyframes spin {\n", | |
" 0% {\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" border-left-color: var(--fill-color);\n", | |
" }\n", | |
" 20% {\n", | |
" border-color: transparent;\n", | |
" border-left-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" }\n", | |
" 30% {\n", | |
" border-color: transparent;\n", | |
" border-left-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" border-right-color: var(--fill-color);\n", | |
" }\n", | |
" 40% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" }\n", | |
" 60% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" }\n", | |
" 80% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" }\n", | |
" 90% {\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" }\n", | |
" }\n", | |
"</style>\n", | |
"\n", | |
" <script>\n", | |
" async function quickchart(key) {\n", | |
" const quickchartButtonEl =\n", | |
" document.querySelector('#' + key + ' button');\n", | |
" quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n", | |
" quickchartButtonEl.classList.add('colab-df-spinner');\n", | |
" try {\n", | |
" const charts = await google.colab.kernel.invokeFunction(\n", | |
" 'suggestCharts', [key], {});\n", | |
" } catch (error) {\n", | |
" console.error('Error during call to suggestCharts:', error);\n", | |
" }\n", | |
" quickchartButtonEl.classList.remove('colab-df-spinner');\n", | |
" quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n", | |
" }\n", | |
" (() => {\n", | |
" let quickchartButtonEl =\n", | |
" document.querySelector('#df-133d7545-e248-474f-8638-059696f1f282 button');\n", | |
" quickchartButtonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
" })();\n", | |
" </script>\n", | |
"</div>\n", | |
"\n", | |
" <div id=\"id_1bd6b613-3d18-4485-9ab8-56d2306c456f\">\n", | |
" <style>\n", | |
" .colab-df-generate {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-generate:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-generate {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-generate:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
" <button class=\"colab-df-generate\" onclick=\"generateWithVariable('solutions_df')\"\n", | |
" title=\"Generate code using this dataframe.\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
" <script>\n", | |
" (() => {\n", | |
" const buttonEl =\n", | |
" document.querySelector('#id_1bd6b613-3d18-4485-9ab8-56d2306c456f button.colab-df-generate');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" buttonEl.onclick = () => {\n", | |
" google.colab.notebook.generateWithVariable('solutions_df');\n", | |
" }\n", | |
" })();\n", | |
" </script>\n", | |
" </div>\n", | |
"\n", | |
" </div>\n", | |
" </div>\n" | |
], | |
"application/vnd.google.colaboratory.intrinsic+json": { | |
"type": "dataframe", | |
"variable_name": "solutions_df", | |
"summary": "{\n \"name\": \"solutions_df\",\n \"rows\": 93,\n \"fields\": [\n {\n \"column\": \"Solution\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 93,\n \"samples\": [\n \"Improved Cattle Feed\",\n \"Efficient Aviation\",\n \"Multistrata Agroforestry\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Sector(s)\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 16,\n \"samples\": [\n \"Land Sinks\",\n \"Industry\",\n \"Buildings\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Scenario\\u00a01\\u00a0*\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 85,\n \"samples\": [\n \"15.03\",\n \"12.48\",\n \"15.12\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Scenario\\u00a02\\u00a0*\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 88,\n \"samples\": [\n \"13.73\",\n \"20.32\",\n \"3.25\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"url_path\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 93,\n \"samples\": [\n \"/solutions/improved-cattle-feed\",\n \"/solutions/efficient-aviation\",\n \"/solutions/multistrata-agroforestry\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}" | |
} | |
}, | |
"metadata": {}, | |
"execution_count": 99 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"# Load in our dependencies\n", | |
"from bs4 import BeautifulSoup\n", | |
"from decimal import Decimal\n", | |
"import re\n", | |
"\n", | |
"# Copy our original data to avoid writing to original\n", | |
"solutions_with_stats_df = solutions_df.copy()\n", | |
"\n", | |
"# Define common functions\n", | |
"def is_stat_range(value):\n", | |
" return isinstance(value, str) and \"to\" in value\n", | |
"\n", | |
"def parse_stat_range_into_parts(stat_range):\n", | |
" # Extract our values in the string range\n", | |
" stat_range_match = re.search(r\"^([-\\.\\d]+) to ([-\\.\\d]+)$\", stat_range)\n", | |
" assert stat_range_match, f\"Failed to match \\\"X to Y\\\" format: {stat_range}\"\n", | |
" # DEV: Be paranoid about using Decimal to avoid any floating point annoyances\n", | |
" stat_range_start = Decimal(stat_range_match[1])\n", | |
" stat_range_end = Decimal(stat_range_match[2])\n", | |
" return [stat_range_start, stat_range_end]\n", | |
"\n", | |
"# Load in additional stats/values from each page\n", | |
"for index, row in solutions_df.iterrows():\n", | |
" # Retrieve the detail page of our solution\n", | |
" # Example: https://drawdown.org/solutions/abandoned-farmland-restoration\n", | |
" solution_url = f\"{DRAWDOWN_BASE_URL}{row.url_path}\"\n", | |
" # print(f\"Retrieving {solution_url}\")\n", | |
" solution_res = session.get(solution_url)\n", | |
"\n", | |
" # Parse out the stats\n", | |
" # Example: <div class=\"stat\"><div class=\"stat-value\">12.48 to 20.32</div><div class=\"stat-unit\">Gigatons</div><div class=\"stat-label\">CO<sub>2</sub> Equivalent<br/>Reduced/Sequestered<br/>2020–2050</div></div>\n", | |
" # DEV: We replace `<br>` directly as `get_text` with `separator` captures `sub` as well, https://stackoverflow.com/a/55590217/1960509\n", | |
" solution_soup = BeautifulSoup(solution_res.text.replace(\"<br>\", \" \"), \"html.parser\")\n", | |
" stat_list = solution_soup.find_all(class_=\"stat\")\n", | |
" for stat in stat_list:\n", | |
" # Parse the HTML into text values\n", | |
" stat_label = stat.find(class_=\"stat-label\").get_text().strip()\n", | |
" stat_unit = stat.find(class_=\"stat-unit\").text.strip()\n", | |
" stat_value = stat.find(class_=\"stat-value\").text.strip()\n", | |
"\n", | |
" # If our results are in lowest common denominator unit, then do nothing\n", | |
" if stat_unit in [\"Gigatons\", \"Billion US$\"]:\n", | |
" pass\n", | |
" # Otherwise, if the results are a known denominator, convert it\n", | |
" elif stat_unit == \"Trillion US$\":\n", | |
" # Parse our stat value\n", | |
" if is_stat_range(stat_value):\n", | |
" stat_value_start, stat_value_end = parse_stat_range_into_parts(stat_value)\n", | |
" else:\n", | |
" raise RuntimeError(f\"Expected stat_value to be range format: {stat_value}\")\n", | |
"\n", | |
" # Replace our unit (and sanely keep same decimal places as original)\n", | |
" stat_unit = \"Billion US$\"\n", | |
" stat_value = f\"{stat_value_start * 1000} to {stat_value_end * 1000}\"\n", | |
" # Otherwise, error out\n", | |
" else:\n", | |
" raise RuntimeError(f\"Unexpected unit encountered: {stat_unit}\")\n", | |
"\n", | |
" # Capture our result into the dataframe\n", | |
" solutions_with_stats_df.loc[index, f\"{stat_label} ({stat_unit})\"] = stat_value\n", | |
"\n", | |
"# Add on convenience columns for each new stat column\n", | |
"for stat_column in solutions_with_stats_df.columns:\n", | |
" if stat_column in solutions_df.columns:\n", | |
" continue\n", | |
"\n", | |
" # DEV: There's a more efficient way to do this than double parsing, but this is \"good enough\" (aka fast enough)\n", | |
" solutions_with_stats_df = solutions_with_stats_df.assign(**{\n", | |
" f\"{stat_column} - Start\": solutions_with_stats_df[stat_column].apply(lambda stat_value: parse_stat_range_into_parts(stat_value)[0] if is_stat_range(stat_value) else stat_value),\n", | |
" f\"{stat_column} - End\": solutions_with_stats_df[stat_column].apply(lambda stat_value: parse_stat_range_into_parts(stat_value)[1] if is_stat_range(stat_value) else stat_value)\n", | |
" })\n", | |
"solutions_with_stats_df" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 945 | |
}, | |
"id": "XHVKEUO4THzN", | |
"outputId": "18ddb4e6-dcb2-482d-9e95-23d78ee9bdea" | |
}, | |
"execution_count": 159, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
" Solution Sector(s) Scenario 1 * \\\n", | |
"0 Abandoned Farmland Restoration Land Sinks 12.48 \n", | |
"1 Alternative Cement Industry 7.70 \n", | |
"2 Alternative Refrigerants Industry / Buildings 42.73 \n", | |
"3 Bamboo Production Land Sinks 7.70 \n", | |
"4 Bicycle Infrastructure Transportation 2.73 \n", | |
".. ... ... ... \n", | |
"88 Utility-Scale Energy Storage Electricity \n", | |
"89 Utility-Scale Solar Photovoltaics Electricity 40.83 \n", | |
"90 Walkable Cities Transportation 2.83 \n", | |
"91 Waste to Energy Electricity / Industry 6.27 \n", | |
"92 Water Distribution Efficiency Electricity 0.61 \n", | |
"\n", | |
" Scenario 2 * url_path \\\n", | |
"0 20.32 /solutions/abandoned-farmland-restoration \n", | |
"1 15.56 /solutions/alternative-cement \n", | |
"2 48.75 /solutions/alternative-refrigerants \n", | |
"3 19.60 /solutions/bamboo-production \n", | |
"4 4.63 /solutions/bicycle-infrastructure \n", | |
".. ... ... \n", | |
"88 /solutions/utility-scale-energy-storage \n", | |
"89 111.59 /solutions/utility-scale-solar-photovoltaics \n", | |
"90 3.51 /solutions/walkable-cities \n", | |
"91 5.24 /solutions/waste-to-energy \n", | |
"92 0.86 /solutions/water-distribution-efficiency \n", | |
"\n", | |
" CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) \\\n", | |
"0 12.48 to 20.32 \n", | |
"1 7.70 to 15.56 \n", | |
"2 42.73 to 48.75 \n", | |
"3 7.70 to 19.60 \n", | |
"4 2.73 to 4.63 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 40.83 to 111.59 \n", | |
"90 2.83 to 3.51 \n", | |
"91 6.27 to 5.24 \n", | |
"92 0.61 to 0.86 \n", | |
"\n", | |
" Net First Cost To Implement (Billion US$) \\\n", | |
"0 98.16 to 159.91 \n", | |
"1 -61.38 \n", | |
"2 NaN \n", | |
"3 63.30 to 158.98 \n", | |
"4 -2420.00 to -3130.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 -220.00 to -1340.00 \n", | |
"90 0.00 \n", | |
"91 224.81 to 156.08 \n", | |
"92 7.87 to 10.96 \n", | |
"\n", | |
" Lifetime Net Operational Savings (Billion US$) \\\n", | |
"0 -3240.00 to -5270.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 -1330.00 to -3320.00 \n", | |
"4 5910.00 to 8450.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 12520.00 to 25560.00 \n", | |
"90 3180.00 to 3940.00 \n", | |
"91 -79.08 to -10.32 \n", | |
"92 1020.00 to 1450.00 \n", | |
"\n", | |
" Lifetime Net Profit (Billion US$) \\\n", | |
"0 2660.00 to 4340.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 4000.00 to 10000.00 \n", | |
"4 NaN \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 NaN \n", | |
"90 NaN \n", | |
"91 NaN \n", | |
"92 NaN \n", | |
"\n", | |
" CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - Start \\\n", | |
"0 12.48 \n", | |
"1 7.70 \n", | |
"2 42.73 \n", | |
"3 7.70 \n", | |
"4 2.73 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 40.83 \n", | |
"90 2.83 \n", | |
"91 6.27 \n", | |
"92 0.61 \n", | |
"\n", | |
" CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - End \\\n", | |
"0 20.32 \n", | |
"1 15.56 \n", | |
"2 48.75 \n", | |
"3 19.60 \n", | |
"4 4.63 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 111.59 \n", | |
"90 3.51 \n", | |
"91 5.24 \n", | |
"92 0.86 \n", | |
"\n", | |
" Net First Cost To Implement (Billion US$) - Start \\\n", | |
"0 98.16 \n", | |
"1 -61.38 \n", | |
"2 NaN \n", | |
"3 63.30 \n", | |
"4 -2420.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 -220.00 \n", | |
"90 0.00 \n", | |
"91 224.81 \n", | |
"92 7.87 \n", | |
"\n", | |
" Net First Cost To Implement (Billion US$) - End \\\n", | |
"0 159.91 \n", | |
"1 -61.38 \n", | |
"2 NaN \n", | |
"3 158.98 \n", | |
"4 -3130.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 -1340.00 \n", | |
"90 0.00 \n", | |
"91 156.08 \n", | |
"92 10.96 \n", | |
"\n", | |
" Lifetime Net Operational Savings (Billion US$) - Start \\\n", | |
"0 -3240.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 -1330.00 \n", | |
"4 5910.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 12520.00 \n", | |
"90 3180.00 \n", | |
"91 -79.08 \n", | |
"92 1020.00 \n", | |
"\n", | |
" Lifetime Net Operational Savings (Billion US$) - End \\\n", | |
"0 -5270.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 -3320.00 \n", | |
"4 8450.00 \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 25560.00 \n", | |
"90 3940.00 \n", | |
"91 -10.32 \n", | |
"92 1450.00 \n", | |
"\n", | |
" Lifetime Net Profit (Billion US$) - Start \\\n", | |
"0 2660.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 4000.00 \n", | |
"4 NaN \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 NaN \n", | |
"90 NaN \n", | |
"91 NaN \n", | |
"92 NaN \n", | |
"\n", | |
" Lifetime Net Profit (Billion US$) - End \n", | |
"0 4340.00 \n", | |
"1 NaN \n", | |
"2 NaN \n", | |
"3 10000.00 \n", | |
"4 NaN \n", | |
".. ... \n", | |
"88 NaN \n", | |
"89 NaN \n", | |
"90 NaN \n", | |
"91 NaN \n", | |
"92 NaN \n", | |
"\n", | |
"[93 rows x 17 columns]" | |
], | |
"text/html": [ | |
"\n", | |
" <div id=\"df-7a8f95f6-87e1-4d07-9cfe-e02865ce56be\" class=\"colab-df-container\">\n", | |
" <div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>Solution</th>\n", | |
" <th>Sector(s)</th>\n", | |
" <th>Scenario 1 *</th>\n", | |
" <th>Scenario 2 *</th>\n", | |
" <th>url_path</th>\n", | |
" <th>CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons)</th>\n", | |
" <th>Net First Cost To Implement (Billion US$)</th>\n", | |
" <th>Lifetime Net Operational Savings (Billion US$)</th>\n", | |
" <th>Lifetime Net Profit (Billion US$)</th>\n", | |
" <th>CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - Start</th>\n", | |
" <th>CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - End</th>\n", | |
" <th>Net First Cost To Implement (Billion US$) - Start</th>\n", | |
" <th>Net First Cost To Implement (Billion US$) - End</th>\n", | |
" <th>Lifetime Net Operational Savings (Billion US$) - Start</th>\n", | |
" <th>Lifetime Net Operational Savings (Billion US$) - End</th>\n", | |
" <th>Lifetime Net Profit (Billion US$) - Start</th>\n", | |
" <th>Lifetime Net Profit (Billion US$) - End</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>Abandoned Farmland Restoration</td>\n", | |
" <td>Land Sinks</td>\n", | |
" <td>12.48</td>\n", | |
" <td>20.32</td>\n", | |
" <td>/solutions/abandoned-farmland-restoration</td>\n", | |
" <td>12.48 to 20.32</td>\n", | |
" <td>98.16 to 159.91</td>\n", | |
" <td>-3240.00 to -5270.00</td>\n", | |
" <td>2660.00 to 4340.00</td>\n", | |
" <td>12.48</td>\n", | |
" <td>20.32</td>\n", | |
" <td>98.16</td>\n", | |
" <td>159.91</td>\n", | |
" <td>-3240.00</td>\n", | |
" <td>-5270.00</td>\n", | |
" <td>2660.00</td>\n", | |
" <td>4340.00</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>Alternative Cement</td>\n", | |
" <td>Industry</td>\n", | |
" <td>7.70</td>\n", | |
" <td>15.56</td>\n", | |
" <td>/solutions/alternative-cement</td>\n", | |
" <td>7.70 to 15.56</td>\n", | |
" <td>-61.38</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>7.70</td>\n", | |
" <td>15.56</td>\n", | |
" <td>-61.38</td>\n", | |
" <td>-61.38</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>Alternative Refrigerants</td>\n", | |
" <td>Industry / Buildings</td>\n", | |
" <td>42.73</td>\n", | |
" <td>48.75</td>\n", | |
" <td>/solutions/alternative-refrigerants</td>\n", | |
" <td>42.73 to 48.75</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>42.73</td>\n", | |
" <td>48.75</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>Bamboo Production</td>\n", | |
" <td>Land Sinks</td>\n", | |
" <td>7.70</td>\n", | |
" <td>19.60</td>\n", | |
" <td>/solutions/bamboo-production</td>\n", | |
" <td>7.70 to 19.60</td>\n", | |
" <td>63.30 to 158.98</td>\n", | |
" <td>-1330.00 to -3320.00</td>\n", | |
" <td>4000.00 to 10000.00</td>\n", | |
" <td>7.70</td>\n", | |
" <td>19.60</td>\n", | |
" <td>63.30</td>\n", | |
" <td>158.98</td>\n", | |
" <td>-1330.00</td>\n", | |
" <td>-3320.00</td>\n", | |
" <td>4000.00</td>\n", | |
" <td>10000.00</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>Bicycle Infrastructure</td>\n", | |
" <td>Transportation</td>\n", | |
" <td>2.73</td>\n", | |
" <td>4.63</td>\n", | |
" <td>/solutions/bicycle-infrastructure</td>\n", | |
" <td>2.73 to 4.63</td>\n", | |
" <td>-2420.00 to -3130.00</td>\n", | |
" <td>5910.00 to 8450.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>2.73</td>\n", | |
" <td>4.63</td>\n", | |
" <td>-2420.00</td>\n", | |
" <td>-3130.00</td>\n", | |
" <td>5910.00</td>\n", | |
" <td>8450.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>...</th>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" <td>...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>88</th>\n", | |
" <td>Utility-Scale Energy Storage</td>\n", | |
" <td>Electricity</td>\n", | |
" <td></td>\n", | |
" <td></td>\n", | |
" <td>/solutions/utility-scale-energy-storage</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>89</th>\n", | |
" <td>Utility-Scale Solar Photovoltaics</td>\n", | |
" <td>Electricity</td>\n", | |
" <td>40.83</td>\n", | |
" <td>111.59</td>\n", | |
" <td>/solutions/utility-scale-solar-photovoltaics</td>\n", | |
" <td>40.83 to 111.59</td>\n", | |
" <td>-220.00 to -1340.00</td>\n", | |
" <td>12520.00 to 25560.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>40.83</td>\n", | |
" <td>111.59</td>\n", | |
" <td>-220.00</td>\n", | |
" <td>-1340.00</td>\n", | |
" <td>12520.00</td>\n", | |
" <td>25560.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>90</th>\n", | |
" <td>Walkable Cities</td>\n", | |
" <td>Transportation</td>\n", | |
" <td>2.83</td>\n", | |
" <td>3.51</td>\n", | |
" <td>/solutions/walkable-cities</td>\n", | |
" <td>2.83 to 3.51</td>\n", | |
" <td>0.00</td>\n", | |
" <td>3180.00 to 3940.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>2.83</td>\n", | |
" <td>3.51</td>\n", | |
" <td>0.00</td>\n", | |
" <td>0.00</td>\n", | |
" <td>3180.00</td>\n", | |
" <td>3940.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>91</th>\n", | |
" <td>Waste to Energy</td>\n", | |
" <td>Electricity / Industry</td>\n", | |
" <td>6.27</td>\n", | |
" <td>5.24</td>\n", | |
" <td>/solutions/waste-to-energy</td>\n", | |
" <td>6.27 to 5.24</td>\n", | |
" <td>224.81 to 156.08</td>\n", | |
" <td>-79.08 to -10.32</td>\n", | |
" <td>NaN</td>\n", | |
" <td>6.27</td>\n", | |
" <td>5.24</td>\n", | |
" <td>224.81</td>\n", | |
" <td>156.08</td>\n", | |
" <td>-79.08</td>\n", | |
" <td>-10.32</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>92</th>\n", | |
" <td>Water Distribution Efficiency</td>\n", | |
" <td>Electricity</td>\n", | |
" <td>0.61</td>\n", | |
" <td>0.86</td>\n", | |
" <td>/solutions/water-distribution-efficiency</td>\n", | |
" <td>0.61 to 0.86</td>\n", | |
" <td>7.87 to 10.96</td>\n", | |
" <td>1020.00 to 1450.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>0.61</td>\n", | |
" <td>0.86</td>\n", | |
" <td>7.87</td>\n", | |
" <td>10.96</td>\n", | |
" <td>1020.00</td>\n", | |
" <td>1450.00</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"<p>93 rows × 17 columns</p>\n", | |
"</div>\n", | |
" <div class=\"colab-df-buttons\">\n", | |
"\n", | |
" <div class=\"colab-df-container\">\n", | |
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-7a8f95f6-87e1-4d07-9cfe-e02865ce56be')\"\n", | |
" title=\"Convert this dataframe to an interactive table.\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n", | |
" <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
"\n", | |
" <style>\n", | |
" .colab-df-container {\n", | |
" display:flex;\n", | |
" gap: 12px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-convert:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" .colab-df-buttons div {\n", | |
" margin-bottom: 4px;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-convert:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
"\n", | |
" <script>\n", | |
" const buttonEl =\n", | |
" document.querySelector('#df-7a8f95f6-87e1-4d07-9cfe-e02865ce56be button.colab-df-convert');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" async function convertToInteractive(key) {\n", | |
" const element = document.querySelector('#df-7a8f95f6-87e1-4d07-9cfe-e02865ce56be');\n", | |
" const dataTable =\n", | |
" await google.colab.kernel.invokeFunction('convertToInteractive',\n", | |
" [key], {});\n", | |
" if (!dataTable) return;\n", | |
"\n", | |
" const docLinkHtml = 'Like what you see? Visit the ' +\n", | |
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n", | |
" + ' to learn more about interactive tables.';\n", | |
" element.innerHTML = '';\n", | |
" dataTable['output_type'] = 'display_data';\n", | |
" await google.colab.output.renderOutput(dataTable, element);\n", | |
" const docLink = document.createElement('div');\n", | |
" docLink.innerHTML = docLinkHtml;\n", | |
" element.appendChild(docLink);\n", | |
" }\n", | |
" </script>\n", | |
" </div>\n", | |
"\n", | |
"\n", | |
"<div id=\"df-4a27c636-b4b4-41f0-92d1-5982e2a3733e\">\n", | |
" <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-4a27c636-b4b4-41f0-92d1-5982e2a3733e')\"\n", | |
" title=\"Suggest charts\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
"<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <g>\n", | |
" <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n", | |
" </g>\n", | |
"</svg>\n", | |
" </button>\n", | |
"\n", | |
"<style>\n", | |
" .colab-df-quickchart {\n", | |
" --bg-color: #E8F0FE;\n", | |
" --fill-color: #1967D2;\n", | |
" --hover-bg-color: #E2EBFA;\n", | |
" --hover-fill-color: #174EA6;\n", | |
" --disabled-fill-color: #AAA;\n", | |
" --disabled-bg-color: #DDD;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-quickchart {\n", | |
" --bg-color: #3B4455;\n", | |
" --fill-color: #D2E3FC;\n", | |
" --hover-bg-color: #434B5C;\n", | |
" --hover-fill-color: #FFFFFF;\n", | |
" --disabled-bg-color: #3B4455;\n", | |
" --disabled-fill-color: #666;\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart {\n", | |
" background-color: var(--bg-color);\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: var(--fill-color);\n", | |
" height: 32px;\n", | |
" padding: 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart:hover {\n", | |
" background-color: var(--hover-bg-color);\n", | |
" box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: var(--button-hover-fill-color);\n", | |
" }\n", | |
"\n", | |
" .colab-df-quickchart-complete:disabled,\n", | |
" .colab-df-quickchart-complete:disabled:hover {\n", | |
" background-color: var(--disabled-bg-color);\n", | |
" fill: var(--disabled-fill-color);\n", | |
" box-shadow: none;\n", | |
" }\n", | |
"\n", | |
" .colab-df-spinner {\n", | |
" border: 2px solid var(--fill-color);\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" animation:\n", | |
" spin 1s steps(1) infinite;\n", | |
" }\n", | |
"\n", | |
" @keyframes spin {\n", | |
" 0% {\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" border-left-color: var(--fill-color);\n", | |
" }\n", | |
" 20% {\n", | |
" border-color: transparent;\n", | |
" border-left-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" }\n", | |
" 30% {\n", | |
" border-color: transparent;\n", | |
" border-left-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" border-right-color: var(--fill-color);\n", | |
" }\n", | |
" 40% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" border-top-color: var(--fill-color);\n", | |
" }\n", | |
" 60% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" }\n", | |
" 80% {\n", | |
" border-color: transparent;\n", | |
" border-right-color: var(--fill-color);\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" }\n", | |
" 90% {\n", | |
" border-color: transparent;\n", | |
" border-bottom-color: var(--fill-color);\n", | |
" }\n", | |
" }\n", | |
"</style>\n", | |
"\n", | |
" <script>\n", | |
" async function quickchart(key) {\n", | |
" const quickchartButtonEl =\n", | |
" document.querySelector('#' + key + ' button');\n", | |
" quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n", | |
" quickchartButtonEl.classList.add('colab-df-spinner');\n", | |
" try {\n", | |
" const charts = await google.colab.kernel.invokeFunction(\n", | |
" 'suggestCharts', [key], {});\n", | |
" } catch (error) {\n", | |
" console.error('Error during call to suggestCharts:', error);\n", | |
" }\n", | |
" quickchartButtonEl.classList.remove('colab-df-spinner');\n", | |
" quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n", | |
" }\n", | |
" (() => {\n", | |
" let quickchartButtonEl =\n", | |
" document.querySelector('#df-4a27c636-b4b4-41f0-92d1-5982e2a3733e button');\n", | |
" quickchartButtonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
" })();\n", | |
" </script>\n", | |
"</div>\n", | |
"\n", | |
" <div id=\"id_cce573cb-9ce9-4789-9532-c5b94188414c\">\n", | |
" <style>\n", | |
" .colab-df-generate {\n", | |
" background-color: #E8F0FE;\n", | |
" border: none;\n", | |
" border-radius: 50%;\n", | |
" cursor: pointer;\n", | |
" display: none;\n", | |
" fill: #1967D2;\n", | |
" height: 32px;\n", | |
" padding: 0 0 0 0;\n", | |
" width: 32px;\n", | |
" }\n", | |
"\n", | |
" .colab-df-generate:hover {\n", | |
" background-color: #E2EBFA;\n", | |
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n", | |
" fill: #174EA6;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-generate {\n", | |
" background-color: #3B4455;\n", | |
" fill: #D2E3FC;\n", | |
" }\n", | |
"\n", | |
" [theme=dark] .colab-df-generate:hover {\n", | |
" background-color: #434B5C;\n", | |
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n", | |
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n", | |
" fill: #FFFFFF;\n", | |
" }\n", | |
" </style>\n", | |
" <button class=\"colab-df-generate\" onclick=\"generateWithVariable('solutions_with_stats_df')\"\n", | |
" title=\"Generate code using this dataframe.\"\n", | |
" style=\"display:none;\">\n", | |
"\n", | |
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n", | |
" width=\"24px\">\n", | |
" <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n", | |
" </svg>\n", | |
" </button>\n", | |
" <script>\n", | |
" (() => {\n", | |
" const buttonEl =\n", | |
" document.querySelector('#id_cce573cb-9ce9-4789-9532-c5b94188414c button.colab-df-generate');\n", | |
" buttonEl.style.display =\n", | |
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n", | |
"\n", | |
" buttonEl.onclick = () => {\n", | |
" google.colab.notebook.generateWithVariable('solutions_with_stats_df');\n", | |
" }\n", | |
" })();\n", | |
" </script>\n", | |
" </div>\n", | |
"\n", | |
" </div>\n", | |
" </div>\n" | |
], | |
"application/vnd.google.colaboratory.intrinsic+json": { | |
"type": "dataframe", | |
"variable_name": "solutions_with_stats_df", | |
"summary": "{\n \"name\": \"solutions_with_stats_df\",\n \"rows\": 93,\n \"fields\": [\n {\n \"column\": \"Solution\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 93,\n \"samples\": [\n \"Improved Cattle Feed\",\n \"Efficient Aviation\",\n \"Multistrata Agroforestry\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Sector(s)\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 16,\n \"samples\": [\n \"Land Sinks\",\n \"Industry\",\n \"Buildings\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Scenario\\u00a01\\u00a0*\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 85,\n \"samples\": [\n \"15.03\",\n \"12.48\",\n \"15.12\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Scenario\\u00a02\\u00a0*\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 88,\n \"samples\": [\n \"13.73\",\n \"20.32\",\n \"3.25\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"url_path\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 93,\n \"samples\": [\n \"/solutions/improved-cattle-feed\",\n \"/solutions/efficient-aviation\",\n \"/solutions/multistrata-agroforestry\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"CO2 Equivalent Reduced/Sequestered 2020\\u20132050 (Gigatons)\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 87,\n \"samples\": [\n \"1.36 to 0.68\",\n \"12.48 to 20.32\",\n \"68.90\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Net First Cost To Implement (Billion US$)\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 62,\n \"samples\": [\n \"77.10 to 115.27\",\n \"521.52 to 832.73\",\n \"98.16 to 159.91\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Operational Savings (Billion US$)\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 68,\n \"samples\": [\n \"3770.00 to 9830.00\",\n \"1590.00 to 2240.00\",\n \"-100.20 to -209.11\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Profit (Billion US$)\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 14,\n \"samples\": [\n \"1750.00 to 2360.00\",\n \"571.80 to 814.43\",\n \"2660.00 to 4340.00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"CO2 Equivalent Reduced/Sequestered 2020\\u20132050 (Gigatons) - Start\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 84,\n \"samples\": [\n \"3.41\",\n \"12.48\",\n \"78.33\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"CO2 Equivalent Reduced/Sequestered 2020\\u20132050 (Gigatons) - End\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 87,\n \"samples\": [\n \"0.68\",\n \"20.32\",\n \"68.90\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Net First Cost To Implement (Billion US$) - Start\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 62,\n \"samples\": [\n \"77.10\",\n \"521.52\",\n \"98.16\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Net First Cost To Implement (Billion US$) - End\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 62,\n \"samples\": [\n \"115.27\",\n \"832.73\",\n \"159.91\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Operational Savings (Billion US$) - Start\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 68,\n \"samples\": [\n \"3770.00\",\n \"1590.00\",\n \"-100.20\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Operational Savings (Billion US$) - End\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 67,\n \"samples\": [\n \"710.57\",\n \"2240.00\",\n \"-209.11\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Profit (Billion US$) - Start\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 13,\n \"samples\": [\n \"571.80\",\n \"1750.00\",\n \"2660.00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Lifetime Net Profit (Billion US$) - End\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 14,\n \"samples\": [\n \"2360.00\",\n \"814.43\",\n \"4340.00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}" | |
} | |
}, | |
"metadata": {}, | |
"execution_count": 159 | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
index | Solution | Sector(s) | Scenario 1 * | Scenario 2 * | url_path | CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) | Net First Cost To Implement (Billion US$) | Lifetime Net Operational Savings (Billion US$) | Lifetime Net Profit (Billion US$) | CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - Start | CO2 Equivalent Reduced/Sequestered 2020–2050 (Gigatons) - End | Net First Cost To Implement (Billion US$) - Start | Net First Cost To Implement (Billion US$) - End | Lifetime Net Operational Savings (Billion US$) - Start | Lifetime Net Operational Savings (Billion US$) - End | Lifetime Net Profit (Billion US$) - Start | Lifetime Net Profit (Billion US$) - End | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Abandoned Farmland Restoration | Land Sinks | 12.48 | 20.32 | /solutions/abandoned-farmland-restoration | 12.48 to 20.32 | 98.16 to 159.91 | -3240.00 to -5270.00 | 2660.00 to 4340.00 | 12.48 | 20.32 | 98.16 | 159.91 | -3240.00 | -5270.00 | "2660.00" | "4340.00" | |
1 | Alternative Cement | Industry | 7.70 | 15.56 | /solutions/alternative-cement | 7.70 to 15.56 | -61.38 | NaN | NaN | 7.70 | 15.56 | -61.38 | -61.38 | NaN | NaN | NaN | NaN | |
2 | Alternative Refrigerants | Industry / Buildings | 42.73 | 48.75 | /solutions/alternative-refrigerants | 42.73 to 48.75 | NaN | NaN | NaN | 42.73 | 48.75 | NaN | NaN | NaN | NaN | NaN | NaN | |
3 | Bamboo Production | Land Sinks | 7.70 | 19.60 | /solutions/bamboo-production | 7.70 to 19.60 | 63.30 to 158.98 | -1330.00 to -3320.00 | 4000.00 to 10000.00 | 7.70 | 19.60 | 63.30 | 158.98 | -1330.00 | -3320.00 | "4000.00" | "10000.00" | |
4 | Bicycle Infrastructure | Transportation | 2.73 | 4.63 | /solutions/bicycle-infrastructure | 2.73 to 4.63 | -2420.00 to -3130.00 | 5910.00 to 8450.00 | NaN | 2.73 | 4.63 | -2420.00 | -3130.00 | 5910.00 | 8450.00 | NaN | NaN | |
5 | Biochar Production | Engineered Sinks | 1.36 | 3.00 | /solutions/biochar-production | 1.36 to 3.00 | 123.54 to 244.94 | -333.20 to -663.11 | NaN | 1.36 | 3.00 | 123.54 | 244.94 | -333.20 | -663.11 | NaN | NaN | |
6 | Biogas for Cooking | Buildings | 4.65 | 9.70 | /solutions/biogas-for-cooking | 4.65 to 9.70 | 24.72 to 51.59 | -100.20 to -209.11 | NaN | 4.65 | 9.70 | 24.72 | 51.59 | -100.20 | -209.11 | NaN | NaN | |
7 | Biomass Power | Electricity | 2.62 | 3.59 | /solutions/biomass-power | 2.62 to 3.59 | 56.48 to 69.24 | 218.83 to 287.99 | NaN | 2.62 | 3.59 | 56.48 | 69.24 | 218.83 | 287.99 | NaN | NaN | |
8 | Bioplastics | Industry | 1.33 | 2.48 | /solutions/bioplastics | 1.33 to 2.48 | 82.70 to 97.76 | 0.00 | NaN | 1.33 | 2.48 | 82.70 | 97.76 | 0.00 | 0.00 | NaN | NaN | |
9 | Building Automation Systems | Electricity / Buildings | 9.55 | 14.01 | /solutions/building-automation-systems | 9.55 to 14.01 | 287.70 to 393.35 | 2270.00 to 3420.00 | NaN | 9.55 | 14.01 | 287.70 | 393.35 | 2270.00 | 3420.00 | NaN | NaN | |
10 | Building Retrofitting | Electricity / Buildings | /solutions/building-retrofitting | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
11 | Carpooling | Transportation | 9.06 | 11.07 | /solutions/carpooling | 9.06 to 11.07 | 0.00 | 7400.00 to 9180.00 | NaN | 9.06 | 11.07 | 0.00 | 0.00 | 7400.00 | 9180.00 | NaN | NaN | |
12 | Clean Cooking | Buildings | 31.38 | 76.34 | /solutions/clean-cooking | 31.38 to 76.34 | 136.64 to 302.76 | -1960.00 to -4380.00 | NaN | 31.38 | 76.34 | 136.64 | 302.76 | -1960.00 | -4380.00 | NaN | NaN | |
13 | Coastal Wetland Protection | Food, Agriculture, and Land Use / Coastal and Ocean Sinks | 1.20 | 1.62 | /solutions/coastal-wetland-protection | 1.20 to 1.62 | 0.00 | NaN | NaN | 1.20 | 1.62 | 0.00 | 0.00 | NaN | NaN | NaN | NaN | |
14 | Coastal Wetland Restoration | Coastal and Ocean Sinks | 0.76 | 1.00 | /solutions/coastal-wetland-restoration | 0.76 to 1.00 | NaN | NaN | NaN | 0.76 | 1.00 | NaN | NaN | NaN | NaN | NaN | NaN | |
15 | Composting | Industry | 1.13 | 1.40 | /solutions/composting | 1.13 to 1.40 | -26.90 to -35.50 | -4180.00 to -1730.00 | NaN | 1.13 | 1.40 | -26.90 | -35.50 | -4180.00 | -1730.00 | NaN | NaN | |
16 | Concentrated Solar Power | Electricity | 18.00 | 21.51 | /solutions/concentrated-solar-power | 18.00 to 21.51 | 481.52 to 576.86 | -860.00 to -1080.00 | NaN | 18.00 | 21.51 | 481.52 | 576.86 | -860.00 | -1080.00 | NaN | NaN | |
17 | Conservation Agriculture | Food, Agriculture, and Land Use / Land Sinks | 12.81 | 8.08 | /solutions/conservation-agriculture | 12.81 to 8.08 | 89.78 to 56.85 | 2520.00 to 1580.00 | 99.10 to 61.55 | 12.81 | 8.08 | 89.78 | 56.85 | 2520.00 | 1580.00 | "99.10" | "61.55" | |
18 | Distributed Energy Storage | Electricity | /solutions/distributed-energy-storage | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
19 | Distributed Solar Photovoltaics | Electricity | 26.65 | 64.86 | /solutions/distributed-solar-photovoltaics | 26.65 to 64.86 | 517.31 to 352.45 | 7610.00 to 13140.00 | NaN | 26.65 | 64.86 | 517.31 | 352.45 | 7610.00 | 13140.00 | NaN | NaN | |
20 | District Heating | Electricity / Buildings | 6.18 | 9.68 | /solutions/district-heating | 6.18 to 9.68 | 218.34 to 325.50 | 1540.00 to 2340.00 | NaN | 6.18 | 9.68 | 218.34 | 325.50 | 1540.00 | 2340.00 | NaN | NaN | |
21 | Dynamic Glass | Electricity / Buildings | 0.34 | 0.54 | /solutions/dynamic-glass | 0.34 to 0.54 | 57.79 to 83.80 | 113.84 to 189.62 | NaN | 0.34 | 0.54 | 57.79 | 83.80 | 113.84 | 189.62 | NaN | NaN | |
22 | Efficient Aviation | Transportation | 5.29 | 5.82 | /solutions/efficient-aviation | 5.29 to 5.82 | 3470.00 to 3790.00 | 1590.00 to 2240.00 | NaN | 5.29 | 5.82 | 3470.00 | 3790.00 | 1590.00 | 2240.00 | NaN | NaN | |
23 | Efficient Ocean Shipping | Transportation | 6.72 | 9.83 | /solutions/efficient-ocean-shipping | 6.72 to 9.83 | 720.00 to 1010.00 | 2480.00 to 3540.00 | NaN | 6.72 | 9.83 | 720.00 | 1010.00 | 2480.00 | 3540.00 | NaN | NaN | |
24 | Efficient Trucks | Transportation | 9.15 | 10.77 | /solutions/efficient-trucks | 9.15 to 10.77 | 502.57 to 566.56 | 5210.00 to 5960.00 | NaN | 9.15 | 10.77 | 502.57 | 566.56 | 5210.00 | 5960.00 | NaN | NaN | |
25 | Electric Bicycles | Transportation | 1.39 | 1.55 | /solutions/electric-bicycles | 1.39 to 1.55 | -402.06 to -446.01 | 1070.00 to 1230.00 | NaN | 1.39 | 1.55 | -402.06 | -446.01 | 1070.00 | 1230.00 | NaN | NaN | |
26 | Electric Cars | Transportation | 7.66 | 9.76 | /solutions/electric-cars | 7.66 to 9.76 | -572.68 to -602.00 | 11590.00 to 15540.00 | NaN | 7.66 | 9.76 | -572.68 | -602.00 | 11590.00 | 15540.00 | NaN | NaN | |
27 | Electric Trains | Transportation | 1.91 | 3.25 | /solutions/electric-trains | 1.91 to 3.25 | 660.00 to 1430.00 | 2160.00 to 4770.00 | NaN | 1.91 | 3.25 | 660.00 | 1430.00 | 2160.00 | 4770.00 | NaN | NaN | |
28 | Family Planning and Education | Health and Education | 68.90 | 68.90 | /solutions/family-planning-and-education | 68.90 | NaN | NaN | NaN | 68.90 | 68.90 | NaN | NaN | NaN | NaN | NaN | NaN | |
29 | Farm Irrigation Efficiency | Food, Agriculture, and Land Use | 1.13 | 2.07 | /solutions/farm-irrigation-efficiency | 1.13 to 2.07 | 222.87 to 386.92 | 534.60 to 938.58 | NaN | 1.13 | 2.07 | 222.87 | 386.92 | 534.60 | 938.58 | NaN | NaN | |
30 | Forest Protection | Food, Agriculture, and Land Use / Land Sinks | 5.55 | 8.83 | /solutions/forest-protection | 5.55 to 8.83 | NaN | NaN | NaN | 5.55 | 8.83 | NaN | NaN | NaN | NaN | NaN | NaN | |
31 | Geothermal Power | Electricity | 6.15 | 9.17 | /solutions/geothermal-power | 6.15 to 9.17 | 84.33 to 93.08 | 790.00 to 1180.00 | NaN | 6.15 | 9.17 | 84.33 | 93.08 | 790.00 | 1180.00 | NaN | NaN | |
32 | Grassland Protection | Food, Agriculture, and Land Use / Land Sinks | 3.35 | 4.25 | /solutions/grassland-protection | 3.35 to 4.25 | NaN | NaN | NaN | 3.35 | 4.25 | NaN | NaN | NaN | NaN | NaN | NaN | |
33 | Green and Cool Roofs | Electricity / Buildings | 0.53 | 0.99 | /solutions/green-and-cool-roofs | 0.53 to 0.99 | 569.08 to 827.10 | 303.76 to 547.58 | NaN | 0.53 | 0.99 | 569.08 | 827.10 | 303.76 | 547.58 | NaN | NaN | |
34 | Grid Flexibility | Electricity | /solutions/grid-flexibility | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
35 | High-Efficiency Heat Pumps | Electricity / Buildings | 4.04 | 9.05 | /solutions/high-efficiency-heat-pumps | 4.04 to 9.05 | 76.10 to 118.34 | 1050.00 to 2430.00 | NaN | 4.04 | 9.05 | 76.10 | 118.34 | 1050.00 | 2430.00 | NaN | NaN | |
36 | High-Performance Glass | Electricity / Buildings | 8.82 | 11.34 | /solutions/high-performance-glass | 8.82 to 11.34 | 7840.00 to 9520.00 | 2910.00 to 3470.00 | NaN | 8.82 | 11.34 | 7840.00 | 9520.00 | 2910.00 | 3470.00 | NaN | NaN | |
37 | High-Speed Rail | Transportation | 1.26 | 3.62 | /solutions/high-speed-rail | 1.26 to 3.62 | 640.00 to 1740.00 | -690.00 to -1880.00 | NaN | 1.26 | 3.62 | 640.00 | 1740.00 | -690.00 | -1880.00 | NaN | NaN | |
38 | Hybrid Cars | Transportation | 1.61 | 4.71 | /solutions/hybrid-cars | 1.61 to 4.71 | -4.55 to -3.40 | 1550.00 to 4490.00 | NaN | 1.61 | 4.71 | -4.55 | -3.40 | 1550.00 | 4490.00 | NaN | NaN | |
39 | Improved Aquaculture | Food, Agriculture, and Land Use | 0.50 | 0.78 | /solutions/improved-aquaculture | 0.50 to 0.78 | 151.37 to 241.87 | 140.48 to 223.01 | NaN | 0.50 | 0.78 | 151.37 | 241.87 | 140.48 | 223.01 | NaN | NaN | |
40 | Improved Cattle Feed | Food, Agriculture, and Land Use | 4.42 | 15.05 | /solutions/improved-cattle-feed | 4.42 to 15.05 | 0.00 | 550.00 to 1880.00 | NaN | 4.42 | 15.05 | 0.00 | 0.00 | 550.00 | 1880.00 | NaN | NaN | |
41 | Improved Fisheries | Food, Agriculture, and Land Use / Coastal and Ocean Sinks | 1.01 | 1.54 | /solutions/improved-fisheries | 1.01 to 1.54 | NaN | NaN | NaN | 1.01 | 1.54 | NaN | NaN | NaN | NaN | NaN | NaN | |
42 | Improved Manure Management | Food, Agriculture, and Land Use | 3.34 | 6.09 | /solutions/improved-manure-management | 3.34 to 6.09 | 19.93 to 37.16 | -1.27 to -2.99 | NaN | 3.34 | 6.09 | 19.93 | 37.16 | -1.27 | -2.99 | NaN | NaN | |
43 | Improved Rice Production | Food, Agriculture, and Land Use / Land Sinks | 9.85 | 14.43 | /solutions/improved-rice-production | 9.85 to 14.43 | 0.00 | 462.82 to 623.39 | 224.70 to 304.49 | 9.85 | 14.43 | 0.00 | 0.00 | 462.82 | 623.39 | "224.70" | "304.49" | |
44 | Indigenous Peoples’ Forest Tenure | Food, Agriculture, and Land Use / Land Sinks | 8.69 | 12.51 | /solutions/indigenous-peoples-forest-tenure | 8.69 to 12.51 | 0.00 | NaN | NaN | 8.69 | 12.51 | 0.00 | 0.00 | NaN | NaN | NaN | NaN | |
45 | Insulation | Electricity / Buildings | 15.38 | 18.54 | /solutions/insulation | 15.38 to 18.54 | 710.37 to 791.29 | 19570.00 to 22920.00 | NaN | 15.38 | 18.54 | 710.37 | 791.29 | 19570.00 | 22920.00 | NaN | NaN | |
46 | LED Lighting | Electricity | 14.45 | 15.69 | /solutions/led-lighting | 14.45 to 15.69 | -1890.00 to -2160.00 | 4140.00 to 4470.00 | NaN | 14.45 | 15.69 | -1890.00 | -2160.00 | 4140.00 | 4470.00 | NaN | NaN | |
47 | Landfill Methane Capture | Electricity / Industry | 3.89 | -1.48 | /solutions/landfill-methane-capture | 3.89 to -1.48 | -2.57 | 6.17 to -20.17 | NaN | 3.89 | -1.48 | -2.57 | -2.57 | 6.17 | -20.17 | NaN | NaN | |
48 | Low-Flow Fixtures | Electricity / Buildings | 0.93 | 1.52 | /solutions/low-flow-fixtures | 0.93 to 1.52 | 0.44 to 1.25 | 454.93 to 710.57 | NaN | 0.93 | 1.52 | 0.44 | 1.25 | 454.93 | 710.57 | NaN | NaN | |
49 | Macroalgae Protection and Restoration | Coastal and Ocean Sinks | 2.61 | 3.78 | /solutions/macroalgae-protection-and-restoration | 2.61 to 3.78 | NaN | NaN | NaN | 2.61 | 3.78 | NaN | NaN | NaN | NaN | NaN | NaN | |
50 | Managed Grazing | Land Sinks | 13.72 | 20.92 | /solutions/managed-grazing | 13.72 to 20.92 | 31.73 to 49.14 | 604.53 to 935.41 | 2050.00 to 3180.00 | 13.72 | 20.92 | 31.73 | 49.14 | 604.53 | 935.41 | "2050.00" | "3180.00" | |
51 | Methane Digesters | Electricity / Industry | 6.02 | 7.05 | /solutions/methane-digesters | 6.02 to 7.05 | 138.13 to 182.09 | 45.54 to 52.66 | NaN | 6.02 | 7.05 | 138.13 | 182.09 | 45.54 | 52.66 | NaN | NaN | |
52 | Methane Leak Management | Other Energy | 25.83 | 31.29 | /solutions/methane-leak-management | 25.83 to 31.29 | 127.95 to 135.42 | -50.70 to -59.85 | NaN | 25.83 | 31.29 | 127.95 | 135.42 | -50.70 | -59.85 | NaN | NaN | |
53 | Micro Wind Turbines | Electricity | 0.09 | 0.11 | /solutions/micro-wind-turbines | 0.09 to 0.11 | 52.87 to 69.56 | -19.40 to -26.56 | NaN | 0.09 | 0.11 | 52.87 | 69.56 | -19.40 | -26.56 | NaN | NaN | |
54 | Microgrids | Electricity | /solutions/microgrids | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
55 | Multistrata Agroforestry | Land Sinks | 13.26 | 23.94 | /solutions/multistrata-agroforestry | 13.26 to 23.94 | 70.44 to 120.03 | -186.24 to -319.82 | 2280.00 to 3930.00 | 13.26 | 23.94 | 70.44 | 120.03 | -186.24 | -319.82 | "2280.00" | "3930.00" | |
56 | Net Zero Buildings | Electricity / Buildings | /solutions/net-zero-buildings | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
57 | Nuclear Power | Electricity | 3.17 | 3.64 | /solutions/nuclear-power | 3.17 to 3.64 | 176.92 | 332.88 | NaN | 3.17 | 3.64 | 176.92 | 176.92 | 332.88 | 332.88 | NaN | NaN | |
58 | Nutrient Management | Food, Agriculture, and Land Use | 2.77 | 11.48 | /solutions/nutrient-management | 2.77 to 11.48 | 0.00 | 22.82 to 63.84 | NaN | 2.77 | 11.48 | 0.00 | 0.00 | 22.82 | 63.84 | NaN | NaN | |
59 | Ocean Power | Electricity | 1.27 | 0.80 | /solutions/ocean-power | 1.27 to 0.80 | 199.06 to 258.17 | -1060.00 to -1390.00 | NaN | 1.27 | 0.80 | 199.06 | 258.17 | -1060.00 | -1390.00 | NaN | NaN | |
60 | Offshore Wind Turbines | Electricity | 10.22 | 9.89 | /solutions/offshore-wind-turbines | 10.22 to 9.89 | 640.88 to 729.51 | 651.47 to 768.39 | NaN | 10.22 | 9.89 | 640.88 | 729.51 | 651.47 | 768.39 | NaN | NaN | |
61 | Onshore Wind Turbines | Electricity | 46.95 | 143.56 | /solutions/onshore-wind-turbines | 46.95 to 143.56 | 920.00 to 1890.00 | 3770.00 to 9830.00 | NaN | 46.95 | 143.56 | 920.00 | 1890.00 | 3770.00 | 9830.00 | NaN | NaN | |
62 | Peatland Protection and Rewetting | Food, Agriculture, and Land Use / Land Sinks | 25.40 | 40.27 | /solutions/peatland-protection-and-rewetting | 25.40 to 40.27 | 0.00 | NaN | NaN | 25.40 | 40.27 | 0.00 | 0.00 | NaN | NaN | NaN | NaN | |
63 | Perennial Biomass Production | Land Sinks | 4.00 | 7.04 | /solutions/perennial-biomass-production | 4.00 to 7.04 | 195.02 to 338.28 | -1840.00 to -3190.00 | 1130.00 to 1950.00 | 4.00 | 7.04 | 195.02 | 338.28 | -1840.00 | -3190.00 | "1130.00" | "1950.00" | |
64 | Perennial Staple Crops | Land Sinks | 16.34 | 32.87 | /solutions/perennial-staple-crops | 16.34 to 32.87 | 96.53 to 209.53 | -980.00 to -2110.00 | 1700.00 to 3650.00 | 16.34 | 32.87 | 96.53 | 209.53 | -980.00 | -2110.00 | "1700.00" | "3650.00" | |
65 | Plant-Rich Diets | Food, Agriculture, and Land Use / Land Sinks | 78.33 | 103.11 | /solutions/plant-rich-diets | 78.33 to 103.11 | NaN | NaN | NaN | 78.33 | 103.11 | NaN | NaN | NaN | NaN | NaN | NaN | |
66 | Public Transit | Transportation | 9.42 | 15.42 | /solutions/public-transit | 9.42 to 15.42 | 0.00 | 2180.00 to 4590.00 | NaN | 9.42 | 15.42 | 0.00 | 0.00 | 2180.00 | 4590.00 | NaN | NaN | |
67 | Recycled Metals | Industry | 4.31 | 12.34 | /solutions/recycled-metals | 4.31 to 12.34 | 0.00 | -1.39 to -3.70 | NaN | 4.31 | 12.34 | 0.00 | 0.00 | -1.39 | -3.70 | NaN | NaN | |
68 | Recycled Paper | Industry | 2.28 | 2.90 | /solutions/recycled-paper | 2.28 to 2.90 | -1620.00 to -1440.00 | 0.00 | NaN | 2.28 | 2.90 | -1620.00 | -1440.00 | 0.00 | 0.00 | NaN | NaN | |
69 | Recycled Plastics | Industry | 0.52 | 1.69 | /solutions/recycled-plastics | 0.52 to 1.69 | -48.50 to -158.06 | 0.00 | NaN | 0.52 | 1.69 | -48.50 | -158.06 | 0.00 | 0.00 | NaN | NaN | |
70 | Recycling | Industry | 10.36 | 11.29 | /solutions/recycling | 10.36 to 11.29 | 9.01 to 9.69 | -41.98 to -45.84 | NaN | 10.36 | 11.29 | 9.01 | 9.69 | -41.98 | -45.84 | NaN | NaN | |
71 | Reduced Food Waste | Food, Agriculture, and Land Use / Land Sinks | 88.50 | 102.20 | /solutions/reduced-food-waste | 88.50 to 102.20 | NaN | NaN | NaN | 88.50 | 102.20 | NaN | NaN | NaN | NaN | NaN | NaN | |
72 | Reduced Plastics | Industry | 3.76 | 5.40 | /solutions/reduced-plastics | 3.76 to 5.40 | NaN | NaN | NaN | 3.76 | 5.40 | NaN | NaN | NaN | NaN | NaN | NaN | |
73 | Refrigerant Management | Industry / Buildings | 57.15 | 57.15 | /solutions/refrigerant-management | 57.15 | NaN | -622.73 | NaN | 57.15 | 57.15 | NaN | NaN | -622.73 | -622.73 | NaN | NaN | |
74 | Regenerative Annual Cropping | Food, Agriculture, and Land Use / Land Sinks | 15.12 | 23.21 | /solutions/regenerative-annual-cropping | 15.12 to 23.21 | 77.10 to 115.27 | 2340.00 to 3520.00 | 134.40 to 205.35 | 15.12 | 23.21 | 77.10 | 115.27 | 2340.00 | 3520.00 | "134.40" | "205.35" | |
75 | Seafloor Protection | Food, Agriculture, and Land Use | 3.80 | 5.14 | /solutions/seafloor-protection | 3.80 to 5.14 | NaN | NaN | NaN | 3.80 | 5.14 | NaN | NaN | NaN | NaN | NaN | NaN | |
76 | Seaweed Farming | Coastal and Ocean Sinks / Coastal and Ocean Sinks | 2.50 | 4.72 | /solutions/seaweed-farming | 2.50 to 4.72 | 132.14 to 249.80 | -4970.00 to -9400.00 | NaN | 2.50 | 4.72 | 132.14 | 249.80 | -4970.00 | -9400.00 | NaN | NaN | |
77 | Silvopasture | Land Sinks | 26.58 | 42.31 | /solutions/silvopasture | 26.58 to 42.31 | 206.75 to 272.91 | -2330.00 to -3120.00 | 1750.00 to 2360.00 | 26.58 | 42.31 | 206.75 | 272.91 | -2330.00 | -3120.00 | "1750.00" | "2360.00" | |
78 | Small Hydropower | Electricity | 1.65 | 3.21 | /solutions/small-hydropower | 1.65 to 3.21 | 44.75 to 74.21 | 301.84 to 522.64 | NaN | 1.65 | 3.21 | 44.75 | 74.21 | 301.84 | 522.64 | NaN | NaN | |
79 | Smart Thermostats | Electricity / Buildings | 6.91 | 7.25 | /solutions/smart-thermostats | 6.91 to 7.25 | 162.48 to 181.41 | 1790.00 to 2020.00 | NaN | 6.91 | 7.25 | 162.48 | 181.41 | 1790.00 | 2020.00 | NaN | NaN | |
80 | Solar Hot Water | Electricity / Buildings | 3.41 | 13.73 | /solutions/solar-hot-water | 3.41 to 13.73 | 680.00 to 2630.00 | 270.00 to 1100.00 | NaN | 3.41 | 13.73 | 680.00 | 2630.00 | 270.00 | 1100.00 | NaN | NaN | |
81 | Sustainable Intensification for Smallholders | Food, Agriculture, and Land Use / Land Sinks | 1.36 | 0.68 | /solutions/sustainable-intensification-for-smallholders | 1.36 to 0.68 | 0.00 | 148.35 to 73.62 | 344.60 to 171.05 | 1.36 | 0.68 | 0.00 | 0.00 | 148.35 | 73.62 | "344.60" | "171.05" | |
82 | System of Rice Intensification | Food, Agriculture, and Land Use / Land Sinks | 2.90 | 4.44 | /solutions/system-of-rice-intensification | 2.90 to 4.44 | 0.00 | 11.24 to 15.89 | 571.80 to 814.43 | 2.90 | 4.44 | 0.00 | 0.00 | 11.24 | 15.89 | "571.80" | "814.43" | |
83 | Telepresence | Transportation | 2.64 | 4.43 | /solutions/telepresence | 2.64 to 4.43 | 521.52 to 832.73 | 1730.00 to 2910.00 | NaN | 2.64 | 4.43 | 521.52 | 832.73 | 1730.00 | 2910.00 | NaN | NaN | |
84 | Temperate Forest Restoration | Land Sinks | 19.42 | 27.85 | /solutions/temperate-forest-restoration | 19.42 to 27.85 | NaN | NaN | NaN | 19.42 | 27.85 | NaN | NaN | NaN | NaN | NaN | NaN | |
85 | Tree Intercropping | Land Sinks | 15.03 | 24.40 | /solutions/tree-intercropping | 15.03 to 24.40 | 146.89 to 227.02 | -700.00 to -1080.00 | 262.40 to 427.81 | 15.03 | 24.40 | 146.89 | 227.02 | -700.00 | -1080.00 | "262.40" | "427.81" | |
86 | Tree Plantations (on Degraded Land) | Land Sinks | 22.04 | 35.09 | /solutions/tree-plantations-on-degraded-land | 22.04 to 35.09 | 91.89 to 141.68 | -157.74 to -243.37 | 2050.00 to 3170.00 | 22.04 | 35.09 | 91.89 | 141.68 | -157.74 | -243.37 | "2050.00" | "3170.00" | |
87 | Tropical Forest Restoration | Land Sinks | 54.45 | 85.14 | /solutions/tropical-forest-restoration | 54.45 to 85.14 | NaN | NaN | NaN | 54.45 | 85.14 | NaN | NaN | NaN | NaN | NaN | NaN | |
88 | Utility-Scale Energy Storage | Electricity | /solutions/utility-scale-energy-storage | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | |||
89 | Utility-Scale Solar Photovoltaics | Electricity | 40.83 | 111.59 | /solutions/utility-scale-solar-photovoltaics | 40.83 to 111.59 | -220.00 to -1340.00 | 12520.00 to 25560.00 | NaN | 40.83 | 111.59 | -220.00 | -1340.00 | 12520.00 | 25560.00 | NaN | NaN | |
90 | Walkable Cities | Transportation | 2.83 | 3.51 | /solutions/walkable-cities | 2.83 to 3.51 | 0.00 | 3180.00 to 3940.00 | NaN | 2.83 | 3.51 | 0.00 | 0.00 | 3180.00 | 3940.00 | NaN | NaN | |
91 | Waste to Energy | Electricity / Industry | 6.27 | 5.24 | /solutions/waste-to-energy | 6.27 to 5.24 | 224.81 to 156.08 | -79.08 to -10.32 | NaN | 6.27 | 5.24 | 224.81 | 156.08 | -79.08 | -10.32 | NaN | NaN | |
92 | Water Distribution Efficiency | Electricity | 0.61 | 0.86 | /solutions/water-distribution-efficiency | 0.61 to 0.86 | 7.87 to 10.96 | 1020.00 to 1450.00 | NaN | 0.61 | 0.86 | 7.87 | 10.96 | 1020.00 | 1450.00 | NaN | NaN |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment