Regex 计算每个样本中由分隔符分隔的字符串(基因)的频率
我有一个名为Regex 计算每个样本中由分隔符分隔的字符串(基因)的频率,regex,r,bioinformatics,frequency,Regex,R,Bioinformatics,Frequency,我有一个名为mydf的数据帧。我想计算每个样本的Left.Gene.Symbols和Right.Gene.Symbols中这些基因的频率,然后计算所有样本中的累积频率,得到如下所示的预期输出 mydf<-structure(c("AMLM12001KP", NA, "1114002", NA, NA, NA, NA, NA, "1121501", NA, NA, NA, "NA", "NA", "NA", "NA", "CR1L", "GIGYF2:GIGYF2:GIGYF2:E
mydf
的数据帧。我想计算每个样本的Left.Gene.Symbols
和Right.Gene.Symbols
中这些基因的频率,然后计算所有样本中的累积频率,得到如下所示的预期输出
mydf<-structure(c("AMLM12001KP", NA, "1114002", NA, NA, NA, NA, NA,
"1121501", NA, NA, NA, "NA", "NA", "NA", "NA", "CR1L", "GIGYF2:GIGYF2:GIGYF2:ENPP3",
"NA", "NA", "NA", "NA", "NTNG1:NTNG1:ENPP3", "NA", "NA", "NA",
"NA", "NA", "CDC27:CDC27", "NA", "ENPP3", "NA", "NA", "NA", "NA",
"NA"), .Dim = c(12L, 3L), .Dimnames = list(NULL, c("Sample_name",
"Left.Gene.Symbols", "Right.Gene.Symbols")))
如果只更改一件事:
lappy(sp,function(x){
为lappy(c(sp,total=list(do.call('rbind',sp))),function(x){
在我的中,那么你得到了这些结果。你在努力吗?@rawr非常感谢。对不起,我是R的初学者。那么你如何以数据帧或表格格式获得每个样本的左右列中的单个基因的频率,而不是列表中的频率?列表中的每个元素都是一个表,然后你可以将其转换为数据帧data.frame(l$
1114002)
(这在编辑中就在下面)。您是否需要其他内容的特定格式,或者您只是在查看结果?@rawr我希望他们使用sample,然后是所有频率,然后是sample,以及与之相关的所有频率,就像上面的输出一样。
Left.Gene.Symbols Right.Gene.Symbols
AMLM12001KP
1114002
CR1L=1 CDC27=2
GIGYF2=3 ENPP3=1
ENPP3=1
1121501
NTNG1=2
ENPP3=1
All_samples
CR1L=1 CDC27=2
GIGYF2=3 ENPP3=1
NTNG1=2
ENPP3=2