r - 为列表中的每个项目修剪字符后的文本 - R
问题描述
我正在尝试删除列表中每个元素之前的文本并包含一个字符(“-”)。
前任-
x = list(c("a-b","b-c","c-d"),c("a-b","e-f"))
所需的输出:
"b" "c" "d"
"b" "f"
我尝试过使用 and 的各种组合lapply
,gsub
例如
lapply(x,gsub,'.*-','',x)
但这只是返回一个空列表-
[[1]]
[1] ""
[[2]]
[1] ""
并且只使用
gsub(".*-","",x)
返回
"d\")" "f\")"
解决方案
这可以通过 for 循环来完成。
val<-list()
for(i in 1:length(x)){
val[[i]]<-gsub('.*-',"",x[[i]])}
val
[[1]]
[1] "b" "c" "d"
[[2]]
[1] "b" "f"
推荐阅读
- python - 如何从列表中删除重复值但使用循环让其中一个列表存在..我已尽力弄清楚但无法
- css - 可能带有过渡和模糊元素的 Chrome 错误
- html - SVG 路径大于 svg 容器
- c# - 如何指定单元格模板中使用的 XAML 仅在工具提示出现时执行?
- cypress - 如何获取元素的值并评估它在赛普拉斯中是否为负?
- karate - 在空手道中使用 jsonpath 检索 json 数组对象时出错
- javascript - TypeError:无法设置未定义的属性“旧”
- angular - 打字稿如何在没有引用的情况下复制对象
- xwiki - XWiki 自动通知电子邮件在超链接中包含一个额外的“/bin/”
- python - tf_sentencepiece、_sentencepiece_processor_ops.so.2.0.0-beta1 的问题:没有这样的文件或目录