Heim  >  Artikel  >  Backend-Entwicklung  >  Emmission einer Katze und eines Hundes mit Python

Emmission einer Katze und eines Hundes mit Python

WBOY
WBOYOriginal
2024-09-03 10:40:45364Durchsuche

Hallo,

Ich habe einen kleinen Artikel gefunden, in dem es um die Emissionen von Haustieren geht, daher habe ich beschlossen, die CO2-Emissionen anzuzeigen, wenn sie nicht existieren.

Code:
https://github.com/victordalet/Kaggle_analysis/tree/feat/dog_co2

Quellen:

  • https://www.lekaba.fr/article/l-empreinte-carbone-des-chiens-et-des-chats-un-amour-qui-pese-lourd-sur-le-climat

  • https://www.umweltbundesamt.de/de/bild/globale-f-gasemissionen-bis-2050-gesamt

  • https://www.rover.com/fr/blog/combien-y-a-t-il-de-chats-dans-le-monde/


Ich - Daten abrufen

Zuerst erhalte ich Daten, die den weltweiten CO2-Verbrauch, den durchschnittlichen Ausstoß eines Hundes und einer Katze sowie die Anzahl dieser Haustiere schätzen.

import plotly.express as px


class Main:
    def __init__(self):
        self.estimation = {
            "2005": 750,
            "2010": 900,
            "2020": 1300,
            "2030": 1800,
            "2040": 2700,
            "2050": 4000,
        }

        self.estimation_no_cat = {
            "2005": 750,
            "2010": 900,
            "2020": 1300,
            "2030": 1800,
            "2040": 2700,
            "2050": 4000,
        }

        self.estimation_no_dog = {
            "2005": 750,
            "2010": 900,
            "2020": 1300,
            "2030": 1800,
            "2040": 2700,
            "2050": 4000,
        }

        self.estimation_no_cat_and_dog = {
            "2005": 750,
            "2010": 900,
            "2020": 1300,
            "2030": 1800,
            "2040": 2700,
            "2050": 4000,
        }

        self.cat_emission = 240
        self.dog_emission = 358
        self.nb_cats = 600000000
        self.nb_dogs = 900000000

II – Transformation

Die Gesamtemission wird in Millionen Tonnen angegeben, daher habe ich eine Methode zur Umrechnung der Tierdaten erstellt, die in kg angegeben sind.

    @staticmethod
    def transform_to_million_of_tonnes(value):
        return value / (1000000 * 1000)

III - Berechnen

Um die Schätzung ohne Katze oder Hund zu ändern, gehen Sie die erste Schätzung durch und ersetzen Sie die Werte der anderen Wörterbücher durch die im ersten Schritt gefundenen Werte.

    def calculate(self):
        for year, value in self.estimation.items():
            self.estimation_no_cat[year] = value - self.transform_to_million_of_tonnes(
                self.cat_emission * self.nb_cats
            )
            self.estimation_no_dog[year] = value - self.transform_to_million_of_tonnes(
                self.dog_emission * self.nb_dogs
            )
            self.estimation_no_cat_and_dog[year] = (
                value
                - self.transform_to_million_of_tonnes(self.cat_emission * self.nb_cats)
                - self.transform_to_million_of_tonnes(self.dog_emission * self.nb_dogs)
            )

IV - Ergebnis anzeigen

Um ein Diagramm mit allen Daten anzuzeigen, verwende ich die Plotly-Bibliothek.

Code für die Pip-Installation:

pip install plotly

Code zur Anzeige der drei Schätzungen:

    def display(self):
        fig = px.line(
            x=list(self.estimation.keys()),
            y=[
                list(self.estimation.values()),
                list(self.estimation_no_cat.values()),
                list(self.estimation_no_dog.values()),
                list(self.estimation_no_cat_and_dog.values()),
            ],
            labels={
                "x": "Year",
                "y": "CO2 Emission (in million of tonnes)",
                "color": "Legend",
            },
            title="CO2 Emission with and without cats and dogs",
            color_discrete_map={
                "CO2 Emission": "blue",
                "CO2 Emission without cats": "green",
                "CO2 Emission without dogs": "red",
                "CO2 Emission without cats and dogs": "orange",
            },
        )
        fig.show()

Jetzt haben wir also die Tabelle mit unseren Ergebnissen.

Emmision COf a cat and a dog with python

Das obige ist der detaillierte Inhalt vonEmmission einer Katze und eines Hundes mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Entdecken Sie itertoolsNächster Artikel:Entdecken Sie itertools