美文网首页
R如何reverse一个字符串

R如何reverse一个字符串

作者: 生信交流平台 | 来源:发表于2021-04-27 21:03 被阅读0次

我们知道在R里面颠倒一个向量用rev函数,但是这个函数貌似对字符串不起作用。

那么今天小编就来跟大家一起掰次掰次如何在R里面reverse一个字符串。那么颠倒一个字符串究竟有什么用呢?除了酷炫以外。当然是有用的,例如我们手上如果有一个DNA序列,我们如何去获取它的反向互补序列。今天我们先来解决反向的问题,下一次我们在来解决互补的问题。下面给大家介绍5种不同的方法。

假如现在我们手上有这么一条DNA序列,我们需要取它的反向序列

dna='ATTTAGCGATGCGGCTATGCTATCGGA'

方法1. strsplit分割成字符串向量,rev之后再合并起来

我们用proc.time()来计算以下每种方法所用的时间

start <- proc.time()
splits <- strsplit(dna, "")[[1]]
reversed <- rev(splits)
final_result <- paste(reversed, collapse = "")
final_result
end <- proc.time()
print(end - start)

方法2. 使用R内置的utf8ToInt函数将字符串转换成一个整数的数值向量,rev之后再转换成字符串

start <- proc.time()
final_result <- intToUtf8(rev(utf8ToInt(dna)))
final_result
end <- proc.time()
print(end - start)

方法3. 使用stringi包

library(stringi)
start <- proc.time()
final_result <- stri_reverse(dna)
final_result
end <- proc.time()
print(end - start)

方法4. 使用IRanges包

library(IRanges)
start <- proc.time()
final_result <- IRanges::reverse(dna)
final_result
end <- proc.time()
print(end - start)

方法5. 使用Biostrings包

我们前面在讲☞R如何将fasta转成dataframe的时候就使用过Biostrings这个R包。

library(Biostrings)
start <- proc.time()
final_result <- Biostrings::reverse(dna)
final_result
end <- proc.time()
print(end - start)

从上面的结果我们可以看出,方法3使用stringi包的速度最快。俗话说,条条大路通罗马,不管白猫还是黑猫,抓住老鼠就是好猫。

参考资料:

R如何将fasta转成dataframe

☞R如何reverse一个字符串

相关文章

  • 使用R获取DNA的反向互补序列

    前面跟大家聊了一下☞R如何reverse一个字符串[https://link.zhihu.com/?target=...

  • JS - 数组(2)

    join Q:如何快速制造出重复字符串 reverse, sort 调用 reverse, sort 会把原始数据...

  • freeCodeCamp 初级javascript算法体验

    1、翻转字符串(Reverse a String) 翻转字符串先把字符串转化成数组,再借助数组的reverse方法...

  • R如何reverse一个字符串

    我们知道在R里面颠倒一个向量用rev函数,但是这个函数貌似对字符串不起作用。 那么今天小编就来跟大家一起掰次掰次如...

  • FCC初级算法题简单分析

    1.Reverse a String 翻转字符串 要求:先把字符串转化成数组,再借助数组的reverse方法翻转数...

  • freeCodeCamp——算法挑战

    Reverse a String翻转字符串 先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后...

  • crtl + r search history

    Linux下的神器 ctrl + r (reverse-i-search ) 的使用方法: (reverse-...

  • Basic Algorithm Scripting

    1.Reverse a String 翻转字符串先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,...

  • Python Day3

    字符串反转 leetcode 34 Reverse String

  • JavaScript字符串倒置

    现有字符串varstr =“abcdefghk”,请为字符串类拓展一个reverse方法实现字符串的倒置,当str...

网友评论

      本文标题:R如何reverse一个字符串

      本文链接:https://www.haomeiwen.com/subject/geiprltx.html