Todos:¿Cómo particionar al clasificar en una columna en particular?
tengo una trama de datos como el follow.I sabe que puedo hacer una orden de importancia mundial como esto:
dt <- data.frame(
ID = c('A1','A2','A4','A2','A1','A4','A3','A2','A1','A3'),
Value = c(4,3,1,3,4,6,6,1,8,4)
);
> dt
ID Value
1 A1 4
2 A2 3
3 A4 1
4 A2 3
5 A1 4
6 A4 6
7 A3 6
8 A2 1
9 A1 8
10 A3 4
dt$Order <- rank(dt$Value,ties.method= "first")
> dt
ID Value Order
1 A1 4 5
2 A2 3 3
3 A4 1 1
4 A2 3 4
5 A1 4 6
6 A4 6 8
7 A3 6 9
8 A2 1 2
9 A1 8 10
10 A3 4 7
Pero cómo puedo fijar un orden de rango para un ID particular, en lugar de un orden de rango global. ¿Cómo puedo hacer esto? En T-SQL, podemos hacer esto con la siguiente sintaxis:
RANK() OVER ([ <partition_by_clause> ] <order_by_clause>)
¿Alguna idea?
Gracias, Tyler. – RobinMin