У меня есть наборы данных A и B с идентичной структурой. Я хочу отфильтровать набор B по набору уровней в пределах одного фактора, где уровни одинаковы как в A, так и в B. Другими словами, чтобы сохранить строки в B, используя общие уровни для одного фактора в A и B.
Я использовал следующее для извлечения общих уровней
InBoth <- intersect(levels(A$FactorName , B$FactorName)
Я считаю, что это вектор chr и ДЕЙСТВИТЕЛЬНО дает правильный список общих значений.
Я просто не могу похоже, применяет этот список к набору фильтров B с использованием InBoth, так что B впоследствии содержит только строки, где B$Factorname
находится в наборе InBoth.
Я относительно новичок в R и учусь, как I go, так что заранее большое спасибо, если вы можете помочь.
ОБНОВЛЕНИЕ Как только я отправил ... Я подумал о другом. Следующее работает для подмножества B с использованием (одного) известного общего уровня
BFiltered <- B[(B$FactorName == "xxx",]
Но я хочу, чтобы BFiltered включал все уровни в элементе InBoth (которые появляются в части значений среды). То есть как заменить "xxx" на InBoth?