如何从R中的字符串列表中删除元素

时间:2013-07-16 18:15:27

标签: r string list

在少数不太相关的人中,我检查了这两个答案:
Answer 1
Answer 2

然而,那里提出的解决方案没有帮助。

我可能误解了自己的问题并试图以错误的方式做正确的事情。我感谢任何帮助。

我有以下代码,我在其中构建字符串列表并尝试删除列表的第二个元素:

> my_strings <- "string1 string2 string3 string4 string5"
> my_list <- strsplit(my_strings,split=" ")
> #Now trying to delete one element from my_list using positive indexing
>
> my_list[[2]] <- NULL #does not work
> my_list[2] <- NULL #nope. Doesn't work either
> my_list[[1]][2] <- NULL #error: replacement has length zero
> my_list[[1]][[2]] <- NULL # error: more elements supplied than there are to replace

所以,我的问题是:如何删除my_list的第二个元素(或多个元素,如1和3)? my_list的元素未命名,我想通过数字索引访问它们。

1 个答案:

答案 0 :(得分:2)

我不确定你打算用你的代码创建一个向量列表;可能更容易使用字符向量。首先尝试使用取消列表:

my_list <- unlist(strsplit(my_strings,split=" "))

my_list <- my_list[-2]