如何在向前斜杠之后提取最后一段文字
我有一个看起来像这样的df:
af | gt | sample_name |
---|---|---|
0.001 | 1/1 | path/to/sample/name/id0001.vcf.gz |
0.005 | 0/1 | path/to/sample/name/name/id0002.vcf.gz |
我想要的是要仅在sample_name列中保留ID名称:
AF | GT | Sample_name |
---|---|---|
0.001 | 1/1 | ID0001 |
0.005 | 0/1 | ID0002 |
我非常感谢您为实现这一目标的任何帮助。
I have a df that looks like this:
AF | GT | Sample_name |
---|---|---|
0.001 | 1/1 | path/to/sample/name/ID0001.vcf.gz |
0.005 | 0/1 | path/to/sample/name/ID0002.vcf.gz |
What I want is to only keep the ID name in the Sample_name column:
AF | GT | Sample_name |
---|---|---|
0.001 | 1/1 | ID0001 |
0.005 | 0/1 | ID0002 |
I would very much appreciate any help in achieving this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以在此处使用一些内置的文件名助手。
basename()
工具:: file_path_sans_ext()
因此,在此示例中只需:
There are some built in file name helpers that you can use here.
basename()
tools::file_path_sans_ext()
So in this example simply do:
您可以使用
gsub()
:跨您的数据框架使用REGEX模式:
You can use a regex pattern with
gsub()
:Across your dataframe:
这是整理解决方案。请注意,仅当您ID字符串始终具有:ID之后的4个数字时才有效:
Here is tidyverse solution. Note this only works if you ID string has always: ID followed by 4 numbers:
使用
sub
与basename
获取示例名称:输出:
数据
Using
sub
withbasename
to take the sample name:Output:
Data