Предположим, у меня есть data.frame с N строками. Столбец id
имеет 10 уникальных значений; все эти значения являются целыми числами, превышающими 1е7. Я хотел бы переименовать их в число от 1 до 10 и сохранить эти новые идентификаторы в качестве столбца в моем файле data.frame.Переименование больших идентификаторов
Кроме того, я хотел бы легко определить 1) id
данной id.new
и 2) id.new
данной id
.
Например:
> set.seed(123)
> ids <- sample(1:1e7,10)
> A <- data.frame(id=sample(ids,100,replace=TRUE),
x=rnorm(100))
> head(A)
id x
1 4566144 1.5164706
2 9404670 -1.5487528
3 5281052 0.5846137
4 455565 0.1238542
5 7883051 0.2159416
6 5514346 0.3796395
ooooh. Не думал об этом. Это довольно пятно. Есть ли способ легко восстановить отображение? –
Просто сохраните 'unique (A $ id)' - он эквивалентен 'levels (factor (A $ id))' – hadley