Я борюсь с R уже 2 дня, не находя решения!
Вот моя проблема:
У меня есть список символов, извлеченный из одного фрейма данных: annotation$"SYMBOL"
Я хотел бы привязать его к другому фрейму данных, называемому «матрицей», и присвоить им имена строк.
Я извлек столбец, связал его без проблем. Тем не менее, я понял, что, как только это было сделано, изменение их на имена строк не работает, потому что ~ 5000 генов / 15000 затем изменяются как «NA»
Я понимаю, что на самом деле это все гены с «NA» в их символах, которые рассматриваются как «пропущенные значения»
Я пытаюсь изменить их as.character(annotation$"SYMBOL")
, но это не меняет ....
ЗДЕСЬ:
X=as.character(annotation$"SYMBOL")
summary(X)
Length Class Mode
16978 character character
unique (unlist (lapply (as.character(annotation$"SYMBOL"), function (x) which (is.na (x)))))
[1] 1
Y=na.exclude(X)
summary(Y)
Length Class Mode
9954 character character
U=na.exclude(annotation$"SYMBOL")
Error in `$<-.data.frame`(`*tmp*`, "SYMBOL", value = c("SCYL3", "C1orf112", :
replacement has 9954 rows, data has 16978
И я знаю, что они заменяют все гены "NA" в своих именах как NA ....
У кого-нибудь есть идеи, как go через это?
Например, номер 11 и номер 15 на этом изображении удаляются, когда я использую функцию "na.omit" ... .