You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R通过grep搜索按匹配模式生成df新列并追加匹配结果的实现问题

实现代码(R语言)

先定义输入变量,再逐模式匹配单词,对齐长度后拼接为数据框即可:

# 定义匹配模式与单词列表
patterns <- c("arm", "end", "tale")
words <- c("arm", "end", "fairytale", "armchair", "deadend", "farm")

# 提取每个模式对应的匹配单词列表
match_res <- lapply(patterns, function(pat) {
  words[grepl(pat, words)]
})

# 计算所有匹配结果的最大长度,补全空值对齐各列长度
max_length <- max(lengths(match_res))
match_res_fill <- lapply(match_res, function(x) {
  c(x, rep("", max_length - length(x)))
})

# 转换为指定结构的数据框
result_df <- setNames(data.frame(match_res_fill, check.names = FALSE), patterns)

输出验证

打印result_df即可得到要求的结构:

armendtale
armendfairytale
armchairdeadend
farm

内容的提问来源于stack exchange,提问作者Witness1123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 01:45:03