Versuchen:
A <- c("A","A","B","B", "C","C","C", "D")
as.numeric(factor(A))
[1] 1 1 2 2 3 3 3 4
und im Fall, dass Sie wirklich eine Sequenz von 1 bis zur length
des Vektors:
labels(factor(A))
[1] "1" "2" "3" "4" "5" "6" "7" "8"
oder
1:length(A)
[1] 1 2 3 4 5 6 7 8
Wenn die erste Sequenz ist Was Sie wollen, können Sie plyr::mapvalues
interessant finden, wenn Sie mehr comp haben Fälle zu einem bestimmten Zeitpunkt Zum Beispiel
library(plyr)
mapvalues(A, from=unique(A), to=1:4)
[1] "1" "1" "2" "2" "3" "3" "3" "4"
Dies ist praktisch, wenn Sie ein bisschen mehr Kontrolle benötigen. Zum Beispiel könnten Sie leicht andere Ausgabe als to
Argument, z. month.name[1:4]
.
Was ist Ihre erwartete Antwort. Die Länge von "A" und "B" ist unterschiedlich – akrun
Der Vektor B ist meine Antwort. Ich habe A und möchte es in B verwandeln – nouse
Aber A hat 8 Elemente und B mit 9 – akrun