удалить уровень R незарегистрированного объекта

У меня есть переменная с именем «feedb». Вот когда она была вызвана:

> feedb
[[1]]
[1] Nocoment
319 Levels:  - --- ... Variasu barang ditambah

[[2]]
[1] Mantao
319 Levels:  - --- ... Variasu barang ditambah

[[3]]
[1] Tolong takpilkan no resi pengiriman.
319 Levels:  - --- ... Variasu barang ditambah

Я не знаю, откуда берутся «319 уровней: --- ... Variasu barang ditambah». И я удаляю эту переменную

abc<-unlist(feedb)

и у него все еще есть уровень:

> abc
[1] Nocoment                                Mantao                              
[3] Tolong takpilkan no resi pengiriman.
319 Levels:  - --- ... Variasu barang ditambah

Что это за уровни? и как его удалить? Я хочу, чтобы abc содержал только значение. я пробовал StringAsFactor=FALSE, но его нельзя использовать


person Elbert    schedule 09.05.2016    source источник


Ответы (1)


Мы можем использовать droplevels, чтобы удалить неиспользуемые уровни, или снова вызвать factor. Это должно было произойти, когда столбец factor или vector подвергся подмножеству, но levels исходного вектора все еще остается.

 feedb[] <- lapply(feedb, droplevels)

Or

 feedb[] <- lapply(feedb, factor)

Или преобразовать в character

 feedb[] <- lapply(feedb, as.character)
person akrun    schedule 09.05.2016