данных содержит два столбца - фактор SOC с уровнями символов и целым количество Count:Одним из уровней фактора является пустая строка; как заменить его не пропущенным значением?
> str(AEbySOC)
'data.frame': 19 obs. of 2 variables:
$ SOC : Factor w/ 19 levels "","Blood and lymphatic system disorders",..: 1 2 3 4 5 6 7 8 9 10 ...
$ Count: int 25 50 7 3 1 49 49 2 1 9 ...
Один из уровней SOC является пустой строкой символов:
> l = levels(AEbySOC$SOC)
> l[1]
[1] ""
Я хочу, чтобы заменить значение этого уровня непустой строкой, скажем, «Не указано». Это не работает:
> library(plyr)
> revalue(AEbySOC$SOC, c(""="Not specified"))
Error: attempt to use zero-length variable name
Ни делает это:
> AEbySOC$SOC[AEbySOC$SOC==""] = "Not specified"
Warning message:
In `[<-.factor`(`*tmp*`, AEbySOC$SOC == "", value = c(NA, 2L, 3L, :
invalid factor level, NA generated
Что правильный способ осуществить это? Я ценю любой ввод/комментарий.