在R中将FASTQ ASCII转换为十进制和十六进制

在R中将FASTQ ASCII转换为十进制和十六进制,r,ascii,fastq,R,Ascii,Fastq,我有一个FASTQ质量分数,它以一系列ASCII字符表示。在这种情况下(很可能)ASCII字符64到126表示0到62的a分数(假定它是Illumina)。这就产生了下面的顺序: feffefdfffcfdetdaddyddffbbfci``S_KKX\]]D_TY[VTVXQ]`Q_bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

我有一个FASTQ质量分数,它以一系列ASCII字符表示。在这种情况下(很可能)ASCII字符64到126表示0到62的a分数(假定它是Illumina)。这就产生了下面的顺序:

feffefdfffcfdetdaddyddffbbfci``S_KKX\]]D_TY[VTVXQ]`Q_bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

如何提取ASCII字符的数量

多谢各位 桑

编辑:
该序列表示由碱基组成的生物序列的质量(来自核酸中的碱基对,意思是字符(ATGC))。碱基质量是等于-10 log10 Pr{碱基错误}的短语缩放碱基错误概率.

好吧,正如马雷克所说:您可能会找到一个函数来转换Bioconductor中的Illumina质量分数。您可以访问

使用基本函数,可以使用
charToRaw()

>x图表视图(x)
[1] 66 65 66 66 64 62 65 66 63 60 5c 4b 4b 58 5d 5f 42 42
>as.数字(图表箭头(x))
[1] 102 101 101 102 102 100  98 101 102  99  96  92  75  75  88  93  95  66  66  66  66
>as.字符(charToRaw(x))
[1] “66”“65”“65”“66”“66”“64”“62”“65”“66”“63”“60”“5c”“4b”“4b”“58”“5d”“5f”“42”“42”

请注意,您必须避开反斜杠,否则您会遇到麻烦。这取决于您如何读取数据等等。

好吧,正如马瑞克所说:您可能会找到一个函数来转换Bioconductor中的Illumina质量分数。您可以访问

使用基本函数,可以使用
charToRaw()

>x图表视图(x)
[1] 66 65 66 66 64 62 65 66 63 60 5c 4b 4b 58 5d 5f 42 42
>as.数字(图表箭头(x))
[1] 102 101 101 102 102 100  98 101 102  99  96  92  75  75  88  93  95  66  66  66  66
>as.字符(charToRaw(x))
[1] “66”“65”“65”“66”“66”“64”“62”“65”“66”“63”“60”“5c”“4b”“4b”“58”“5d”“5f”“42”“42”

请注意,您必须避开反斜杠,否则您会遇到麻烦。这取决于您如何读取数据等等。

ASCII分数是什么意思?需要更多信息-所有这些字母是什么?您真的认为这对任何人都有意义吗?再试一次。请稍候,我重新启动水晶球。看起来像我。如果是的话然后尝试搜索。我不知道你们是谁,但我看到的都是金发和黑发!你说的ASCII分数是什么意思?需要更多信息-这些字母是什么?你真的认为这对任何人都有意义吗?再试一次。请稍候,我重新启动水晶球。看起来像我。如果是,请尝试搜索。我不知道你们这些家伙,但我看到的都是金发和黑发!围绕主题:如何用两个反斜杠替换反斜杠?我尝试了sub(“\\”,“/”,str),但出现了错误。围绕主题:如何用两个反斜杠替换反斜杠?我尝试了sub(“\\”,“/”,str),但出现了错误。
> x <- "feeffdbefc`\\KKX]_BBBB"
> charToRaw(x)
 [1] 66 65 65 66 66 64 62 65 66 63 60 5c 4b 4b 58 5d 5f 42 42 42 42
> as.numeric(charToRaw(x))
 [1] 102 101 101 102 102 100  98 101 102  99  96  92  75  75  88  93  95  66  66  66  66
> as.character(charToRaw(x))
 [1] "66" "65" "65" "66" "66" "64" "62" "65" "66" "63" "60" "5c" "4b" "4b" "58" "5d" "5f" "42" "42" "42" "42"