Skip to content

Commit 6e43158

Browse files
Merge pull request #23 from carbonplan/s3_links
updates azure to s3
2 parents 08f8b70 + 6ef08e2 commit 6e43158

10 files changed

+196
-169
lines changed

notebooks/Figure-1.ipynb

Lines changed: 10 additions & 17 deletions
Large diffs are not rendered by default.

notebooks/Figure-3.ipynb

Lines changed: 10 additions & 17 deletions
Large diffs are not rendered by default.

notebooks/Figure-5.ipynb

Lines changed: 29 additions & 24 deletions
Large diffs are not rendered by default.

notebooks/Figure-6.ipynb

Lines changed: 34 additions & 28 deletions
Large diffs are not rendered by default.

notebooks/Inline-Statistics.ipynb

Lines changed: 52 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -16,20 +16,21 @@
1616
"metadata": {},
1717
"outputs": [],
1818
"source": [
19-
"from collections import Counter\n",
20-
"import fsspec\n",
2119
"import json\n",
2220
"import os\n",
21+
"from collections import Counter\n",
2322
"\n",
23+
"import fsspec\n",
2424
"import matplotlib.pyplot as plt\n",
2525
"import numpy as np\n",
2626
"import pandas as pd\n",
2727
"import seaborn as sns\n",
28-
"from sklearn.metrics import mean_squared_error\n",
29-
"\n",
30-
"from carbonplan_forest_offsets.analysis.project_crediting_error import get_slag_to_total_scalar\n",
28+
"from carbonplan_forest_offsets.analysis.project_crediting_error import (\n",
29+
" get_slag_to_total_scalar,\n",
30+
")\n",
3131
"from carbonplan_forest_offsets.data import cat\n",
32-
"from carbonplan_forest_offsets.load.issuance import load_issuance_table, ifm_opr_ids"
32+
"from carbonplan_forest_offsets.load.issuance import ifm_opr_ids, load_issuance_table\n",
33+
"from sklearn.metrics import mean_squared_error"
3334
]
3435
},
3536
{
@@ -133,7 +134,8 @@
133134
"subsets = {\n",
134135
" \"all\": np.tile(True, len(df)),\n",
135136
" \"all_forest\": df[\"project_type\"] == \"forest\",\n",
136-
" \"compliance_ifm\": (df[\"opr_id\"].isin(ifm_opr_ids)) & (df[\"Early Action/ Compliance\"] == \"COP\"),\n",
137+
" \"compliance_ifm\": (df[\"opr_id\"].isin(ifm_opr_ids))\n",
138+
" & (df[\"Early Action/ Compliance\"] == \"COP\"),\n",
137139
" \"non_graduated_compliance_ifms\": (df[\"opr_id\"].isin(compliance_opr_ids))\n",
138140
" & (df[\"Early Action/ Compliance\"] == \"COP\"),\n",
139141
" \"upfront_ifm\": (df[\"opr_id\"].isin(upfront_opr_ids)) & (df[\"arb_rp_id\"].isin([\"A\"])),\n",
@@ -202,7 +204,9 @@
202204
"source": [
203205
"sc_data = cat.rfia_all(assessment_area_id=297).read()\n",
204206
"\n",
205-
"sc_data = sc_data[sc_data[\"YEAR\"] == 2010].copy() # use 2010 because comporable to CP data\n",
207+
"sc_data = sc_data[\n",
208+
" sc_data[\"YEAR\"] == 2010\n",
209+
"].copy() # use 2010 because comporable to CP data\n",
206210
"\n",
207211
"\n",
208212
"sc_data[\"CARB_ACRE\"] = sc_data[\"CARB_ACRE\"] * 44 / 12 * 0.907185"
@@ -237,7 +241,9 @@
237241
"source": [
238242
"standing_carbon = {}\n",
239243
"for k, v in fortyps_of_interest.items():\n",
240-
" standing_carbon[k] = round(sc_data.loc[sc_data[\"FORTYPCD\"] == v, \"CARB_ACRE\"].item(), 1)\n",
244+
" standing_carbon[k] = round(\n",
245+
" sc_data.loc[sc_data[\"FORTYPCD\"] == v, \"CARB_ACRE\"].item(), 1\n",
246+
" )\n",
241247
"display(standing_carbon)"
242248
]
243249
},
@@ -258,7 +264,9 @@
258264
"source": [
259265
"# ak has three assessment areas but lets summarize across all to report inline value\n",
260266
"ak_assessment_areas = [285, 286, 287]\n",
261-
"ak_all = pd.concat([cat.rfia_all(assessment_area_id=aa_id).read() for aa_id in ak_assessment_areas])\n",
267+
"ak_all = pd.concat(\n",
268+
" [cat.rfia_all(assessment_area_id=aa_id).read() for aa_id in ak_assessment_areas]\n",
269+
")\n",
262270
"\n",
263271
"ak_all = ak_all[ak_all[\"YEAR\"] == 2013].copy() # 2013 to match what used in CP\n",
264272
"\n",
@@ -321,7 +329,7 @@
321329
"outputs": [],
322330
"source": [
323331
"with fsspec.open(\n",
324-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/reclassification-crediting-error.json\",\n",
332+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/reclassification-crediting-error.json\",\n",
325333
" mode=\"r\",\n",
326334
") as f:\n",
327335
" reclass_credit = json.load(f)"
@@ -340,7 +348,9 @@
340348
" ).round(1)\n",
341349
"\n",
342350
" as_frac = crediting_error / project[\"arbocs\"][\"calculated\"]\n",
343-
" print(f\"{project['opr_id']} has a {crediting_error[1]} crediting error ({as_frac[1].round(3)})\")\n",
351+
" print(\n",
352+
" f\"{project['opr_id']} has a {crediting_error[1]} crediting error ({as_frac[1].round(3)})\"\n",
353+
" )\n",
344354
" print(f\"CI: {crediting_error[0]}, {crediting_error[2]}\")\n",
345355
" print(f\"% CI: {as_frac[0].round(3)}, {as_frac[2].round(3)}\")"
346356
]
@@ -429,7 +439,7 @@
429439
"metadata": {},
430440
"outputs": [],
431441
"source": [
432-
"fn = \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/intermediate/rfia/297_by_ecosection.csv\"\n",
442+
"fn = \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/intermediate/rfia/297_by_ecosection.csv\"\n",
433443
"with fsspec.open(fn, mode=\"r\") as f:\n",
434444
" data = pd.read_csv(f)\n",
435445
"\n",
@@ -669,7 +679,7 @@
669679
"metadata": {},
670680
"outputs": [],
671681
"source": [
672-
"fn = \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/classifier_fscores.json\"\n",
682+
"fn = \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/classifier_fscores.json\"\n",
673683
"with fsspec.open(fn, mode=\"r\") as f:\n",
674684
" fscores = json.load(f)"
675685
]
@@ -886,7 +896,8 @@
886896
"projects = [\n",
887897
" x\n",
888898
" for x in db\n",
889-
" if x[\"carbon\"][\"initial_carbon_stock\"][\"value\"] > x[\"carbon\"][\"common_practice\"][\"value\"]\n",
899+
" if x[\"carbon\"][\"initial_carbon_stock\"][\"value\"]\n",
900+
" > x[\"carbon\"][\"common_practice\"][\"value\"]\n",
890901
"]"
891902
]
892903
},
@@ -937,7 +948,7 @@
937948
}
938949
],
939950
"source": [
940-
"sum((cp_df[\"baseline\"] <= cp_df[\"cp\"] * 1.05)) / len(cp_df.dropna())"
951+
"sum(cp_df[\"baseline\"] <= cp_df[\"cp\"] * 1.05) / len(cp_df.dropna())"
941952
]
942953
},
943954
{
@@ -955,7 +966,7 @@
955966
"metadata": {},
956967
"outputs": [],
957968
"source": [
958-
"fn = f\"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/common-practice-verification.json\"\n",
969+
"fn = f\"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/common-practice-verification.json\"\n",
959970
"with fsspec.open(fn, mode=\"r\") as f:\n",
960971
" cp_verification = json.load(f)"
961972
]
@@ -1000,7 +1011,9 @@
10001011
}
10011012
],
10021013
"source": [
1003-
"data = pd.DataFrame(cp_verification[\"projects\"])[[\"opr_id\", \"recalculated\", \"project_reported\"]]\n",
1014+
"data = pd.DataFrame(cp_verification[\"projects\"])[\n",
1015+
" [\"opr_id\", \"recalculated\", \"project_reported\"]\n",
1016+
"]\n",
10041017
"mean_squared_error(data[\"recalculated\"], data[\"project_reported\"]) ** 0.5"
10051018
]
10061019
},
@@ -1011,7 +1024,9 @@
10111024
"metadata": {},
10121025
"outputs": [],
10131026
"source": [
1014-
"data[\"diff\"] = (data[\"recalculated\"] - data[\"project_reported\"]) / (data[\"project_reported\"])\n",
1027+
"data[\"diff\"] = (data[\"recalculated\"] - data[\"project_reported\"]) / (\n",
1028+
" data[\"project_reported\"]\n",
1029+
")\n",
10151030
"data = data[np.isfinite(data[\"diff\"])] # CAR1186 = infite bc original CP = 0."
10161031
]
10171032
},
@@ -1182,13 +1197,15 @@
11821197
"metadata": {},
11831198
"outputs": [],
11841199
"source": [
1185-
"fn = \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/reclassification-crediting-error.json\"\n",
1200+
"fn = \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/reclassification-crediting-error.json\"\n",
11861201
"with fsspec.open(fn, mode=\"r\") as f:\n",
11871202
" crediting_error = json.load(f)\n",
11881203
"\n",
11891204
"crediting_df = pd.DataFrame({k: v[\"delta_arbocs\"] for k, v in crediting_error.items()})\n",
11901205
"\n",
1191-
"median_crediting_error = {k: np.median(v[\"delta_arbocs\"]) for k, v in crediting_error.items()}"
1206+
"median_crediting_error = {\n",
1207+
" k: np.median(v[\"delta_arbocs\"]) for k, v in crediting_error.items()\n",
1208+
"}"
11921209
]
11931210
},
11941211
{
@@ -1199,7 +1216,10 @@
11991216
"outputs": [],
12001217
"source": [
12011218
"tp = pd.concat(\n",
1202-
" [pd.Series(median_crediting_error).rename(\"crediting_error\"), error_cp0.rename(\"cp\")],\n",
1219+
" [\n",
1220+
" pd.Series(median_crediting_error).rename(\"crediting_error\"),\n",
1221+
" error_cp0.rename(\"cp\"),\n",
1222+
" ],\n",
12031223
" axis=1,\n",
12041224
")"
12051225
]
@@ -1332,7 +1352,9 @@
13321352
"outputs": [],
13331353
"source": [
13341354
"ak_assessment_areas = [285, 286, 287]\n",
1335-
"ak_all = pd.concat([cat.rfia_all(assessment_area_id=aa_id).read() for aa_id in ak_assessment_areas])"
1355+
"ak_all = pd.concat(\n",
1356+
" [cat.rfia_all(assessment_area_id=aa_id).read() for aa_id in ak_assessment_areas]\n",
1357+
")"
13361358
]
13371359
},
13381360
{
@@ -1388,7 +1410,13 @@
13881410
}
13891411
],
13901412
"source": [
1391-
"sum([project[\"arbocs\"][\"issuance\"] for project in db if 287 in project[\"supersection_ids\"]])"
1413+
"sum(\n",
1414+
" [\n",
1415+
" project[\"arbocs\"][\"issuance\"]\n",
1416+
" for project in db\n",
1417+
" if 287 in project[\"supersection_ids\"]\n",
1418+
" ]\n",
1419+
")"
13921420
]
13931421
},
13941422
{

notebooks/Statistics.ipynb

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,12 @@
77
"metadata": {},
88
"outputs": [],
99
"source": [
10+
"import json\n",
1011
"import os\n",
12+
"\n",
1113
"import fsspec\n",
12-
"import json\n",
13-
"import pandas as pd\n",
14-
"import numpy as np"
14+
"import numpy as np\n",
15+
"import pandas as pd"
1516
]
1617
},
1718
{
@@ -38,13 +39,13 @@
3839
"outputs": [],
3940
"source": [
4041
"with fsspec.open(\n",
41-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/reclassification-crediting-error.json\",\n",
42+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/reclassification-crediting-error.json\",\n",
4243
" \"r\",\n",
4344
") as f:\n",
4445
" data = json.load(f)\n",
4546
"\n",
4647
"with fsspec.open(\n",
47-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/database/forest-offsets-database-v1.0.json\",\n",
48+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/database/forest-offsets-database-v1.0.json\",\n",
4849
" \"r\",\n",
4950
") as f:\n",
5051
" db = json.load(f)\n",
@@ -112,8 +113,10 @@
112113
"metadata": {},
113114
"outputs": [],
114115
"source": [
115-
"def format_si(num, precision=1, suffixes=[\"\", \"K\", \"M\", \"G\", \"T\", \"P\"], hide_suffix=False):\n",
116-
" m = sum([abs(num / 1000.0 ** x) >= 1 for x in range(1, len(suffixes))])\n",
116+
"def format_si(\n",
117+
" num, precision=1, suffixes=[\"\", \"K\", \"M\", \"G\", \"T\", \"P\"], hide_suffix=False\n",
118+
"):\n",
119+
" m = sum([abs(num / 1000.0**x) >= 1 for x in range(1, len(suffixes))])\n",
117120
" if hide_suffix:\n",
118121
" return f\"{num/1000.0**m:.{precision}f}\"\n",
119122
" else:\n",
@@ -252,7 +255,9 @@
252255
}
253256
],
254257
"source": [
255-
"condition = lambda x: \"Finite Carbon\" in x[\"developers\"] or \"Finite Carbon\" in x[\"owners\"]\n",
258+
"condition = (\n",
259+
" lambda x: \"Finite Carbon\" in x[\"developers\"] or \"Finite Carbon\" in x[\"owners\"]\n",
260+
")\n",
256261
"get_overcrediting(condition=condition, percentage=True, display=True)"
257262
]
258263
},
@@ -315,7 +320,9 @@
315320
"df = pd.DataFrame()\n",
316321
"df[\"Developer\"] = developers\n",
317322
"results = [\n",
318-
" get_overcrediting(condition=lambda x: d in x[\"developers\"] or d in x[\"owners\"], percentage=True)\n",
323+
" get_overcrediting(\n",
324+
" condition=lambda x: d in x[\"developers\"] or d in x[\"owners\"], percentage=True\n",
325+
" )\n",
319326
" for d in developers\n",
320327
"]\n",
321328
"df[\"Count\"] = [d[\"count\"] for d in results]\n",

notebooks/Supplementary-Figure-1.ipynb

Lines changed: 16 additions & 19 deletions
Large diffs are not rendered by default.

notebooks/Supplementary-Figure-2.ipynb

Lines changed: 9 additions & 16 deletions
Large diffs are not rendered by default.

notebooks/Supplementary-Table-1.ipynb

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@
1515
"metadata": {},
1616
"outputs": [],
1717
"source": [
18+
"import json\n",
1819
"import os\n",
20+
"import random\n",
21+
"\n",
1922
"import fsspec\n",
20-
"import json\n",
21-
"import pandas as pd\n",
23+
"import matplotlib.pyplot as plt\n",
2224
"import numpy as np\n",
23-
"import random\n",
24-
"import matplotlib.pyplot as plt"
25+
"import pandas as pd"
2526
]
2627
},
2728
{
@@ -34,13 +35,13 @@
3435
},
3536
{
3637
"cell_type": "code",
37-
"execution_count": 2,
38+
"execution_count": null,
3839
"id": "700c2753",
3940
"metadata": {},
4041
"outputs": [],
4142
"source": [
4243
"with fsspec.open(\n",
43-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/classifier_fscores.json\",\n",
44+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/classifier_fscores.json\",\n",
4445
" \"r\",\n",
4546
") as f:\n",
4647
" data = json.load(f)"

notebooks/Supplementary-Table-2.ipynb

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@
1515
"metadata": {},
1616
"outputs": [],
1717
"source": [
18+
"import json\n",
1819
"import os\n",
20+
"import random\n",
21+
"\n",
1922
"import fsspec\n",
20-
"import json\n",
21-
"import pandas as pd\n",
23+
"import matplotlib.pyplot as plt\n",
2224
"import numpy as np\n",
23-
"import random\n",
24-
"import matplotlib.pyplot as plt"
25+
"import pandas as pd"
2526
]
2627
},
2728
{
@@ -34,27 +35,27 @@
3435
},
3536
{
3637
"cell_type": "code",
37-
"execution_count": 2,
38+
"execution_count": null,
3839
"id": "d4950531",
3940
"metadata": {},
4041
"outputs": [],
4142
"source": [
4243
"with fsspec.open(\n",
43-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/reclassification-labels.json\",\n",
44+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/reclassification-labels.json\",\n",
4445
" \"r\",\n",
4546
") as f:\n",
4647
" data = json.load(f)"
4748
]
4849
},
4950
{
5051
"cell_type": "code",
51-
"execution_count": 3,
52+
"execution_count": null,
5253
"id": "d85ce3ac",
5354
"metadata": {},
5455
"outputs": [],
5556
"source": [
5657
"with fsspec.open(\n",
57-
" \"https://carbonplan.blob.core.windows.net/carbonplan-forests/offsets/archive/results/reclassification-crediting-error.json\",\n",
58+
" \"https://carbonplan-forests.s3.us-west-2.amazonaws.com/offsets/archive/results/reclassification-crediting-error.json\",\n",
5859
" \"r\",\n",
5960
") as f:\n",
6061
" analysis = json.load(f)"
@@ -90,7 +91,10 @@
9091
"]\n",
9192
"df[\"Classification\"] = [\n",
9293
" \"\\n\".join(\n",
93-
" [str(s[0]).capitalize() + \" : \" + \"%.1f\" % (s[1] * 100) + \"%\" for s in d[\"classification\"]]\n",
94+
" [\n",
95+
" str(s[0]).capitalize() + \" : \" + \"%.1f\" % (s[1] * 100) + \"%\"\n",
96+
" for s in d[\"classification\"]\n",
97+
" ]\n",
9498
" )\n",
9599
" for d in data\n",
96100
"]"

0 commit comments

Comments
 (0)