2016-03-11 3 views

ответ

0

Мы извлекаем levels из интересующей колонки ('ColN'), конвертируем в list и присваиваем это пяти «новым» столбцам.

df1[paste0("new", 1:5)] <- as.list(levels(df1$ColN)) 
head(df1,2) 
# ColN Col2 Col3 new1 new2 new3 new4 new5 
#1 C 7 a A B C D E 
#2 A 4 b A B C D E 
levels(df1$ColN) 
#[1] "A" "B" "C" "D" "E" 
данные
set.seed(48) 
df1 <- data.frame(ColN= sample(LETTERS[1:5], 10, 
    replace=TRUE), Col2= sample(10), Col3= letters[1:10]) 
+0

Это не дает ошибку, но ничего на все –

+0

@ R.D не изменится. Он выполняет изменения, основанные на примере, который я обновил. – akrun

Смежные вопросы