我有以下向量:
test <- c("here is some text", "here is some other text", "here is my formula", "2+2", "here is my second formula", "4+4", "here is even more text", "here is my final formula", "6+6")
我希望做的是获取包含“formula”的字符串的每个示例,并在它前面插入一个随机字符串,如“CCC”,这样我就有了如下内容:
test <- c("here is some text", "here is some other text", "CCC", "here is my formula", "2+2", "CCC", "here is my second formula", "4+4", "here is even more text", "CCC", "here is my final formula", "6+6")
4条答案
按热度按时间b0zn9rqh1#
这些仅使用碱基R:
**1)**使用
append
,如图所示:**2)**这里有三个不同的一行程序。
第一个创建一个矩阵,其第一行包含“CCC”和NA元素,第二行为
test
。第二个迭代测试,如果元素中不包含公式,则输出元素或元素后面的向量“CCC”。这会产生一个未列出的列表。
第三种方法在任何包含公式的元素前面加上“CCC\n”,然后将其拆分。
nukf8bse2#
下面是
tidyverse
中的一个选项8ftvxx2r3#
更新:改进代码:
下面是另一种方法:我已经提到过了:对我来说,在这种情况下,用 Dataframe 或tibble来思考要容易得多:
f0brbegy4#
下面是一个基本的R方法,使用
grepl/cumsum
创建一个分组向量,每个组从"formula"
字符串开始。然后by
将在其位置插入"CCC"
。创建于2023年3月30日,使用reprex v2.0.2