Skip to content
RATH
Daten vorbereiten
Individuelle Berechnung

Benutzerdefinierte Berechnung

Die benutzerdefinierte Berechnung ist ein leistungsstarkes Feature, das von RATH bereitgestellt wird und es Ihnen ermöglicht, Ihre Daten flexibel mit regulären Ausdrücken zu bearbeiten.

Benutzerdefinierte Berechnungskonsole

Nachdem Sie die Daten aus Ihrer ausgewählten Datenquelle importiert haben, können Sie auf die Schaltfläche Benutzerdefinierte Berechnung klicken, um die Konsole zu öffnen.

Die Benutzerdefinierte Berechnungskonsole verfügt über einen Editor, der sich auf der oberen linken Seite befindet, in dem Sie reguläre Ausdrücke eingeben können. RATH wird Vorschläge machen, während Sie eingeben, und Sie können den Vorschlag bestätigen, indem Sie auf die Aufforderung klicken oder die Tab-Taste drücken.

Wenn ein Ausdruck ungültig ist, wird in der unteren linken Ecke eine Fehlermeldung angezeigt. Wenn der Ausdruck gültig ist, wird die Vorschau des Ausgabe-Diagramms (Verteilungsdiagramme) der Spalte in Echtzeit auf der rechten Seite aktualisiert. Verwendung der Benutzerdefinierten Berechnungskonsole

Ausdruckssyntax

Grundlagen

Felder

Benutzerdefinierte Berechnungsausdrücke verweisen auf ein Feld (sowohl das Original- als auch das erweiterte Feld) anhand einer Feld-ID. Im Editor können Sie den Namen des Feldes eingeben und nach einer intelligenten Abstimmung das entsprechende Feld auswählen.

Feldtypen

Der Datentyp des Felds, auf das sich der Benutzerdefinierte Berechnungsausdruck bezieht, umfasst die folgenden drei Typen:

  • set-Typ: ein geordneter Zahlen-Typ, der eine Ordnungszahl darstellt und nicht an mathematischen Operationen beteiligt ist.
  • group-Typ: diskreter Zahlen-Typ, der an mathematischen Operationen beteiligt ist.
  • collection-Typ: Zeichenketten-Typ

Der Operator des Benutzerdefinierten Berechnungsausdrucks hängt eng mit dem Datentyp zusammen, und falls erforderlich, verwenden Sie den entsprechenden Operator, um die Spalte zu transformieren (dadurch wird eine neue Spalte erstellt, anstatt die ursprüngliche Spalte zu ändern).

Literale

Benutzerdefinierte Berechnungsausdrücke unterstützen teilweise JavaScript-Zahlen- und Zeichenkettenliterale.

Anweisung

Benutzerdefinierte Berechnungsausdrücke bestehen aus Operatoren, Feldverweisen, Literalen und Operatoren. Operatoren bilden den Kern der Funktionalität der Benutzerdefinierten Berechnung. Benutzerdefinierte Berechnungsausdrücke sollten verschachtelbare Operatoren verwenden und mindestens ein neues Feld generieren und exportieren. Der äußerste Benutzerdefinierte Berechnungsausdruck kann mehrere Berechnungsanweisungen mit Kommas (",") trennen, um schnell einige unabhängige Felder für den Berechnungsprozess zu erstellen. Semikola sollten nicht in Ausdrücken verwendet werden.

DateTime-Objekt

Ein DateTime-Objekt ist eine spezielle Art von Objekt, das vom $toDate-Operator zurückgegeben wird. Bei direkter Ausgabe wird eine Spalte mit einem Zeitstempel (einer Spalte vom Typ group) generiert. Es kann auch geschnitten werden, um neue einzelne oder mehrere Spalten zu konstruieren. Die Schreibweise für das Schneiden lautet <DateTime-Objekt>.<Abmessungsbezeichnung>. Gültige Abmessungsbezeichnungen umfassen J, M, W, T, h, m, s.

Operator

Operatoren sind Funktionen, die auf Feldern oder anderen Objekten operieren. Operatorbezeichner beginnen mit dem Symbol $. Die Aufrufsyntax für einen Operator lautet <Operator>(<Parameter 1>, <Parameter 2>...).

Schlüsselwörter

Operator out

Für eine neue erweiterte Spalte, die durch eine Berechnung generiert wird, fügen Sie vor der Berechnungsanweisung das Schlüsselwort out hinzu, um sie zu exportieren. Der out-Operator kann auf jeder Ebene einer verschachtelten Operation platziert werden. **Benutzerdefinierte Berechnungsausdrücke müssen mindestens eine **out**-Anweisung enthalten. ** Sie können nach dem Schlüsselwort out ein Wort ohne Sonderzeichen hinzufügen, das den Namen des exportierten Feldes darstellt. Insbesondere muss für das durch die vier Grundrechenarten generierte Feld sein Name explizit angegeben werden.

Beispiele:

Häufig verwendete Operatoren

Typkonvertierung

$set(group|collection) -> set

Konvertiert eine Spalte des Typs set von einer Spalte eines nicht set-Typs.

$group(set|collection) -> group

Transformiert eine Spalte des Typs group von einer Spalte eines nicht group-Typs. Nützlich bei mathematischen Operationen auf Feldern (Sie müssen sich sicher sein, dass die Operationen sinnvoll sind).

$nominal(set|group) -> collection

Transformiert eine Spalte des Typs collection von einer Spalte eines nicht collection-Typs.

Erzeugung geordneter Zahlen

$id() -> set

Generiert IDs, die bei 1 beginnen.

$order(set|group) -> set

Erzeugt die mathematische Reihenfolge (beginnend bei 1) aller Zeilen in einem Feld.

$dict(collection) -> set

Erzeugt die lexikographische Reihenfolge (beginnend bei 1) aller Zeilen in einem Feld.

Datenstandardisierung

$inset(group) -> group

Stellt ein Feld auf den Intervall -1 ~ 1 standardisiert ein.

$bound(group) -> group

Stellt ein Feld auf den Intervall 0 ~ 1 standardisiert ein.

$normalize(group) -> group

Normalisiert ein Feld mit Hilfe der Z-Score.

Nichtlineare Transformation

$log(group) -> group, $log(group, JS.number) -> group

Logarithmische Abbildung, die Basis kann angegeben werden und ist standardmäßig der natürliche Logarithmus.

$log2(group) -> group

$log10(group) -> group

$log1p(group) -> group

Entspricht $log(group + 1).

$sigmoid(group) -> group

$ReLU(group) -> group

Datenbereinigung

$isNaN(set|group) -> collection

Gibt "1" zurück, wenn die Zeile in einem Feld NaN ist, oder "0", wenn nicht.

$isZero(set|group) -> collection

Gibt "1" zurück, wenn die Zeile in einem bestimmten Feld 0 ist, oder "0", wenn nicht.

$zeroFill(group) -> group

Ordnet Ausreißer (±Infinity | NaN) in der Zeile eines Feldes der 0 zu.

$meanFill(group) -> group

Ordnet Ausreißer (±Infinity | NaN) in der Zeile eines Feldes dem Durchschnitt der nicht-Ausreißer zu.

$nearestClip(group, JS.number, JS.number) -> group

Gibt einen Bereich an, und der Wert der Zeile in einem bestimmten Feld, der diesen Bereich überschreitet, wird auf den nächstgelegenen Grenzwert als Ausreißer abgebildet.

$meanClip(group, JS.number, JS.number) -> group

Bitte stellen Sie die deutsche Übersetzung dieser Markdown-Datei zur Verfügung, ohne den eingebetteten Code zu übersetzen: Geben Sie einen Bereich an, und der Wert der Zeile in einem Feld, das außerhalb dieses Bereichs liegt, wird auf den Durchschnittswert der Nicht-Ausreißerwerte als Ausreißer abgebildet.

$boxClip(group) -> group

Verwenden Sie die Boxplot-Statistik, um Ausreißer in einem Feld zu markieren und durch NaN zu ersetzen.

Zeichenketten-Manipulation

$concat(collection, ...collection) -> collection, $concat(JS.string, collection, ...collection) -> collection

Verkettet den Inhalt mehrerer Zeichenketten-Spalten nacheinander mit einem Trennzeichen (standardmäßig ,) als neue Spalte.

Datum und Uhrzeit

$toDate(group|set|collection)

Dieser Operator führt eine besondere Art von DateTime-Objekt ein und gibt eine Instanz dieses Objekts zurück.

Beste Praktiken

Normalisierungstransformation

Nichtlineare Abbildung

In diesem Fall versuchen wir, die Spalte casual aus der Bike Sharing Demo Database mit einer nichtlinearen Abbildung zu transformieren. Nichtlineare Abbildung

Abrufen von DateTime-Informationen

Wir können die DateTime-Informationen aus der Bike Sharing Demo Database abrufen, wobei _c_4 das Jahr und _c_1 der Monat ist.

Anschließend können wir den Parameter Wochentag berechnen.