Tutorials  /  Databases

R with() und within() Funktion - Ein umfassender Leitfaden

Ccentron Redaktion · Februar 2024 ·3 Min. Lesezeit ·Databases, Tutorial

In diesem Artikel werden wir uns zwei eng verwandte, aber dennoch unterschiedliche Funktionen der R-Programmierung ansehen - die R with() und within() Funktion, im Detail. Also, lassen Sie uns beginnen!! :)

1. R with() Funktion

Wir stoßen oft auf Situationen, in denen wir das Bedürfnis haben, benutzerdefinierte Funktionen zu erstellen, um eine bestimmte Operation durchzuführen. Mit der R with() Funktion können wir in einem einzigen Schritt auf R-Ausdrücke operieren sowie den Prozess des Aufrufens dieser Funktion durchführen!

Damit ermöglicht die with() Funktion, einen R-Ausdruck innerhalb der Funktion zu bewerten, der als Argument übergeben wird. Sie funktioniert nur mit Data Frames. Deshalb wird das Ergebnis der Auswertung des R-Ausdrucks in Bezug auf den als Argument übergebenen Data Frame ausgeführt.

Syntax:

Code
with(data-frame, R expression)

Beispiel:

Code
rm(list = ls())

Num <- c(100,100,100,100,100)
Cost <- c(1200,1300,1400,1500,1600)

data_A <- data.frame(Num,Cost,stringsAsFactors = FALSE)

with(data_A, Num*Cost)
with(data_A, Cost/Num)

Im obigen Beispiel haben wir den Ausdruck ‘Num*Cost’ direkt in der with() Funktion für den Data Frame data_A berechnet.

Danach haben wir auch den Ausdruck ‘Cost/Num’ innerhalb der Funktion berechnet.

Der Grund für diese beiden Aussagen nacheinander ist zu betonen, dass die with() Funktion den ursprünglichen Data Frame in keiner Weise verändert. Sie gibt das Output separat für jeden Wert aus, der mit den Spalten des Data Frames verbunden ist.

Output:

Code
> with(data_A, Num*Cost)
[1] 120000 130000 140000 150000 160000
> with(data_A, Cost/Num)
[1] 12 13 14 15 16
DB

Passende Infrastruktur bei centron

Datenbanken im Betrieb wollen gepflegt werden: centron übernimmt auf Wunsch Updates, Backups und Monitoring – von der einzelnen Instanz bis zum Cluster. Managed Cluster ansehen →

2. R within() Funktion

Nachdem wir über die with() Funktion gelesen haben, konzentrieren wir uns jetzt auf ihr Zwilling! Haha! Nur ein Scherz! Obwohl die Namen der Funktionen ähnlich klingen, unterscheiden sie sich in ihrer Funktionsweise.

Die R within() Funktion berechnet das Ergebnis des Ausdrucks innerhalb der Funktion, aber mit einem kleinen Unterschied. Sie ermöglicht es uns, eine Kopie des Data Frames zu erstellen und eine Spalte hinzuzufügen, die letztendlich das Ergebnis des R-Ausdrucks speichert.

Syntax:

Code
within(data frame, new-column <- R expression)

Beispiel:

Code
rm(list = ls())

Num <- c(100,100,100,100,100)
Cost <- c(1200,1300,1400,1500,1600)

data_A <- data.frame(Num,Cost,stringsAsFactors = FALSE)

within(data_A, Product <- Num*Cost)
within(data_A, Q <- Cost/Num)

Hier haben wir die Bewertung der gleichen Ausdrücke durchgeführt, die wir für die with() Funktion verwendet haben. Aber hier haben wir eine neue Spalte erstellt, um das Ergebnis des Ausdrucks zu speichern.

Code
> within(data_A, Product <- Num*Cost) Num Cost Product 1 100 1200 120000 2 100 1300 130000 3 100 1400 140000 4 100 1500 150000 5 100 1600 160000 > within(data_A, Q <- Cost/Num)
  Num Cost  Q
1 100 1200 12
2 100 1300 13
3 100 1400 14
4 100 1500 15
5 100 1600 16

Schlussfolgerung

Mit diesem Beitrag sind wir am Ende dieses Themas angekommen. R with() und within() Funktion – Ein umfassender Leitfaden

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Databases
Teilen
Noch offene Fragen?

Unser Team hilft Ihnen bei Ihrem konkreten Setup weiter – von Menschen, die die Plattform selbst betreiben.

War dieses Tutorial hilfreich?

Ihre Antwort wird anonym gespeichert und hilft uns, die Tutorials zu verbessern.

Kommentare

Noch keine Kommentare – stellen Sie die erste Frage zu diesem Tutorial.

Zum Kommentieren anmelden

Kommentare stehen centron-Kunden offen. Melden Sie sich in Ihrem Konto an, um eine Frage zu diesem Tutorial zu stellen.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren