如何在R中连接每个样本的两个DNAStringSet序列?
我有两个如何在R中连接每个样本的两个DNAStringSet序列?,r,concatenation,bioconductor,R,Concatenation,Bioconductor,我有两个大型DNAStringSet对象,其中每个对象包含2805个条目,每个条目的长度为201。我想简单地将它们组合起来,这样就有2805个条目,因为每个条目都是这个大小,但我想有一个对象,两者的组合 我试着这么做 s12 <- c(unlist(s1), unlist(s2)) 如果您的目标是返回一个列表,其中每个列表元素都是原始列表中相应列表元素的串联,并在长度为2805的列表中重新排序,其中每个列表元素的长度为402,则可以使用映射实现这一点。下面是一个示例,其中包含一对较小的列
大型DNAStringSet
对象,其中每个对象包含2805个条目,每个条目的长度为201。我想简单地将它们组合起来,这样就有2805个条目,因为每个条目都是这个大小,但我想有一个对象,两者的组合
我试着这么做
s12 <- c(unlist(s1), unlist(s2))
如果您的目标是返回一个列表,其中每个列表元素都是原始列表中相应列表元素的串联,并在长度为2805的列表中重新排序,其中每个列表元素的长度为402,则可以使用
映射实现这一点。下面是一个示例,其中包含一对较小的列表
# set up the lists
set.seed(1234)
list.a <- list(a=1:5, b=letters[1:5], c=rnorm(5))
list.b <- list(a=6:10, b=letters[6:10], c=rnorm(5))
对于您描述的问题,您将使用
s12 <- Map(c, s1, s2)
s12如果您的目标是返回一个列表,其中每个列表元素都是原始列表中相应列表元素的串联,然后重新输入一个长度为2805的列表,其中每个列表元素的长度为402,那么您可以使用Map
实现这一点。下面是一个示例,其中包含一对较小的列表
# set up the lists
set.seed(1234)
list.a <- list(a=1:5, b=letters[1:5], c=rnorm(5))
list.b <- list(a=6:10, b=letters[6:10], c=rnorm(5))
对于您描述的问题,您将使用
s12 <- Map(c, s1, s2)
s12您可以将每个DNAStringSet
转换为字符。例如:
library(Biostrings)
set1 <- DNAStringSet(c("GCT", "GTA", "ACGT"))
set2 <- DNAStringSet(c("GTC", "ACGT", "GTA"))
as.character(set1)
as.character(set2)
您可以将每个DNAStringSet
转换为字符。例如:
library(Biostrings)
set1 <- DNAStringSet(c("GCT", "GTA", "ACGT"))
set2 <- DNAStringSet(c("GTC", "ACGT", "GTA"))
as.character(set1)
as.character(set2)
这是否意味着您想要一个长度为2805的列表,每个列表的长度为402?您使用的是什么包?您的目标是一个具有2805行和2列的表。如果每个条目都是由201个核苷酸组成的DNA字符串?@Sergio.pv不完全一样,我的目标是DNAStringSet
对象,该对象将有2805个条目,每个条目将是两个对象的两个序列的串联。例如,我有一个s1
对象,它有2805个条目,每个条目有201个长度序列,而s2
对象类似。我想让s12
有2805个条目,每个序列的长度为402,在s1
序列的末尾,我们连接s2
序列。第一个序列有第一个,第二个序列有第二个,依此类推。这个问题和提供的答案忽略了序列名,这可能会产生嵌合体。我问了一个新问题并提供了一个答案来解决这个问题。这是否意味着您想要一个长度为2805的列表,每个列表的长度为402?您使用的是什么软件包?您的目标是一个具有2805行和2列的表。如果每个条目都是由201个核苷酸组成的DNA字符串?@Sergio.pv不完全一样,我的目标是DNAStringSet
对象,该对象将有2805个条目,每个条目将是两个对象的两个序列的串联。例如,我有一个s1
对象,它有2805个条目,每个条目有201个长度序列,而s2
对象类似。我想让s12
有2805个条目,每个序列的长度为402,在s1
序列的末尾,我们连接s2
序列。第一个序列有第一个,第二个序列有第二个,依此类推。这个问题和提供的答案忽略了序列名,这可能会产生嵌合体。我问了一个新问题,并提供了一个答案来解决这个问题。是的,我只想这样,但你的方法对我不起作用。我试过这个,s12但是什么是串联函数?我只想纯粹地连接它们,我的意思是连接到s1
中第一个序列的末尾,我想连接s2
中的第一个序列,第二个序列与第二个序列,第三个序列与第三个序列,依此类推。如果我做s12是的,我只想这样,但你的方法对我不起作用。我试过这个,s12但是什么是串联函数?我只想纯粹地连接它们,我的意思是连接到s1
中第一个序列的末尾,我想连接s2
中的第一个序列,第二个序列与第二个序列,第三个序列与第三个序列,依此类推。如果我连接s12,我只需要连接序列,并继续使用DNAStringSet
,也许如果你能展示如何连接它们并形成一个DNAStringSet
这将是一个好答案。我只需要连接序列,并继续使用DNAStringSet
,也许如果你能展示如何连接它们并形成一个DNAStringSet
这将是一个好答案。