2015-11-29 2 views
0

Контекст

Я учусь R и, следовательно, использовать imports85.RData (тусклый 205 х 27)
Частичное расширение кадра данных

Моя цель состоит в том, чтобы добавить строку только с частичными col.contents в пределах сценарий к файлу data.frame.

Столбец «make» является фактором с 22 уровнями.

Пример

Что я сделал:

Я скопировал 1-я строка и добавляется его к d.f. Затем я переписал 1-ю строчку с NA. Все идет нормально.

Вопрос

Теперь моя проблема: Я попробовал несколько способов, чтобы перезаписать, ничего не работает!

cars$make[1] <- "foo" 
cars[1,3] <- "foo" 
cars[1,3] <- factor("foo") 
cars[1,3] <- as.factor("foo") 
... 

и многое другое такого рода!

ответ

0

... что я нашел до сих пор:

Если перезапись с уровнем, не входит в фактор, я сделать простираться фактор первого, например,

levels(cars$make <-c(levels(cars$make),'new.foo')

Затем клетка может быть перезаписана, например,

cars$make[3] <- 'new.foo'

НО, если содержимое ячейки является NA, это не работает! Помощь Thx 4!

0

РЕШЕННЫЙ! (Есть misstyping в примере ДФ «Альфа-Ромеро»)

Строительство нового наблюдения со всеми в своих ВПЛ переменных ...

cars <- rbind(cars,cars[1,]); cars[1,] <- NA 

... расширение уровней и перезапись ...

levels(cars$make) <- c(levels(cars$make),'wolga'); cars$make[1] <- 'wolga' 

... приносит желаемый ... result ;-)

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