diff --git a/01 Working with excel.ipynb b/01 Working with excel.ipynb
index 2c6e5db..7dee58b 100644
--- a/01 Working with excel.ipynb
+++ b/01 Working with excel.ipynb
@@ -2,17 +2,15 @@
"cells": [
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": 1,
"metadata": {
"collapsed": false,
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"import pandas as pd # for data analysis\n",
- "import xlrd # read, format Excel xls files\n",
"import openpyxl # read, write Excel xlsx/xlsm files\n",
"\n",
"import matplotlib.pyplot as plt # data visualization\n",
@@ -22,12 +20,11 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": 2,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"%load_ext autoreload\n",
"%autoreload 2"
@@ -66,22 +63,30 @@
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": 3,
"metadata": {
"collapsed": false,
"hideCode": false,
"hidePrompt": false
},
"outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\tools\\miniconda3\\lib\\site-packages\\openpyxl\\styles\\stylesheet.py:226: UserWarning: Workbook contains no default style, apply openpyxl's default\n",
+ " warn(\"Workbook contains no default style, apply openpyxl's default\")\n"
+ ]
+ }
],
"source": [
- "file = \"data/env_wasgen.xls\"\n",
- "book = xlrd.open_workbook(file, on_demand=True) # \"on_demand\" saves memory and time by loading only those sheets that the caller is interested in, and releasing sheets when no longer required."
+ "file = \"data/env_wasgen_new.xlsx\"\n",
+ "book = openpyxl.load_workbook(file, data_only=True)"
]
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 10,
"metadata": {
"collapsed": false,
"hideCode": false,
@@ -92,42 +97,41 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "The number of worksheets is 660\n",
+ "The number of worksheets is 62\n",
"Worksheet name(s):\n"
]
},
{
"data": {
"text/plain": [
- "(660,\n",
- " ['Data',\n",
- " 'Data2',\n",
- " 'Data3',\n",
- " 'Data4',\n",
- " 'Data5',\n",
- " 'Data6',\n",
- " 'Data7',\n",
- " 'Data8',\n",
- " 'Data9',\n",
- " 'Data10'])"
+ "(62,\n",
+ " ['Summary',\n",
+ " 'Structure',\n",
+ " 'Sheet 1',\n",
+ " 'Sheet 2',\n",
+ " 'Sheet 3',\n",
+ " 'Sheet 4',\n",
+ " 'Sheet 5',\n",
+ " 'Sheet 6',\n",
+ " 'Sheet 7',\n",
+ " 'Sheet 8'])"
]
},
- "execution_count": 6,
- "metadata": {
- },
+ "execution_count": 10,
+ "metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "print(f\"The number of worksheets is {book.nsheets}\")\n",
+ "print(f\"The number of worksheets is {len(book.worksheets)}\")\n",
"\n",
"print(\"Worksheet name(s):\")\n",
- "len(book.sheet_names()), book.sheet_names()[:10]"
+ "len(book.sheetnames), book.sheetnames[:10]"
]
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": 25,
"metadata": {
"collapsed": false,
"hideCode": false,
@@ -138,27 +142,23 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Sheet name: Data, nrows: 55, ncols: 10\n",
- "Sheet name: Data2, nrows: 55, ncols: 10\n",
- "Cell A1: ('Generation of waste by waste category, hazardousness and NACE Rev. 2 activity [env_wasgen]', 1)\n"
+ "Sheet name: Summary, dimensions: A1:O75\n",
+ "Cell A1: ('General', None, 'n')\n"
]
}
],
"source": [
- "sh = book.sheet_by_index(0)\n",
- "\n",
- "print(f\"Sheet name: {sh.name}, nrows: {sh.nrows}, ncols: {sh.ncols}\")\n",
+ "sh = book[book.sheetnames[0]]\n",
"\n",
- "sh = book.sheet_by_name(\"Data2\")\n",
+ "print(f\"Sheet name: {sh.title}, dimensions: {sh.dimensions}\")\n",
"\n",
- "print(f\"Sheet name: {sh.name}, nrows: {sh.nrows}, ncols: {sh.ncols}\")\n",
- "\n",
- "print(f\"Cell A1: {sh.cell_value(rowx=0, colx=0), sh.cell_type(rowx=0, colx=0)}\")"
+ "cell_A1 = sh.cell(row=1, column=1)\n",
+ "print(f\"Cell A1: {cell_A1.number_format, cell_A1.value, cell_A1.data_type}\")"
]
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 30,
"metadata": {
"collapsed": false,
"hideCode": false,
@@ -169,35 +169,84 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "['Generation of waste by waste category, hazardousness and NACE Rev. 2 activity [env_wasgen]', '', '', '', '', '', '', '', '', '']\n",
- "['', '', '', '', '', '', '', '', '', '']\n",
- "['Last update', 44316.50739583334, '', '', '', '', '', '', '', '']\n",
- "['Extracted on', 44347.90493962963, '', '', '', '', '', '', '', '']\n",
- "['Source of data', 'Eurostat', '', '', '', '', '', '', '', '']\n",
- "['', '', '', '', '', '', '', '', '', '']\n",
- "['UNIT', 'KG_HAB - Kilograms per capita', '', '', '', '', '', '', '', '']\n",
- "['HAZARD', 'HAZ_NHAZ - Hazardous and non-hazardous - Total', '', '', '', '', '', '', '', '']\n",
- "['WASTE', 'TOTAL - Total waste', '', '', '', '', '', '', '', '']\n",
- "['NACE_R2', 'A - Agriculture, forestry and fishing', '', '', '', '', '', '', '', '']\n",
- "['', '', '', '', '', '', '', '', '', '']\n",
- "['GEO', 'GEO(L)/TIME', '2004', '2006', '2008', '2010', '2012', '2014', '2016', '2018']\n",
- "['EU27_2020', 'European Union - 27 countries (from 2020)', 146.0, 131.0, 104.0, 47.0, 47.0, 41.0, 45.0, 45.0]\n",
- "['EU28', 'European Union - 28 countries (2013-2020)', 130.0, 116.0, 93.0, 42.0, 42.0, 37.0, 41.0, 41.0]\n",
- "['BE', 'Belgium', 114.0, 34.0, 27.0, 21.0, 15.0, 28.0, 24.0, 39.0]\n",
- "['BG', 'Bulgaria', 94.0, 83.0, 101.0, 84.0, 124.0, 116.0, 87.0, 44.0]\n",
- "['CZ', 'Czechia', 122.0, 31.0, 25.0, 11.0, 19.0, 13.0, 11.0, 39.0]\n",
- "['DK', 'Denmark', 4.0, 5.0, 7.0, 34.0, 13.0, 21.0, 35.0, 65.0]\n",
- "['DE', 'Germany (until 1990 former territory of the FRG)', 15.0, 18.0, 16.0, 3.0, 8.0, 5.0, 14.0, 12.0]\n",
- "['EE', 'Estonia', 135.0, 88.0, 179.0, 83.0, 59.0, 93.0, 87.0, 105.0]\n"
+ "('Generation of waste by waste category, hazardousness and NACE Rev. 2 activity [ENV_WASGEN__custom_3738744]', None, None, None, None, None, None, None, None, None, None, None, None, None, None)\n",
+ "('Open product page', 'Open in Data Browser', None, None, None, None, None, None, None, None, None, None, None, None, None)\n",
+ "('Description: ', '-', None, None, None, None, None, None, None, None, None, None, None, None, None)\n",
+ "('Last update of data: ', None, None, '13/09/2022 11:00', None, None, None, None, None, None, None, None, None, None, None)\n",
+ "('Last change of data structure: ', None, None, '13/09/2022 11:00', None, None, None, None, None, None, None, None, None, None, None)\n",
+ "(None, 'Institutional source(s)', None, None, None, None, None, None, None, None, None, None, None, None, None)\n",
+ "(None, None, 'Eurostat', None, None, None, None, None, None, None, None, None, None, None, None)\n",
+ "(None, 'Contents', 'Time frequency [FREQ]', 'Unit of measure [UNIT]', 'Hazard class [HAZARD]', 'Statistical classification of economic activities in the European Community (NACE Rev. 2) [NACE_R2]', 'Waste categories [WASTE]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 1', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 2', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 3', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 4', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 5', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 6', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 7', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 8', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 9', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 10', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 11', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 12', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 13', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 14', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 15', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 16', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 17', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 18', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 19', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 20', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Hazardous [HAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 21', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 22', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 23', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 24', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 25', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 26', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Sheet 27', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 28', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 29', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 30', 'Annual [A]', 'Kilograms per capita [KG_HAB]', 'Non-hazardous [NHAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 31', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 32', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 33', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 34', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 35', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 36', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 37', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 38', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 39', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 40', 'Annual [A]', 'Tonne [T]', 'Hazardous and non-hazardous - Total [HAZ_NHAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 41', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 42', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 43', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 44', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 45', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 46', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 47', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 48', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 49', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 50', 'Annual [A]', 'Tonne [T]', 'Hazardous [HAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 51', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Agriculture, forestry and fishing [A]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 52', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Mining and quarrying [B]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 53', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Manufacturing [C]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 54', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Electricity, gas, steam and air conditioning supply [D]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 55', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Water supply; sewerage, waste management and remediation activities [E]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 56', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Construction [F]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 57', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Services (except wholesale of waste and scrap) [G-U_X_G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 58', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Wholesale of waste and scrap [G4677]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 59', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'Households [EP_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n",
+ "(None, 'Feuille 60', 'Annual [A]', 'Tonne [T]', 'Non-hazardous [NHAZ]', 'All NACE activities plus households [TOTAL_HH]', 'Total waste [TOTAL]', None, None, None, None, None, None, None, None)\n"
]
}
],
"source": [
- "sh = book.sheet_by_index(0)\n",
+ "sh = book[book.sheetnames[0]]\n",
"\n",
"# get rows of the sheet\n",
- "for rx in range(20):\n",
- " print(sh.row_values(rx))"
+ "for row in sh.iter_rows(values_only=True):\n",
+ " if any(v is not None for v in row):\n",
+ " print(row)"
]
},
{
@@ -221,7 +270,7 @@
"\n",
"What is [NACE_R2](https://ec.europa.eu/eurostat/web/nace-rev2)?\n",
"\n",
- "> NACE ist das Akronym3 zur Bezeichnung der verschiedenen statistischen Systematiken der Wirtschaftszweige, die seit\n",
+ "> NACE ist das Akronym zur Bezeichnung der verschiedenen statistischen Systematiken der Wirtschaftszweige, die seit\n",
"1970 in der Europäischen Union entwickelt worden sind. Die NACE bildet den Rahmen für die Sammlung und Darstellung\n",
"einer breiten Palette statistischer, nach Wirtschaftszweigen untergliederter Daten aus dem Bereich Wirtschaft\n",
"(z. B. Produktion, Beschäftigung, Volkswirtschaftliche Gesamtrechnungen) und aus anderen Bereichen."
@@ -235,8 +284,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"from collections import defaultdict # why defaultdict? Cause if key is not found in the dictionary, then instead of KeyError, a new entry is created\n",
" # by declaration: list, set or int\n",
@@ -293,8 +341,7 @@
]
},
"execution_count": 10,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -310,8 +357,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"codes = {k: {s.split(\" - \")[0]: s.split(\" - \")[1] for s in v} for k,v in header.items()}"
]
@@ -356,8 +402,7 @@
]
},
"execution_count": 14,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -373,8 +418,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"def print_codes():\n",
" for k,v in codes.items():\n",
@@ -463,8 +507,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"file = \"data/env_wasgen.xls\"\n",
"df = pd.read_excel(file)"
@@ -1390,8 +1433,7 @@
]
},
"execution_count": 14,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -1407,8 +1449,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = pd.read_excel(file, header=11, nrows=40)"
]
@@ -2068,8 +2109,7 @@
]
},
"execution_count": 16,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -2146,8 +2186,7 @@
]
},
"execution_count": 17,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -2847,8 +2886,7 @@
]
},
"execution_count": 19,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -2900,8 +2938,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"def get_data_from_sheet(excel_file: str, header: tuple) -> pd.DataFrame:\n",
" book = xlrd.open_workbook(file, on_demand=True)\n",
@@ -2988,8 +3025,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = get_data_from_sheet(file, (\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"A\"))"
]
@@ -3536,8 +3572,7 @@
]
},
"execution_count": 24,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -3572,8 +3607,7 @@
]
},
"execution_count": 25,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
},
{
@@ -3614,8 +3648,7 @@
]
},
"execution_count": 26,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
},
{
@@ -3656,8 +3689,7 @@
]
},
"execution_count": 27,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
},
{
@@ -3922,10 +3954,8 @@
]
},
"execution_count": 27,
- "metadata": {
- },
- "output_type": "execute_result",
- "start": 0
+ "metadata": {},
+ "output_type": "execute_result"
}
],
"source": [
@@ -3943,11 +3973,42 @@
"outputs": [
{
"data": {
- "text/html": "\n
\n\n \n\n"
+ "text/html": [
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ "\n",
+ ""
+ ]
},
"execution_count": 28,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -3964,8 +4025,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = get_data_from_sheet(file, (\"T\", \"HAZ_NHAZ\", \"TOTAL\", \"A\"))"
]
@@ -3981,11 +4041,42 @@
"outputs": [
{
"data": {
- "text/html": "\n\n\n \n\n"
+ "text/html": [
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ "\n",
+ ""
+ ]
},
"execution_count": 30,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -4591,8 +4682,7 @@
]
},
"execution_count": 31,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -4737,10 +4827,8 @@
]
},
"execution_count": 32,
- "metadata": {
- },
- "output_type": "execute_result",
- "start": 0
+ "metadata": {},
+ "output_type": "execute_result"
}
],
"source": [
@@ -4866,8 +4954,7 @@
]
},
"execution_count": 32,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -4883,8 +4970,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = get_data_from_sheet(file, (\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"A\"))\n",
"df = df.reset_index().melt(id_vars=\"GEO\", var_name=\"year\", value_name=\"value\")\n",
@@ -5065,8 +5151,7 @@
]
},
"execution_count": 34,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -5120,11 +5205,42 @@
"outputs": [
{
"data": {
- "text/html": "\n\n\n \n\n"
+ "text/html": [
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ "\n",
+ ""
+ ]
},
"execution_count": 36,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -5186,8 +5302,7 @@
]
},
"execution_count": 55,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -5206,11 +5321,42 @@
"outputs": [
{
"data": {
- "text/html": "\n\n\n \n\n"
+ "text/html": [
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ "\n",
+ ""
+ ]
},
"execution_count": 58,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -5707,8 +5853,7 @@
]
},
"execution_count": 40,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -5733,8 +5878,7 @@
]
},
"execution_count": 41,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
},
{
@@ -5780,8 +5924,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df1 = get_data_from_sheet(file, (\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"A\"))\n",
"df1 = df1.reset_index().melt(id_vars=\"GEO\", var_name=\"year\", value_name=\"value\")\n",
@@ -5967,8 +6110,7 @@
]
},
"execution_count": 60,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -6149,8 +6291,7 @@
]
},
"execution_count": 61,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -6166,8 +6307,7 @@
"hideCode": false,
"hidePrompt": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = df1.append(df2)"
]
@@ -6345,8 +6485,7 @@
]
},
"execution_count": 63,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -6365,11 +6504,42 @@
"outputs": [
{
"data": {
- "text/html": "\n\n\n \n\n"
+ "text/html": [
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ "\n",
+ ""
+ ]
},
"execution_count": 64,
- "metadata": {
- },
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -6394,31 +6564,29 @@
},
{
"cell_type": "code",
- "execution_count": 72,
+ "execution_count": 4,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"from utils import *"
]
},
{
"cell_type": "code",
- "execution_count": 74,
+ "execution_count": 5,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
- "file = \"data/env_wasgen.xls\""
+ "file = \"data/env_wasgen_new.xlsx\""
]
},
{
"cell_type": "code",
- "execution_count": 75,
+ "execution_count": 6,
"metadata": {
"collapsed": false
},
@@ -6427,43 +6595,80 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Category: UNIT\n",
+ "Category: freq\n",
+ "---------\n",
+ "A: Annual\n",
+ "\n",
+ "Category: unit\n",
"---------\n",
"T: Tonne\n",
- "KG_HAB: Kilograms per capita\n",
"\n",
- "Category: HAZARD\n",
+ "Category: hazard\n",
"---------\n",
- "HAZ: Hazardous\n",
- "HAZ_NHAZ: Hazardous and non-hazardous\n",
- "NHAZ: Non-hazardous\n",
+ "HAZ_NHAZ: Hazardous and non-hazardous - Total\n",
"\n",
- "Category: WASTE\n",
+ "Category: nace_r2\n",
+ "---------\n",
+ "TOTAL_HH: All NACE activities plus households\n",
+ "\n",
+ "Category: waste\n",
"---------\n",
- "W09: Animal and vegetal wastes (subtotal, W091+W092+W093)\n",
- "SEC: Secondary waste (W033+W103+W128_13)\n",
- "TOT_X_MIN: Waste excluding major mineral wastes\n",
- "W06_07A: Recyclable wastes (subtotal, W06+W07 except W077)\n",
- "PRIM: Primary waste (TOTAL minus SEC)\n",
- "W11: Common sludges\n",
- "W10: Mixed ordinary wastes (subtotal, W101+W102+W103)\n",
"TOTAL: Total waste\n",
- "W01-05: Chemical and medical wastes (subtotal)\n",
- "W12-13: Mineral and solidified wastes (subtotal)\n",
- "W077_08: Equipment (subtotal, W077+W08A+W081+W0841)\n",
"\n",
- "Category: NACE_R2\n",
+ "Category: geo\n",
"---------\n",
- "EP_HH: Households\n",
- "B: Mining and quarrying\n",
- "A: Agriculture, forestry and fishing\n",
- "C: Manufacturing\n",
- "G4677: Wholesale of waste and scrap\n",
- "F: Construction\n",
- "TOTAL_HH: All NACE activities plus households\n",
- "D: Electricity, gas, steam and air conditioning supply\n",
- "G-U_X_G4677: Services (except wholesale of waste and scrap)\n",
- "E: Water supply; sewerage, waste management and remediation activities\n",
+ "EU27_2020: European Union - 27 countries (from 2020)\n",
+ "EU28: European Union - 28 countries (2013-2020)\n",
+ "BE: Belgium\n",
+ "BG: Bulgaria\n",
+ "CZ: Czechia\n",
+ "DK: Denmark\n",
+ "DE: Germany (until 1990 former territory of the FRG)\n",
+ "EE: Estonia\n",
+ "IE: Ireland\n",
+ "EL: Greece\n",
+ "ES: Spain\n",
+ "FR: France\n",
+ "HR: Croatia\n",
+ "IT: Italy\n",
+ "CY: Cyprus\n",
+ "LV: Latvia\n",
+ "LT: Lithuania\n",
+ "LU: Luxembourg\n",
+ "HU: Hungary\n",
+ "MT: Malta\n",
+ "NL: Netherlands\n",
+ "AT: Austria\n",
+ "PL: Poland\n",
+ "PT: Portugal\n",
+ "RO: Romania\n",
+ "SI: Slovenia\n",
+ "SK: Slovakia\n",
+ "FI: Finland\n",
+ "SE: Sweden\n",
+ "IS: Iceland\n",
+ "LI: Liechtenstein\n",
+ "NO: Norway\n",
+ "UK: United Kingdom\n",
+ "ME: Montenegro\n",
+ "MK: North Macedonia\n",
+ "AL: Albania\n",
+ "RS: Serbia\n",
+ "TR: Türkiye\n",
+ "BA: Bosnia and Herzegovina\n",
+ "XK: Kosovo (under United Nations Security Council Resolution 1244/99)\n",
+ "\n",
+ "Category: time\n",
+ "---------\n",
+ "2004: 2004\n",
+ "2006: 2006\n",
+ "2008: 2008\n",
+ "2010: 2010\n",
+ "2012: 2012\n",
+ "2014: 2014\n",
+ "2016: 2016\n",
+ "2018: 2018\n",
+ "2020: 2020\n",
"\n"
]
}
@@ -6474,19 +6679,18 @@
},
{
"cell_type": "code",
- "execution_count": 84,
+ "execution_count": 38,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
- "df = get_data_from_excel(file, [(\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"A\")])"
+ "df = get_data_from_excel(file, [(\"KG_HAB\", \"HAZ_NHAZ\", \"A\", \"TOTAL\")])"
]
},
{
"cell_type": "code",
- "execution_count": 85,
+ "execution_count": 39,
"metadata": {
"collapsed": false
},
@@ -6516,8 +6720,8 @@
" value | \n",
" unit | \n",
" hazard | \n",
- " waste | \n",
" nace_r2 | \n",
+ " waste | \n",
" \n",
" \n",
" geo | \n",
@@ -6536,8 +6740,8 @@
" 146.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" EU28 | \n",
@@ -6545,8 +6749,8 @@
" 130.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BE | \n",
@@ -6554,8 +6758,8 @@
" 114.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BG | \n",
@@ -6563,8 +6767,8 @@
" 94.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" CZ | \n",
@@ -6572,8 +6776,8 @@
" 122.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" ... | \n",
@@ -6586,75 +6790,74 @@
"
\n",
" \n",
" AL | \n",
- " 2018 | \n",
+ " 2020 | \n",
" NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" RS | \n",
- " 2018 | \n",
- " 12.0 | \n",
+ " 2020 | \n",
+ " 13.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" TR | \n",
- " 2018 | \n",
+ " 2020 | \n",
" 0.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BA | \n",
- " 2018 | \n",
- " 0.0 | \n",
+ " 2020 | \n",
+ " NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" XK | \n",
- " 2018 | \n",
+ " 2020 | \n",
" NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
"\n",
- "320 rows × 6 columns
\n",
+ "360 rows × 6 columns
\n",
""
],
"text/plain": [
- " year value unit hazard waste nace_r2\n",
+ " year value unit hazard nace_r2 waste\n",
"geo \n",
- "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "EU28 2004 130.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BE 2004 114.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BG 2004 94.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "CZ 2004 122.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "... ... ... ... ... ... ...\n",
- "AL 2018 NaN KG_HAB HAZ_NHAZ TOTAL A\n",
- "RS 2018 12.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "TR 2018 0.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BA 2018 0.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "XK 2018 NaN KG_HAB HAZ_NHAZ TOTAL A\n",
+ "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "EU28 2004 130.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BE 2004 114.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BG 2004 94.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "CZ 2004 122.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "... ... ... ... ... ... ...\n",
+ "AL 2020 NaN KG_HAB HAZ_NHAZ A TOTAL\n",
+ "RS 2020 13.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "TR 2020 0.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BA 2020 NaN KG_HAB HAZ_NHAZ A TOTAL\n",
+ "XK 2020 NaN KG_HAB HAZ_NHAZ A TOTAL\n",
"\n",
- "[320 rows x 6 columns]"
+ "[360 rows x 6 columns]"
]
},
- "execution_count": 85,
- "metadata": {
- },
+ "execution_count": 39,
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -6664,7 +6867,7 @@
},
{
"cell_type": "code",
- "execution_count": 86,
+ "execution_count": 40,
"metadata": {
"collapsed": false
},
@@ -6674,18 +6877,18 @@
"output_type": "stream",
"text": [
"\n",
- "CategoricalIndex: 320 entries, EU27_2020 to XK\n",
+ "CategoricalIndex: 360 entries, EU27_2020 to XK\n",
"Data columns (total 6 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
- " 0 year 320 non-null int64 \n",
- " 1 value 287 non-null float64 \n",
- " 2 unit 320 non-null category\n",
- " 3 hazard 320 non-null category\n",
- " 4 waste 320 non-null category\n",
- " 5 nace_r2 320 non-null category\n",
- "dtypes: category(4), float64(1), int64(1)\n",
- "memory usage: 8.4 KB\n"
+ " 0 year 360 non-null int32 \n",
+ " 1 value 321 non-null float64 \n",
+ " 2 unit 360 non-null category\n",
+ " 3 hazard 360 non-null category\n",
+ " 4 nace_r2 360 non-null category\n",
+ " 5 waste 360 non-null category\n",
+ "dtypes: category(4), float64(1), int32(1)\n",
+ "memory usage: 7.8 KB\n"
]
}
],
@@ -6695,11 +6898,19 @@
},
{
"cell_type": "code",
- "execution_count": 87,
+ "execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\tools\\miniconda3\\lib\\site-packages\\openpyxl\\styles\\stylesheet.py:226: UserWarning: Workbook contains no default style, apply openpyxl's default\n",
+ " warn(\"Workbook contains no default style, apply openpyxl's default\")\n"
+ ]
+ },
{
"data": {
"text/html": [
@@ -6725,8 +6936,8 @@
" value | \n",
" unit | \n",
" hazard | \n",
- " waste | \n",
" nace_r2 | \n",
+ " waste | \n",
" \n",
" \n",
" geo | \n",
@@ -6745,8 +6956,8 @@
" 146.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" EU28 | \n",
@@ -6754,8 +6965,8 @@
" 130.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BE | \n",
@@ -6763,8 +6974,8 @@
" 114.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BG | \n",
@@ -6772,8 +6983,8 @@
" 94.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" CZ | \n",
@@ -6781,8 +6992,8 @@
" 122.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" ... | \n",
@@ -6795,90 +7006,97 @@
"
\n",
" \n",
" AL | \n",
- " 2018 | \n",
+ " 2020 | \n",
" NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" B | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" RS | \n",
- " 2018 | \n",
- " 5532.0 | \n",
+ " 2020 | \n",
+ " 6626.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" B | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" TR | \n",
- " 2018 | \n",
- " 214.0 | \n",
+ " 2020 | \n",
+ " 331.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" B | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BA | \n",
- " 2018 | \n",
- " 158.0 | \n",
+ " 2020 | \n",
+ " NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" B | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" XK | \n",
- " 2018 | \n",
+ " 2020 | \n",
" NaN | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" B | \n",
+ " TOTAL | \n",
"
\n",
" \n",
"\n",
- "640 rows × 6 columns
\n",
+ "720 rows × 6 columns
\n",
""
],
"text/plain": [
- " year value unit hazard waste nace_r2\n",
+ " year value unit hazard nace_r2 waste\n",
"geo \n",
- "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "EU28 2004 130.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BE 2004 114.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BG 2004 94.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "CZ 2004 122.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "... ... ... ... ... ... ...\n",
- "AL 2018 NaN KG_HAB HAZ_NHAZ TOTAL B\n",
- "RS 2018 5532.0 KG_HAB HAZ_NHAZ TOTAL B\n",
- "TR 2018 214.0 KG_HAB HAZ_NHAZ TOTAL B\n",
- "BA 2018 158.0 KG_HAB HAZ_NHAZ TOTAL B\n",
- "XK 2018 NaN KG_HAB HAZ_NHAZ TOTAL B\n",
+ "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "EU28 2004 130.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BE 2004 114.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BG 2004 94.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "CZ 2004 122.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "... ... ... ... ... ... ...\n",
+ "AL 2020 NaN KG_HAB HAZ_NHAZ B TOTAL\n",
+ "RS 2020 6626.0 KG_HAB HAZ_NHAZ B TOTAL\n",
+ "TR 2020 331.0 KG_HAB HAZ_NHAZ B TOTAL\n",
+ "BA 2020 NaN KG_HAB HAZ_NHAZ B TOTAL\n",
+ "XK 2020 NaN KG_HAB HAZ_NHAZ B TOTAL\n",
"\n",
- "[640 rows x 6 columns]"
+ "[720 rows x 6 columns]"
]
},
- "execution_count": 87,
- "metadata": {
- },
+ "execution_count": 41,
+ "metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "df = get_data_from_excel(file, [(\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"A\"), (\"KG_HAB\", \"HAZ_NHAZ\", \"TOTAL\", \"B\")])\n",
+ "df = get_data_from_excel(file, [(\"KG_HAB\", \"HAZ_NHAZ\", \"A\", \"TOTAL\"), (\"KG_HAB\", \"HAZ_NHAZ\", \"B\", \"TOTAL\")])\n",
"df"
]
},
{
"cell_type": "code",
- "execution_count": 62,
+ "execution_count": 42,
"metadata": {
"collapsed": false
},
"outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\tools\\miniconda3\\lib\\site-packages\\openpyxl\\styles\\stylesheet.py:226: UserWarning: Workbook contains no default style, apply openpyxl's default\n",
+ " warn(\"Workbook contains no default style, apply openpyxl's default\")\n"
+ ]
+ }
],
"source": [
"df = get_data_from_excel(file)"
@@ -6886,7 +7104,7 @@
},
{
"cell_type": "code",
- "execution_count": 63,
+ "execution_count": 43,
"metadata": {
"collapsed": false
},
@@ -6896,18 +7114,18 @@
"output_type": "stream",
"text": [
"\n",
- "CategoricalIndex: 211200 entries, EU27_2020 to XK\n",
+ "CategoricalIndex: 21600 entries, EU27_2020 to XK\n",
"Data columns (total 6 columns):\n",
- " # Column Non-Null Count Dtype \n",
- "--- ------ -------------- ----- \n",
- " 0 year 211200 non-null int64 \n",
- " 1 value 95562 non-null float64 \n",
- " 2 unit 211200 non-null category\n",
- " 3 hazard 211200 non-null category\n",
- " 4 waste 211200 non-null category\n",
- " 5 nace_r2 211200 non-null category\n",
- "dtypes: category(4), float64(1), int64(1)\n",
- "memory usage: 4.2 MB\n"
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 year 21600 non-null int32 \n",
+ " 1 value 18626 non-null float64 \n",
+ " 2 unit 21600 non-null category\n",
+ " 3 hazard 21600 non-null category\n",
+ " 4 nace_r2 21600 non-null category\n",
+ " 5 waste 21600 non-null category\n",
+ "dtypes: category(4), float64(1), int32(1)\n",
+ "memory usage: 360.7 KB\n"
]
}
],
@@ -6917,7 +7135,182 @@
},
{
"cell_type": "code",
- "execution_count": 34,
+ "execution_count": 45,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " year | \n",
+ " value | \n",
+ " unit | \n",
+ " hazard | \n",
+ " nace_r2 | \n",
+ " waste | \n",
+ "
\n",
+ " \n",
+ " geo | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " EU27_2020 | \n",
+ " 2004 | \n",
+ " 146.0 | \n",
+ " KG_HAB | \n",
+ " HAZ_NHAZ | \n",
+ " A | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " EU28 | \n",
+ " 2004 | \n",
+ " 130.0 | \n",
+ " KG_HAB | \n",
+ " HAZ_NHAZ | \n",
+ " A | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " BE | \n",
+ " 2004 | \n",
+ " 114.0 | \n",
+ " KG_HAB | \n",
+ " HAZ_NHAZ | \n",
+ " A | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " BG | \n",
+ " 2004 | \n",
+ " 94.0 | \n",
+ " KG_HAB | \n",
+ " HAZ_NHAZ | \n",
+ " A | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " CZ | \n",
+ " 2004 | \n",
+ " 122.0 | \n",
+ " KG_HAB | \n",
+ " HAZ_NHAZ | \n",
+ " A | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " AL | \n",
+ " 2020 | \n",
+ " NaN | \n",
+ " T | \n",
+ " NHAZ | \n",
+ " TOTAL_HH | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " RS | \n",
+ " 2020 | \n",
+ " 47307595.0 | \n",
+ " T | \n",
+ " NHAZ | \n",
+ " TOTAL_HH | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " TR | \n",
+ " 2020 | \n",
+ " 76949950.0 | \n",
+ " T | \n",
+ " NHAZ | \n",
+ " TOTAL_HH | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " BA | \n",
+ " 2020 | \n",
+ " 6743515.0 | \n",
+ " T | \n",
+ " NHAZ | \n",
+ " TOTAL_HH | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ " XK | \n",
+ " 2020 | \n",
+ " 2592826.0 | \n",
+ " T | \n",
+ " NHAZ | \n",
+ " TOTAL_HH | \n",
+ " TOTAL | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
21600 rows × 6 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " year value unit hazard nace_r2 waste\n",
+ "geo \n",
+ "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "EU28 2004 130.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BE 2004 114.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BG 2004 94.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "CZ 2004 122.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "... ... ... ... ... ... ...\n",
+ "AL 2020 NaN T NHAZ TOTAL_HH TOTAL\n",
+ "RS 2020 47307595.0 T NHAZ TOTAL_HH TOTAL\n",
+ "TR 2020 76949950.0 T NHAZ TOTAL_HH TOTAL\n",
+ "BA 2020 6743515.0 T NHAZ TOTAL_HH TOTAL\n",
+ "XK 2020 2592826.0 T NHAZ TOTAL_HH TOTAL\n",
+ "\n",
+ "[21600 rows x 6 columns]"
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 48,
"metadata": {
"collapsed": false,
"scrolled": true
@@ -6929,31 +7322,25 @@
""
]
},
- "execution_count": 34,
- "metadata": {
- },
+ "execution_count": 48,
+ "metadata": {},
"output_type": "execute_result"
},
{
"data": {
- "image/png": "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",
+ "image/png": "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",
"text/plain": [
- ""
+ ""
]
},
- "execution_count": 34,
"metadata": {
- "image/png": {
- "height": 472,
- "width": 723
- },
"needs_background": "light"
},
- "output_type": "execute_result"
+ "output_type": "display_data"
}
],
"source": [
- "df[(df.year == \"2016\") & (df.unit == \"KG_HAB\") & (df.hazard == \"HAZ_NHAZ\") & (df.waste == \"TOTAL\") & (df.nace_r2 == \"TOTAL_HH\")].value.plot.bar()"
+ "df[(df.year == 2016) & (df.unit == \"KG_HAB\") & (df.hazard == \"HAZ_NHAZ\") & (df.waste == \"TOTAL\") & (df.nace_r2 == \"TOTAL_HH\")].value.plot.bar(figsize=(20,8))"
]
},
{
@@ -6971,8 +7358,7 @@
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df.to_csv(\"data/env_wasgen_combined.csv\")"
]
@@ -6983,8 +7369,7 @@
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = pd.read_csv(\"data/env_wasgen_combined.csv\")"
]
@@ -7027,8 +7412,7 @@
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df[df.select_dtypes(\"object\").columns] = df.select_dtypes(\"object\").apply(lambda x: pd.Series(x).astype(\"category\"))"
]
@@ -7071,8 +7455,7 @@
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = df.set_index(\"geo\")"
]
@@ -7110,31 +7493,29 @@
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 49,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df.to_parquet(\"data/env_wasgen_combined.parquet\")"
]
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": 50,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
+ "outputs": [],
"source": [
"df = pd.read_parquet(\"data/env_wasgen_combined.parquet\")"
]
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 51,
"metadata": {
"collapsed": false
},
@@ -7164,8 +7545,8 @@
" value | \n",
" unit | \n",
" hazard | \n",
- " waste | \n",
" nace_r2 | \n",
+ " waste | \n",
" \n",
" \n",
" geo | \n",
@@ -7184,8 +7565,8 @@
" 146.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" EU28 | \n",
@@ -7193,8 +7574,8 @@
" 130.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BE | \n",
@@ -7202,8 +7583,8 @@
" 114.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BG | \n",
@@ -7211,8 +7592,8 @@
" 94.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" CZ | \n",
@@ -7220,8 +7601,8 @@
" 122.0 | \n",
" KG_HAB | \n",
" HAZ_NHAZ | \n",
- " TOTAL | \n",
" A | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" ... | \n",
@@ -7234,75 +7615,74 @@
"
\n",
" \n",
" AL | \n",
- " 2018 | \n",
+ " 2020 | \n",
" NaN | \n",
" T | \n",
" NHAZ | \n",
- " TOT_X_MIN | \n",
" TOTAL_HH | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" RS | \n",
- " 2018 | \n",
- " 11780914.0 | \n",
+ " 2020 | \n",
+ " 47307595.0 | \n",
" T | \n",
" NHAZ | \n",
- " TOT_X_MIN | \n",
" TOTAL_HH | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" TR | \n",
- " 2018 | \n",
- " 74786520.0 | \n",
+ " 2020 | \n",
+ " 76949950.0 | \n",
" T | \n",
" NHAZ | \n",
- " TOT_X_MIN | \n",
" TOTAL_HH | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" BA | \n",
- " 2018 | \n",
- " 5610790.0 | \n",
+ " 2020 | \n",
+ " 6743515.0 | \n",
" T | \n",
" NHAZ | \n",
- " TOT_X_MIN | \n",
" TOTAL_HH | \n",
+ " TOTAL | \n",
"
\n",
" \n",
" XK | \n",
- " 2018 | \n",
- " NaN | \n",
+ " 2020 | \n",
+ " 2592826.0 | \n",
" T | \n",
" NHAZ | \n",
- " TOT_X_MIN | \n",
" TOTAL_HH | \n",
+ " TOTAL | \n",
"
\n",
" \n",
"\n",
- "211200 rows × 6 columns
\n",
+ "21600 rows × 6 columns
\n",
""
],
"text/plain": [
- " year value unit hazard waste nace_r2\n",
- "geo \n",
- "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "EU28 2004 130.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BE 2004 114.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "BG 2004 94.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "CZ 2004 122.0 KG_HAB HAZ_NHAZ TOTAL A\n",
- "... ... ... ... ... ... ...\n",
- "AL 2018 NaN T NHAZ TOT_X_MIN TOTAL_HH\n",
- "RS 2018 11780914.0 T NHAZ TOT_X_MIN TOTAL_HH\n",
- "TR 2018 74786520.0 T NHAZ TOT_X_MIN TOTAL_HH\n",
- "BA 2018 5610790.0 T NHAZ TOT_X_MIN TOTAL_HH\n",
- "XK 2018 NaN T NHAZ TOT_X_MIN TOTAL_HH\n",
+ " year value unit hazard nace_r2 waste\n",
+ "geo \n",
+ "EU27_2020 2004 146.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "EU28 2004 130.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BE 2004 114.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "BG 2004 94.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "CZ 2004 122.0 KG_HAB HAZ_NHAZ A TOTAL\n",
+ "... ... ... ... ... ... ...\n",
+ "AL 2020 NaN T NHAZ TOTAL_HH TOTAL\n",
+ "RS 2020 47307595.0 T NHAZ TOTAL_HH TOTAL\n",
+ "TR 2020 76949950.0 T NHAZ TOTAL_HH TOTAL\n",
+ "BA 2020 6743515.0 T NHAZ TOTAL_HH TOTAL\n",
+ "XK 2020 2592826.0 T NHAZ TOTAL_HH TOTAL\n",
"\n",
- "[211200 rows x 6 columns]"
+ "[21600 rows x 6 columns]"
]
},
- "execution_count": 9,
- "metadata": {
- },
+ "execution_count": 51,
+ "metadata": {},
"output_type": "execute_result"
}
],
@@ -7312,7 +7692,7 @@
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": 52,
"metadata": {
"collapsed": false
},
@@ -7322,18 +7702,18 @@
"output_type": "stream",
"text": [
"\n",
- "CategoricalIndex: 211200 entries, EU27_2020 to XK\n",
+ "CategoricalIndex: 21600 entries, EU27_2020 to XK\n",
"Data columns (total 6 columns):\n",
- " # Column Non-Null Count Dtype \n",
- "--- ------ -------------- ----- \n",
- " 0 year 211200 non-null int64 \n",
- " 1 value 95562 non-null float64 \n",
- " 2 unit 211200 non-null category\n",
- " 3 hazard 211200 non-null category\n",
- " 4 waste 211200 non-null category\n",
- " 5 nace_r2 211200 non-null category\n",
- "dtypes: category(4), float64(1), int64(1)\n",
- "memory usage: 4.2 MB\n"
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 year 21600 non-null int32 \n",
+ " 1 value 18626 non-null float64 \n",
+ " 2 unit 21600 non-null category\n",
+ " 3 hazard 21600 non-null category\n",
+ " 4 nace_r2 21600 non-null category\n",
+ " 5 waste 21600 non-null category\n",
+ "dtypes: category(4), float64(1), int32(1)\n",
+ "memory usage: 360.7 KB\n"
]
}
],
@@ -7343,7 +7723,7 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 54,
"metadata": {
"collapsed": false
},
@@ -7354,59 +7734,43 @@
""
]
},
- "execution_count": 12,
- "metadata": {
- },
+ "execution_count": 54,
+ "metadata": {},
"output_type": "execute_result"
},
{
"data": {
- "image/png": "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",
+ "image/png": "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",
"text/plain": [
- ""
+ ""
]
},
- "execution_count": 12,
"metadata": {
- "image/png": {
- "height": 482,
- "width": 707
- },
"needs_background": "light"
},
- "output_type": "execute_result"
+ "output_type": "display_data"
}
],
"source": [
- "df[(df.year == 2016) & (df.unit == \"T\") & (df.hazard == \"HAZ_NHAZ\") & (df.waste == \"TOTAL\") & (df.nace_r2 == \"TOTAL_HH\")].value.plot.bar()"
+ "df[(df.year == 2016) & (df.unit == \"T\") & (df.hazard == \"HAZ_NHAZ\") & (df.waste == \"TOTAL\") & (df.nace_r2 == \"TOTAL_HH\")].value.plot.bar(figsize=(20,8))"
]
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": null,
"metadata": {
"collapsed": false
},
- "outputs": [
- ],
- "source": [
- ]
+ "outputs": [],
+ "source": []
}
],
"metadata": {
"hide_code_all_hidden": false,
"kernelspec": {
- "display_name": "Python 3 (system-wide)",
+ "display_name": "Python 3.9.7 ('base')",
"language": "python",
- "metadata": {
- "cocalc": {
- "description": "Python 3 programming language",
- "priority": 100,
- "url": "https://www.python.org/"
- }
- },
- "name": "python3",
- "resource_dir": "/ext/jupyter/kernels/python3"
+ "name": "python3"
},
"language_info": {
"codemirror_mode": {
@@ -7418,9 +7782,14 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.8.5"
+ "version": "3.9.7"
+ },
+ "vscode": {
+ "interpreter": {
+ "hash": "3247f7d4635bb288d9e06d3deacee818856115b2677ccfdf5a578edab993fe5f"
+ }
}
},
"nbformat": 4,
"nbformat_minor": 4
-}
\ No newline at end of file
+}
diff --git a/02 Dataset env_wasgen.ipynb b/02 Dataset env_wasgen.ipynb
index b88abd7..a618d46 100644
--- a/02 Dataset env_wasgen.ipynb
+++ b/02 Dataset env_wasgen.ipynb
@@ -126,26 +126,27 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 4,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\tools\\miniconda3\\lib\\site-packages\\openpyxl\\styles\\stylesheet.py:226: UserWarning: Workbook contains no default style, apply openpyxl's default\n",
+ " warn(\"Workbook contains no default style, apply openpyxl's default\")\n"
+ ]
+ }
+ ],
"source": [
"codes = get_header_codes_from_excel(file)"
]
},
{
"cell_type": "code",
- "execution_count": 15,
+ "execution_count": 5,
"metadata": {},
"outputs": [
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "/Users/miay/miniconda/lib/python3.9/site-packages/openpyxl/styles/stylesheet.py:226: UserWarning: Workbook contains no default style, apply openpyxl's default\n",
- " warn(\"Workbook contains no default style, apply openpyxl's default\")\n"
- ]
- },
{
"name": "stdout",
"output_type": "stream",
@@ -4305,7 +4306,7 @@
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3.9.12",
+ "display_name": "Python 3.9.7 ('base')",
"language": "python",
"name": "python3"
},
@@ -4319,11 +4320,11 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.9.12"
+ "version": "3.9.7"
},
"vscode": {
"interpreter": {
- "hash": "854afd56987f2f89f833600b1696b8dd8f924afccdbd759679e77e1a3b52b928"
+ "hash": "3247f7d4635bb288d9e06d3deacee818856115b2677ccfdf5a578edab993fe5f"
}
}
},
diff --git a/README.md b/README.md
index b291d3c..f8dd425 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,14 @@
# Data-Science-in-the-Wild
-[](https://mybinder.org/v2/gh/pmayd/Data-Science-in-the-Wild/HEAD)
+[](https://mybinder.org/v2/gh/pmayd/Data-Science-in-the-Wild/HEAD)
This repository contains the material for our Data Science in the Wild workshop at [Spartakiade 2022](https://spartakiade.org/).
## Data sets
- [Eurostat](https://ec.europa.eu/eurostat/web/main/data/database)
- - We need `Database by themes` -> `Environment and energy` -> `Environment (env)` -> `Waste (env_was)` -> `Waste generation and treatment (env_wasgt)` -> `env_wasgen`.
- - You can directly jump into the data browser [here](https://ec.europa.eu/eurostat/databrowser/view/env_wasgen/default/table?lang=en).
+ - We need `Database by themes` -> `Environment and energy` -> `Environment (env)` -> `Waste (env_was)` -> `Waste generation and treatment (env_wasgt)` -> `env_wasgen`.
+ - You can directly jump into the data browser [here](https://ec.europa.eu/eurostat/databrowser/view/env_wasgen/default/table?lang=en).
- [GENESIS-Online](https://www.destatis.de/DE/Themen/Gesellschaft-Umwelt/Gesundheit/Glossar/genesis.html)
- - You can find the documentation of the API [here](https://www.destatis.de/DE/Service/OpenData/genesis-api-webservice-oberflaeche.html) (yes -- it's a PDF).
- - You need a registered user to be able to use the GENESIS API, so register your user [here]().
\ No newline at end of file
+ - You can find the documentation of the API [here](https://www.destatis.de/DE/Service/OpenData/genesis-api-webservice-oberflaeche.html) (yes -- it's a PDF).
+ - You need a registered user to be able to use the GENESIS API, so register your user [here](https://www-genesis.destatis.de/genesis/online?Menu=Registrierung#abreadcrumb).
\ No newline at end of file
diff --git a/data/env_wasgen_combined.parquet b/data/env_wasgen_combined.parquet
index d332c44..a6a566a 100644
Binary files a/data/env_wasgen_combined.parquet and b/data/env_wasgen_combined.parquet differ
diff --git a/data/env_wasgen_new.xlsx b/data/env_wasgen_new.xlsx
index a07f32e..b46f469 100644
Binary files a/data/env_wasgen_new.xlsx and b/data/env_wasgen_new.xlsx differ
diff --git a/data/env_wasgen_old.xls b/data/env_wasgen_old.xls
index 87741a7..1e0b8a8 100644
Binary files a/data/env_wasgen_old.xls and b/data/env_wasgen_old.xls differ
diff --git a/requirements.txt b/requirements.txt
index 33d2cb0..ab64755 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -3,6 +3,5 @@ matplotlib
numpy
pandas
plotly
-xlrd
-statsmodels
+openpyxl
scikit-learn
\ No newline at end of file
diff --git a/utils.py b/utils.py
index d8d1b73..f92e4f6 100644
--- a/utils.py
+++ b/utils.py
@@ -1,10 +1,10 @@
from collections import defaultdict
-from typing import Union, List
+from typing import List, Union
-import pandas as pd
import openpyxl
+import pandas as pd
-HEADER_ROWS = range(4,8)
+HEADER_ROWS = range(6, 10)
DIMENSIONS_SHEET_NAME = "Structure"
DIMENSIONS_CELL_RANGE = "B4:E1000"
DIMENSIONS_FIRST_ROW = 3
@@ -13,13 +13,21 @@
DIMENSIONS_COL_LABEL = 3
-def get_header_codes_from_excel(excel_file: str):
+def get_header_codes_from_excel(excel_file: str) -> dict:
+ """Return Dimension categories, codes and labels from an Eurostat dataset.
+
+ Args:
+ excel_file (str): Path to a local excel file.
+
+ Returns:
+ dict: A dictionary with categories as key and another dict with code - label as key-value.
+ """
book = openpyxl.load_workbook(excel_file, data_only=True)
-
+
codes = defaultdict(dict)
sheet = book[DIMENSIONS_SHEET_NAME]
cells = sheet[DIMENSIONS_CELL_RANGE]
-
+
for row in cells:
cat = row[DIMENSIONS_COL_CAT].value
code = row[DIMENSIONS_COL_CODE].value
@@ -33,38 +41,47 @@ def get_header_codes_from_excel(excel_file: str):
def print_codes(excel_file: str):
+ """Print the Dimension categories, codes and labels from an Eurostat dataset.
+
+ Args:
+ excel_file (str): Path to a local excel file.
+ """
codes = get_header_codes_from_excel(excel_file)
- for k,v in codes.items():
+ for k, v in codes.items():
print("Category: ", k)
print("---------")
- for k,v in v.items():
+ for k, v in v.items():
print(f"{k}: {v}")
print()
-def get_data_from_excel(excel_file: str, headers: Union[tuple, List[tuple]] = None) -> pd.DataFrame:
- book = xlrd.open_workbook(excel_file, on_demand=True)
+def get_data_from_excel(
+ excel_file: str, headers: Union[tuple, List[tuple]] = None
+) -> pd.DataFrame:
+ book = openpyxl.load_workbook(excel_file, data_only=True)
list_of_df = []
if isinstance(headers, tuple):
headers = [headers]
- for sheet in book.sheet_names():
- sh = book.sheet_by_name(sheet)
+ for sheetname in book.sheetnames[2:]:
+ sheet = book[sheetname]
header_names = []
header_values = []
- for row in range(6,10):
- name = sh.cell_value(row, 0)
- value = sh.cell_value(row, 1)
-
- if not name:
+ for row in HEADER_ROWS:
+ name = sheet.cell(row=row, column=1).value
+ value = sheet.cell(row=row, column=3).value
+
+ if name is None:
break
-
+
+ name = name.split("[")[1].strip("]")
+ value = value.split("[")[1].strip("]")
header_names.append(name)
- header_values.append(value.split(" - ")[0])
-
+ header_values.append(value)
+
header_names = tuple(header_names)
header_values = tuple(header_values)
@@ -83,26 +100,46 @@ def get_data_from_excel(excel_file: str, headers: Union[tuple, List[tuple]] = No
# find header row
header_row = 0
- for row in range(20):
- if sh.cell_value(row, 0) == "GEO":
+ for row in range(1, 21):
+ value = sheet.cell(row=row, column=1).value
+ if value is not None and value.startswith("TIME"):
header_row = row
break
nrows = header_row
- for row in range(header_row, 100):
- if sh.cell_value(row, 0) == "":
+ for row in range(header_row, 101):
+ if sheet.cell(row=row, column=1).value is None:
nrows = row - header_row - 1
break
-
- df_sheet = pd.read_excel(excel_file, sheet_name=sheet, header=header_row, nrows=nrows, na_values=":").drop(columns="GEO(L)/TIME").rename(columns={'GEO': 'geo'})
+
+ df_sheet = pd.read_excel(
+ excel_file,
+ sheet_name=sheetname,
+ header=header_row-1,
+ nrows=nrows,
+ na_values=":",
+ )
+ df_sheet = df_sheet.rename(
+ columns={
+ df_sheet.columns[0]: df_sheet.iloc[0, 0],
+ df_sheet.columns[1]: df_sheet.iloc[0, 1],
+ }
+ )
+ df_sheet = df_sheet.iloc[1:]
+ df_sheet = df_sheet.drop(columns="GEO (Labels)")
+ df_sheet = df_sheet.rename(columns={"GEO (Codes)": "geo"})
df_sheet = df_sheet.melt(id_vars="geo", var_name="year", value_name="value")
- df_sheet = df_sheet.assign(**{x.lower():y for x,y in zip(header_names, header_values) if x})
+ df_sheet = df_sheet.assign(
+ **{x.lower(): y for x, y in zip(header_names, header_values) if x}
+ )
list_of_df.append(df_sheet)
df = pd.concat(list_of_df)
df.year = df.year.astype(int)
- df[df.select_dtypes("object").columns] = df.select_dtypes("object").astype("category")
+ df[df.select_dtypes("object").columns] = df.select_dtypes("object").astype(
+ "category"
+ )
df = df.set_index("geo")
return df