Reordenar el marco de datos según el vector de caracteres

Creo que esto debería ser realmente simple, pero no puedo encontrar una manera de hacerlo.

Quiero reordenar un marco de datos basado en un factor. Todas las respuestas que puedo encontrar hasta ahora proporcionan una clasificación lógica, pero esto es arbitrario y una mezcla de números y letras. Tal vez sea un problema porque es unfactor No unvector? Pero ninguna de las respuestas para vectores parece funcionar tampoco.

Cualquier sugerencia sería muy apreciada!

Datos de ejemplo (nota; estos datos son solo para esta pregunta, en mi código real el marco de datos es la salida de algunos otros cálculos, por lo que no puedo alterar los nombres a algo sensato desde el principio)

DATA<- data.frame(This=c("120", "60", "90", "OG"), That=c(453, 679,12,252))

DATA

  This That
1  120  453
2   60  679
3   90   12
4   OG  252

Quiero ordenarlo en el orden 60 - 90 - 120 - OG, es decir

  This That
1  60   679
2  90   12
3  120  453
4  OG   252

Editar: Esta no es una pregunta duplicada. Como se explicó anteriormente, y en el comentario a continuación, la clasificación es arbitraria. La clasificación lexicográfica supone que los nombres de las filas están interrelacionados, ese no es el caso aquí. Podría haber etiquetado las filas("unicorn", "18.1", "TREES", "234234235") y los quería en el orden("234234235", "unicorn", "TREES", "18.1")

Respuestas a la pregunta(2)

Su respuesta a la pregunta