A: eine vollständige anleitung zur tie.method in der ranking-funktion
Sie können die Funktion Rank() in Basis R verwenden, um eine Rangfolge von Werten in einem Vektor zurückzugeben.
Diese Funktion verwendet die folgende grundlegende Syntax:
rank(x, na.last=TRUE,ties.method=“average“)
Gold:
- x : Der Vektor, der die zu klassifizierenden Werte enthält
- na.last : Wenn TRUE, werden fehlende Werte an letzter Stelle gesetzt. Bei FALSE werden fehlende Werte an die erste Stelle gesetzt.
- tie.method : Wie man mit Unentschieden umgeht (Standard ist „durchschnittlich“)
Das Argument Ties.method der Funktion Rank() gibt an, wie Bindungen gehandhabt werden sollen.
Dieses Argument akzeptiert die folgenden Optionen:
- Durchschnitt : (Standard) Weist jedem verknüpften Element den durchschnittlichen Rang zu (Elemente auf Platz 3 und 4 würden beide einen Rang von 3,5 erhalten)
- first : Weist dem ersten verknüpften Element den niedrigsten Rang zu (Elemente auf Platz 3 und 4 würden Rang 3 bzw. 4 erhalten)
- last : Weist dem zuletzt verknüpften Element den niedrigsten Rang zu (Elemente auf Platz 3 und 4 würden Rang 4 bzw. 3 erhalten)
- min : Weist jedem verknüpften Element den niedrigsten Rang zu (Elemente auf Platz 3 und 4 würden beide einen Rang von 3 erhalten)
- max : Weist jedem verknüpften Element den höchsten Rang zu (Elemente auf Platz 3 und 4 würden beide einen Rang von 4 erhalten)
- random : Weist jedem Element mit Gleichstand einen zufälligen Rang zu (jedes der Elemente mit Gleichstand auf dem 3. und 4. Platz könnte einen der beiden Ränge erhalten)
Die folgenden Beispiele zeigen, wie jede Option in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'), dots=c(5, 8, 10, 10, 17)) #view data frame df player points 1 to 5 2 B 8 3 C 10 4 D 10 5 E 17
Beispiel 1: Verwenden Sie Rank() mit Ties.method=“average“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“average“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = “ average ”) #view updated data frame df player points points_rank 1 to 5 1.0 2 B 8 2.0 3 C 10 3.5 4 D 10 3.5 5 E 17 5.0
Da die Spieler C und D die gleiche Punktzahl hatten und auf den Plätzen 3 und 4 lagen, erhielten beide ihren Ranglistendurchschnitt: 3,5 .
Beispiel 2: Verwenden Sie Rank() mit Ties.method=“first“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“first“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " first ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 3 4 D 10 4 5 E 17 5
Da die Spieler C und D die gleiche Punktzahl hatten und die Plätze 3 und 4 belegten, erhielt der erste Spieler zwischen diesen beiden (Spieler „C“) den niedrigsten Rang.
Beispiel 3: Verwenden Sie Rank() mit Ties.method=“last“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“last“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " last ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 3 5 E 17 5
Da die Spieler C und D die gleiche Punktzahl hatten und die Plätze 3 und 4 belegten, erhielt der letzte Spieler zwischen diesen beiden (Spieler „D“) den niedrigsten Rang.
Beispiel 4: Verwenden Sie Rank() mit Ties.method=“min“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“min“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " min ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 3 4 D 10 3 5 E 17 5
Da die Spieler C und D die gleiche Punktzahl hatten und auf den Plätzen 3 und 4 lagen, erhielten beide Spieler den Mindestrang: 3 .
Beispiel 5: Verwenden Sie Rank() mit Ties.method=“max“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“max“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " max ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 4 5 E 17 5
Da die Spieler C und D die gleiche Punktzahl hatten und auf den Plätzen 3 und 4 lagen, erhielten beide Spieler den maximalen Rang: 4 .
Beispiel 6: Verwenden Sie Rank() mit Ties.method=“random“
Der folgende Code zeigt, wie man eine neue Spalte erstellt, die Rank() mit Ties.method=“random“ verwendet, um jedem Spieler basierend auf dem Wert der Punktespalte einen Rang zuzuweisen:
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " random ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 3 5 E 17 5
Da die Spieler C und D die gleiche Punktzahl hatten und auf den Plätzen 3 und 4 lagen, wurde jedem Spieler zufällig der Rang 3 oder 4 zugewiesen.
Beachten Sie, dass sich der jedem Wert zugewiesene Rang jedes Mal ändern kann, wenn Sie „random“ für tie.method verwenden, wenn Sie den Code ausführen.
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in R ausführen:
So verwenden Sie sort(), order() und Rank() in R
So berechnen Sie den Perzentilrang in R
So sortieren Sie mit dplyr nach Gruppen