R und RStudio Grundkurs

Mit Vektoren rechnen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In diesem Video lernen Sie, wie Sie mit Vektoren rechnen und if-Anweisungen anwenden können.
08:53

Transkript

In diesem Video möchte ich Ihnen zeigen, wie Sie mit Vektoren rechnen und Ihre allererste If-Anweisung in R schreiben können. Öffnen Sie dafür bitte RStudio und legen eine neue Skriptdatei an, mit dem Klick auf das Plus "R Script", und speichern das Ganze unter "rechnen_mit_vektoren". Und um mit Vektoren rechnen zu können, legen wir erst einmal zwei Vektoren an. Nennen wir den ersten Vektor "groesse", dieser Vektor beinhaltet vier Werte: 1.55 Meter, 1.60 Meter, 1.90 Meter und 1.67 Meter. Der zweite Vektor sei mal der Vektor "gewicht" und dieser Vektor beinhaltet auch vier Werte: 50, 50, 80 Kilogramm und 70 Kilogramm. Sie können das Ganze ausführen. Und Sie sehen auf der rechten Seite, wir haben einen Vektor "gewicht" und "groesse" erzeugt. Beide Vektoren sind numerisch und haben vier Werte, beziehungsweise beinhalten je vier Zeilen. Nun könnten wir ganz einfach den BMI berechnen. Der BMI ist einfach "gewicht/groesse^2". Und Sie sehen, auf der rechten Seite, wir haben einen Vektor erzeugt "bmi", dieser Vektor ist numerisch und beinhaltet auch vier Werte. Sie können den Vektor einfach mal abrufen, indem Sie "bmi" eintippen und das Ganze ausführen, und dann sehen Sie in der Konsole Ihre vier Werte noch einmal von dem BMI Vektor. Okay, hier war alles ganz einfach. Klar der Vektor "groesse" und der Vektor "gewicht" haben dieselbe Länge, deshalb ist die Multiplikation und Division eigentlich kein Problem. Problematisch wird es, wenn diese beiden Vektoren eben unterschiedliche Länge haben, dann lassen sich solche einfachen Operationen nicht mehr durchführen. Und manchmal haben Sie solche großen und langen Datensätze, Ihre Environment ist voller Vektoren, Matrizen, Dataframes, was auch immer und Sie behalten keinen Überblick darüber, wie lang denn nun wirklich die Vektoren sind, beziehungsweise Sie wollen nicht immer nachgucken und trauen Ihren eigenen Augen auch nicht. Aus diesem Grund ist es einfacher hier eine If-Anweisung zu schreiben, um mögliche Fehler zu verhindern. Wir wollen einen zweiten Vektor anlegen und dieser Vektor soll auch "gewicht/groesse^2" beinhalten, aber nur, wenn die Bedingung erfüllt ist, dass die Länge von Größe gleich die Länge von Gewicht ist: "if ( length(groesse) == length(gewicht))". Die Bedingung steht also hier in Klammern, erst danach Erfolgt die Operation "gewicht/groesse^2". Wir können das Ganze mal ausführen und wir sehen, es hat funktioniert BMI ist gleich BMI2, wir erhalten genau dieselben Werte wie vorher auch. Okay, jetzt sind wir mal ganz frei und löschen einen Wert in dem Vektor "groesse". Angenommen wir löschen den dritten Wert. Dafür müssen wir den Vektor "groesse" überschreiben mit sich selber, aber ohne den dritten Wert, das können Sie einfach mit -3 kenntlich machen. Und Sie sehen, der Vektor "groesse" hat jetzt nur noch drei Werte. Es fehlt der dritte Wert, der vorher vorhanden war, nämlich die 1.90 Meter. Wir haben jetzt nun auch die Werte 1.55, 1.60 Meter und 1.67 Meter in unserem Vektor. Okay, R ist eine Skriptsprache, wir brauchen jetzt den Befehl "bmi2" nicht noch einmal aufzuschreiben, wir können ihn einfach markieren und noch einmal ausführen und wir sehen, die Bedingung ist nicht erfüllt, es kommt keine Fehlermeldung, aber es kommt eine Null, der Vektor ist leer, es lässt sich nichts berechnen, eben weil die Bedingung nicht erfüllt ist. Nun ja, so ein Null kann ziemlich frustrieren sein man möchte, ja, wissen, woran das liegt. Also schreiben wir einfacher noch ein bisschen weiter und wir schreiben an unsere If-Anweisung einfacher noch ein "else" hinten drin. Also, wenn die Bedingung nicht erfüllt ist, dann gibt mir eine Fehlermeldung, die sagt, die Längen der Vektoren sind nicht gleich. Es ist eine reine Geschmacksache, wie man den Code schreibt. Ich würde nach der geschweiften Klammer die Operation nach unten holen und diese geschweifte Klammer auch nach unten holen. So. Jetzt können wir BMI2 einfach noch einmal überschreiben, indem wir das Ganze nochmal ausführen. Aha, und wir sehen BMI2 enthält jetzt kein Null, also ist nicht leer, sondern enthält einfach die Warnung "Die Längen der Vektoren sind nicht gleich". Okay, wir können das Ganze auch noch ein bisschen konkretisieren, indem wir hier den Else If-Befehl bedienen, das heißt, wir betten eine zusätzliche Prüfung ein: Prüfe, ob die Länge von Größe kleiner ist als die Länge von Gewicht. Und, wenn das der Fall ist, dann schreibe "Der Vektor groesse ist kleiner als der Vektor gewicht". Und, wenn das auch nicht zutrifft, also sonst schreibe, "Der Vektor gewicht ist kleiner als der Vektor groesse". In Ordnung, wir können das Ganze mal ausführen. Und tatsächlich, jetzt wird uns gesagt, "Der Vektor groesse ist kleiner als der Vektor gewicht", okay, wir sehen hier nicht alles, das heißt, wir können jetzt einfach mal "bmi2" ausgeben. "Der Vektor groesse ist kleiner als der Vektor gewicht". Nun wissen Sie, wie Sie in R mit Vektoren rechnen können und wie Sie If-Anweisungen und Else If-Anweisungen schreiben können.

R und RStudio Grundkurs

Lernen Sie, wie Daten mit der Programmiersprache R statistisch ausgewertet, geplottet und exportiert werden können.

2 Std. 29 min (16 Videos)
Derzeit sind keine Feedbacks vorhanden...
Software:
R R 3
Exklusiv für Abo-Kunden
Erscheinungsdatum:17.11.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!