首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从R中非常大的频率表中提取特定频率?

如何从R中非常大的频率表中提取特定频率?
EN

Stack Overflow用户
提问于 2020-02-24 16:39:20
回答 1查看 185关注 0票数 1

我正在制作频率表(从一长串的基因序列)中基因出现在我的测序样本的数量。我一直很好地使用ftable()函数,但我正在缩小搜索范围,并希望将重点放在成千上万个特定的基因上。

我目前的担心如下:

  1. 我为样本中的所有基因创建频率表。
  2. 将此表导出到csv。
  3. 使用Excel中的control+f提取我感兴趣的特定基因频率。

考虑到我计划分析的样本数量,这似乎效率很低。

有没有一种方法可以使用R来提取频率表中的某些条目?

到目前为止,我已经尝试了c(,,,)和a,,,方法,但没有结果。我收到了一个“意想不到的符号”错误。

我希望问题不是基因名称中的连字符,因为我不能删除它。

我附上了我的R窗口的屏幕截图供参考。

这是我的R窗口的截图 下面是频率表的属性

structure(list(Sequence.number = c(1L, 2L, 4L, 5L, 6L, 7L, 10L, 11L, 13L, 14L), Variable = structure(c(25L, 2L, 22L, 19L, 19L, 19L, 7L, 1L, 25L, 19L), .Label = c("V1-13", "V1-18", "V1-2", "V1-21", "V1-36", "V1-39", "V1-42", "V10D-9", "V11-25", "V12D-36", "V12D-56", "V15D-54", "V1D-15", "V1D-73", "V3-20", "V3D-30", "V4D-24", "V4D-43", "V4D-60", "V6-31", "V6-35", "V6-4", "V6D-40", "V6D-76", "V8-30", "V8-46", "V8-5", "V9-15", "V9-23", "V9D-2" ), class = "factor"), Diversity = structure(c(13L, 17L, 2L, 5L, 3L, 5L, 2L, 14L, 13L, 15L), .Label = c("", "D1", "D1T1", "D1T2", "D2", "D2D", "D2T1", "D2T1D", "D2T2", "D3", "D3T1", "D3T1D", "D4", "D4T1D", "D5", "D5T1D", "D6"), class = "factor"), Joining = structure(c(1L, 7L, 8L, 8L, 4L, 8L, 1L, 9L, 1L, 8L), .Label = c("J1", "J1T1", "J1T2", "J2", "J2D", "J2T1", "J3", "J4", "J5", "J6D"), class = "factor")), row.names = c(NA, 10L), class = "data.frame")

EN

回答 1

Stack Overflow用户

发布于 2020-02-24 17:39:30

以上面的内容为例:

正如您正确地做的那样,您需要使用下面的3个变量,这样您就不需要重复WeekZero$ 3次了:

代码语言:javascript
复制
Freq = with(WeekZero,table(Variable,Diversity,Joining))

我们看着桌子,它接着说:

代码语言:javascript
复制
ftable(Freq)
                   Joining J1 J1T1 J1T2 J2 J2D J2T1 J3 J4 J5 J6D
Variable Diversity                                              
V1-13                       0    0    0  0   0    0  0  0  0   0
         D1                 0    0    0  0   0    0  0  0  0   0
         D1T1               0    0    0  0   0    0  0  0  0   0
         D1T2               0    0    0  0   0    0  0  0  0   0
         D2                 0    0    0  0   0    0  0  0  0   0
         D2D                0    0    0  0   0    0  0  0  0   0
         D2T1               0    0    0  0   0    0  0  0  0   0

要从"V1-13“中获得诸如计数,您可以返回到表对象,在第一个逗号之前指定它,这是指数组的"z”维:

代码语言:javascript
复制
Freq["V1-13",,]

要获得V1-13和多样性为D1,请选择行,它是下一个逗号:

代码语言:javascript
复制
Freq["V1-13","D1",]
  J1 J1T1 J1T2   J2  J2D J2T1   J3   J4   J5  J6D 
   0    0    0    0    0    0    0    0    0    0 

要获得V1-13并加入== J1:

代码语言:javascript
复制
Freq["V1-13",,"J1"]
         D1  D1T1  D1T2    D2   D2D  D2T1 D2T1D  D2T2    D3  D3T1 D3T1D    D4 
    0     0     0     0     0     0     0     0     0     0     0     0     0 
D4T1D    D5 D5T1D    D6 
    0     0     0     0 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60380328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档