用R实现Excel单元格中数字的提取

xuo3flqw  于 2023-03-05  发布在  其他
关注(0)|答案(2)|浏览(186)

这些是我在一个df中的突变细节(染色体10:63661472 G〉C,染色体14:105246551 C〉T,染色体16:2225614 G〉T)
我只想提取职位数,我想要这样的最终文件,63661472 105246551 2225614
我该怎么做呢?
谢谢

yb3bgrhw

yb3bgrhw1#

有很多方法可以做到这一点。
下面是extract的例子:

library(tidyr)
df %>%
    extract(cells, into = "numbers", regex = ".*:(\\d+).*", remove = FALSE)
                cells   numbers
1  chr10:63661472 G>C  63661472
2 chr14:105246551 C>T 105246551
3   chr16:2225614 G>T   2225614

下面是一个使用str_extract和正后视的示例:

library(stringr)
df %>%
  mutate(numbers = str_extract(cells, "(?<=:)\\d+"))

下面是一个使用sub和反向引用的示例:

df %>%
  mutate(numbers = sub(".*:(\\d+).*", "\\1", cells))

数据:

df <- data.frame(
  cells = c("chr10:63661472 G>C","chr14:105246551 C>T", "chr16:2225614 G>T")
)
fd3cxomn

fd3cxomn2#

最简单的方法是使用以下代码:

numbers <- sub(".*:(\\d+).*", "\\1", df)

相关问题