Доступ к элементам в списке с помощью R, объединение после разделения и применения

Я только начинаю процесс очистки строк с помощью R и уже многому научился. Часть текущего проекта, на которой я застрял, (я думаю) во многом связана со ссылками на значения в списке. Я пытаюсь использовать метод разделения-применения-объединения, и у меня возникают проблемы с возвращением к форме данных, которую я хочу получить в конце.

Я пробовал различные варианты which(), unlist() и any() но, похоже, просто не могу получить то, что я ищу, - вот я и сижу за помощь. Спасибо.

У меня есть длинный список строк ...

> dput(x) 

list(c("ACETATE", "RINGERS"), "ACETYLCYSTEINE", c("ACETYLSALICYLIC", 
"ACID"), "ADIRAMYCIN", c("ADRENALINE", "00003901"), "ALEMTUZUMAB")

> x

[[1]]
[1] "ACETATE" "RINGERS"

[[2]]
[1] "ACETYLCYSTEINE"

[[3]]
[1] "ACETYLSALICYLIC" "ACID"           

[[4]]
[1] "ADIRAMYCIN"

[[5]]
[1] "ADRENALINE" "00003901"  

[[6]]
[1] "ALEMTUZUMAB"

Я написал простой код для удаления определенных слов из списка ...

bad.words <- c("ACID", "BASE", "HYDROCHOLIRDE", "STUFF")
a <- lapply(x, function(x) x %in% bad.words) 

> a

[[1]]
[1] FALSE FALSE

[[2]]
[1] FALSE

[[3]]
[1] FALSE  TRUE

[[4]]
[1] FALSE

[[5]]
[1] FALSE FALSE

[[6]]
[1] FALSE

Я хотел бы иметь возможность создать z, чтобы оно было x без bad.words.

> z

[[1]]
[1] "ACETATE" "RINGERS"

[[2]]
[1] "ACETYLCYSTEINE"

[[3]]
[1] "ACETYLSALICYLIC"           

[[4]]
[1] "ADIRAMYCIN"

[[5]]
[1] "ADRENALINE" "00003901"  

[[6]]
[1] "ALEMTUZUMAB"
4 голоса | спросил Ryan 24 FebruaryEurope/MoscowbTue, 24 Feb 2015 20:45:54 +0300000000pmTue, 24 Feb 2015 20:45:54 +030015 2015, 20:45:54

1 ответ


0

Вы были почти там:

lapply(x, function(z) z[! (z %in% bad.words)])

Кроме того, вы можете сделать

lapply(x, function(z) setdiff(z,bad.words))

что мне кажется более элегантным.

ответил Marat Talipov 24 FebruaryEurope/MoscowbTue, 24 Feb 2015 20:51:31 +0300000000pmTue, 24 Feb 2015 20:51:31 +030015 2015, 20:51:31

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132