EvaluateInR: Unterschied zwischen den Versionen
PRanz (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
PRanz (Diskussion | Beiträge) |
||
Zeile 61: | Zeile 61: | ||
'''Die folgenden Änderungen beziehen sich nur auf JACK3.''' | '''Die folgenden Änderungen beziehen sich nur auf JACK3.''' | ||
Die | Die Funktion <code>evaluateInR</code> erlaubt kein Verschachteln von Funktionen. Es ist nur '''ein''' String als Argument erlaubt. | ||
Zum Konkatenieren von R-Ausdrücken und Variablen, ist es erlaubt diese direkt im String anzugeben. | Zum Konkatenieren von R-Ausdrücken und Variablen, ist es erlaubt diese direkt im String anzugeben. |
Version vom 16. Juli 2020, 09:36 Uhr
Zugehörige Evaluatoren
- MathEvaluator
Beschreibung
Mit der Funktion EvaluateInR ist es möglich R-Befehle auszuführen. Das Argument der Funktion ist eine Zeichenkette, welche in R direkt ausgeführt wird. In der Zeichenkette können FillInvariablen (pos), sowie Aufgabenvariablen (var) auftauchen. Diese Variablen werden dann automatisch in die R-Sprache übersetzt.
Syntax
Eine Variable Test kann dann folgendermaßen beschrieben werden:
<option name="Test" type="Typ" cas="Evaluator" value="evaluateInR('argument')" />
Parameter
- Typ - Entspricht dem Typen der Variable.
- argument - R-Befehl
Befehlsreferenz für R
In folgender Tabelle sind einige Beispiele, wie R verwendet werden kann. Die Variablen die damit gesetzt werden, können ebenfalls wieder in R angewandt werden oder auch für andere Zwecke im Evaluator verwendet werden.
argument | Typ | Beschreibung |
list(1, 2.34) | List | Eine Liste mit 2 Einträgen |
list(1, ...., n) | List | Eine Liste mit n Einträgen |
c(1,2,3,4,5,6) | Vektor | Eine Vektor mit der Länge 6 |
matrix(c(1,2,3,4,5,6),2,3) | Matrix | Eine 2x3-Matrix mit folgenden Einträgen: [1, 3, 5; 2, 4, 6] |
Eine Ausführliche Dokumentation findet man hier: [1]
Beispiele
Eine 3x3-Matrix als Variable mit Namen A erstellt man durch den folgenden Befehl:
<option name="A" type="matrix" cas="Evaluator" value="evaluateInR('matrix(c(1,2,3,4,5,6,7,8,9),3,3)')" />
In dem folgenden Beispiel wird eine Matrixvariable "A" erzeugt und anschließend der Rang von "A" in der Variable "rang" gespeichert.
<variables>
<option name="A" type="matrix" cas="Evaluator" value="evaluateInR('matrix(c(1,2,3,4,5,6,7,8,9),3,3)')" />
<option name="rang" type="vector" cas="Evaluator" value="evaluateInR('rank([var=A])')" />
</variables>
Änderungen in JACK3
Die folgenden Änderungen beziehen sich nur auf JACK3.
Die Funktion evaluateInR
erlaubt kein Verschachteln von Funktionen. Es ist nur ein String als Argument erlaubt.
Zum Konkatenieren von R-Ausdrücken und Variablen, ist es erlaubt diese direkt im String anzugeben.