GithubHelp home page GithubHelp logo

katrinleinweber / halbwegs-smart-meter Goto Github PK

View Code? Open in Web Editor NEW
2.0 3.0 0.0 24 KB

Einstieg in die Datenanalyse mit R, am Beispiel des eigenen Energieverbrauchs

Home Page: https://fahrplan.bits-und-baeume.org/events/177.html

License: GNU General Public License v3.0

R 100.00%
r electricity-bill energy-consumption energy-monitor ccc

halbwegs-smart-meter's Introduction

halbwegs-smart-meter's People

Contributors

katrinleinweber avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

halbwegs-smart-meter's Issues

Andere Möglichkeit, Funktionen aus Paketen zu laden

Neben #1 gibt es auch eine Schreibweise, nur genau die tatsächlich benutzte Funktion aus einem Paket zu laden, anstatt erst das ganze Paket. Wann ist diese Möglichkeit nützlicher / sinnvoller / schöner, als library(...) aufzurufen (egal wo im Skript)?

Doppelte Eintragungen verhindern

Im Workshop wurde ja durch die Live-Demo verschiedener Herangehensweisen ein paar mal der selbe "Zählerstand" mit dem selben Datum in unseren Datensatz geschrieben. Dies können wir verhindern, indem wir zwischen den read_csv()- & add_row()-Befehlen eine if-Prüfung einbauen.

Erinnern Sie sich an die $-Schreibweise zum Zugriff auf alle Werte einer Spalte. In welcher würden Sie auf eher auf Doppelung prüfen?

Lesen Sie SWCarpentry.GitHub.io/r-novice-gapminder/07-control-flow. Dort werden auch für uns passende Operatoren kurz erklärt, mittels der wir auf das schon-Vorhandensein eines Wertes prüfen können. Die dort erwähnte "perform action" könnte in unserem Falle eine warning() oder stop() mit einem Menschen-lesbaren Hinweis auf die Doppelung sein.

PS: Diese Übung klappt besser, wenn #2 schon erledigt ist ;-)

Zählerstand bequemer eingeben

Statt in add_row(..., Strom_kWh = ...) den Zählerstand mitten im Skript eintippen zu müssen, definieren Sie eine Variable ganz oben im Script und rufen Sie sie in add_row(...) wieder auf.

library-Ladebefehle verschieben

Dass wir mehrfach im Script verstreut externe Pakete mittels library(...) laden, ist eigentlich kein guter Stil. Wir sollten diese Zeilen vielleicht verschieben. Wohin am besten?

today() statt Sys.Date()

today() gibt es auch, allerdings in einem Paket, dass Sie erst finden, installieren und laden müssten. Welche Pro- & Contra-Argumente Sie neben:

+ "der externe Funktionsname ist eindeutiger" und

- "aber der Aufwand lohnt nicht"

heranziehen, um zwischen "eingebaute Funktion nutzen" vs. "aus importierten Paketen" zu entscheiden?

Anders mutieren und dabei abwägen

In mutate(...) werden die Zwischenergebnisse Intervall_Tage und Strom_kWh_pro_Tag nur einmal verwendet. Wir müssen beide also nicht unbedingt als Variablen speichern, sondern können ihre Berechnungsformeln auch dort einsetzen, wo momentan die Variablen aufgerufen werden. Setzen Sie schrittweise ein, sodass am Ende Abschlag_Strom_EUR in einem Rutsch berechnet wird.

Das mag Arbeitsspeicher / RAM einsparen, aber auf Kosten von was geht eine solche Einsparung? In welchen Situationen ist welche Art der Einsparung / Optimierung sinnvoll?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.