Programmieren mit R Entscheidungen zu treffen

Schreiben Sie bedingte Anweisungen mit, ob und andere.

Korrekt auswerten Ausdrücke enthalten, - ( ‚und‘) und | ('oder').

Unsere bisherigen Lektionen haben uns gezeigt, wie die Daten zu manipulieren, eigene Funktionen definieren, und wiederholen Sie die Dinge. die Programme, die wir so jedoch weit geschrieben haben, tun immer die gleichen Dinge, unabhängig davon, welche Daten sie gegeben sind. Wir wollen Programme, Entscheidungen zu treffen, basierend auf den Werten, die sie manipulieren.

Speichern von Plots in eine Datei

Und baute auch die Funktion analyze_all die Verarbeitung jeder Datendatei zu automatisieren:

Hier ist, wie können wir alle drei Plots des ersten Entzündung Datensatz in einer PDF-Datei speichern:

Die Funktion pdf leitet alle Plots von R in eine PDF-Datei erzeugt, die wir in diesem Fall „Entzündung-01.pdf“ genannt haben. Nachdem wir die Grundstücke getan generieren in der pdf-Datei gespeichert werden soll, halten wir von R Plots mit der Funktion dev.off umleitet.

Überschreiben Plots

Wenn Sie laufen pdf mehrmals ohne dev.off ausgeführt wird. Sie werden Plots der zuletzt geöffneten Datei speichern. Sie werden jedoch nicht in der Lage sein, die bisherigen PDF-Dateien zu öffnen, weil die Verbindungen nicht geschlossen waren. Um aus dieser Situation zu bekommen, müssen Sie dev.off bis alle pdf-Verbindungen geschlossen sind laufen. Sie können Ihren aktuellen Status mit der Funktion dev.cur überprüfen. Wenn es heißt „pdf“, alle Parzellen werden angegeben in der letzten PDF-Datei gespeichert. Wenn es „Null-Gerät“ oder „RStudioGD“ sagt, werden die Plots normalerweise sichtbar gemacht werden.

Wir können die Funktion analysieren aktualisieren, so dass es immer die Grundstücke in einem pdf spart. Aber das würde es schwieriger machen, um interaktiv neue Änderungen zu testen. Es wäre ideal, wenn würde analysieren entweder speichern oder nicht die Plots auf seine Eingabe basierend speichern.

conditionals

Die zweite Zeile dieses Codes verwendet eine if-Anweisung R zu sagen, dass wir eine Wahl treffen wollen. Wenn der folgende Test wahr ist, ist der Körper der if (d.h. die Linien in den geschweiften Klammern darunter) ausgeführt. Wenn der Test falsch ist, wird der Körper der anderen Stelle ausgeführt. Nur der eine oder andere wird immer ausgeführt:

In dem obigen Beispiel der Test num> 100 gibt den Wert FALSCH. weshalb der Code innerhalb des if-Block übersprungen wurde und der Code innerhalb der else-Anweisung stattdessen ausgeführt wurde.

Bedingte Anweisungen müssen nicht ein anderes umfassen. Wenn es nicht ein, R einfach nichts tut, wenn der Test falsch ist:

Wir können die Kette auch mehrere Tests zusammen, wenn es mehr als zwei Optionen. Dies macht es einfach, eine Funktion zu schreiben, die das Vorzeichen einer Zahl zurückgibt:

Beachten Sie, dass, wenn andere, und wenn in einer anderen Kombination von if-Anweisung, noch der, wenn Teil eine direkte Eingabebedingung erfordert. Das ist nie der Fall für die else-Anweisung allein, das nur dann, wenn alle anderen Bedingungen gehen unzufrieden ausgeführt wird. Beachten Sie, dass der Test auf Gleichheit zwei Gleichheitszeichen verwendet, ==.

andere Vergleiche

Andere Tests umfassen die größer oder gleich (> =), weniger als oder gleich ( <= ), and not equal to ( != ).

Wir können auch Tests kombinieren. Ein Ampersand, -. symbolisiert „und“. Ein senkrechter Strich, |. symbolisiert „oder“. - ist nur wahr, wenn beide Teile erfüllt sind:

während | wahr ist, wenn entweder ein Teil wahr ist:

In diesem Fall „entweder“ bedeutet „eine oder beide“, nicht „entweder das eine oder das andere, aber nicht beide“.

Die Wahl Plots Basierend auf Daten

Schreibe eine Funktion, die eine plot_dist boxplot plottet, wenn die Länge des Vektors größer ist als ein spezifizierter Schwellenwert ist, und ein Linienschreiber anders. Dazu werden Sie die R verwenden Funktionen boxplot und Linienschreiber.

Programmieren mit R Entscheidungen zu treffen

Programmieren mit R Entscheidungen zu treffen

Histogramme Statt

Einer Ihrer Mitarbeiter zieht die Verteilungen der größeren Vektoren als Histogramm statt als boxplot zu sehen. Um zwischen einem Histogramm und einem boxplot wählen wir die Funktion plot_dist bearbeiten und ein zusätzliches Argument use_boxplot hinzuzufügen. Standardmässig werden wir use_boxplot auf TRUE gesetzt, die eine boxplot schaffen, wenn der Vektor länger als der Schwellenwert ist. Wenn use_boxplot auf FALSE gesetzt. plot_dist wird stattdessen ein Histogramm für die größeren Vektoren zeichnen. Wie zuvor, wenn die Länge des Vektors kürzer als Schwellenwert. plot_dist einen Linienschreiber erstellen. Ein Histogramm wird mit dem hist Befehl in R. gemacht

Programmieren mit R Entscheidungen zu treffen

Programmieren mit R Entscheidungen zu treffen

Finden Sie die maximale Entzündung Score

Suchen Sie die Datei, die Patienten mit dem höchsten durchschnittlichen Entzündungswert enthält. Drucken Sie die Dateinamen, die Patientennummer (Zeilennummer) und den Wert des maximalen durchschnittlichen Entzündungswertes.

  1. Verwenden Sie Variablen, um die maximale durchschnittliche zu speichern und aktualisieren, wie Sie durch Dateien und Patienten gehen.
  2. Sie können verschachtelte Schleifen verwenden (eine Schleife in der anderen ist) in jeder Datei sowie durch die Patienten durch die Dateien zu gehen (jede Zeile).

Füllen Sie den Code unten:

Speichern automatisch generierte Zahlen

Jetzt können wir interaktiv analysieren verwenden, wie zuvor,

Programmieren mit R Entscheidungen zu treffen
Programmieren mit R Entscheidungen zu treffen
Programmieren mit R Entscheidungen zu treffen

aber auch verwenden, Grundstücke zu speichern,

Bevor Sie weitermachen, werden wir ein Verzeichnis Ergebnisse für das Speichern unsere Grundstücke erstellen. Es ist gute Praxis in Projekten Datenanalyse der gesamte Ausgabe in ein Verzeichnis getrennt von den Daten und Analysecode zu speichern. Sie können dieses Verzeichnis mit dem Shell-Befehl mkdir erstellen. oder die R-Funktion dir.create ()

Jetzt läuft analysieren und die Handlung im Ergebnis Verzeichnis speichern,

Dies funktioniert nun auch, wenn wir wollen, zu einer Zeit, eine Datendatei verarbeiten, aber wie können wir die Ausgabedatei in analyze_all angeben. Wir müssen zwei Dinge tun:

  1. Ersetzen Sie die Dateinamen „csv“ mit „pdf“ enden.
  2. Speichern Sie das Grundstück zu den Ergebnissen Verzeichnis.

Um die Erweiterung zu ändern, um „pdf“, werden wir die Funktion sub verwenden,

So fügen Sie das Verzeichnis „data“ an den Dateinamen die Funktion file.path verwenden