VennDiagram 创建 vennCounts 列表

2024-03-17

我有一个这样的表:

> updownregtable                                                           
             PIM WDR MYC OBX                                               
ILMN_1651282 0   0   0   0                                                 
ILMN_1651354 0   0   0   0                                                 
ILMN_1651358 0   0   0   0                                                 
ILMN_1656638 0   0   0   0                                                 
ILMN_1657235 0   0   0   0                                                 
ILMN_1657639 -1  0   0   0  

行名是基因的代码。名称是细胞中的转染。

我用以下链接中的函数制作了一个维恩图:http://bioinfo-mite.crb.wsu.edu/Rcode/Venn.R http://bioinfo-mite.crb.wsu.edu/Rcode/Venn.R

在制作维恩图之前,维恩计数结果给出以下输出:

> vennCounts(regulationtable)
      PIM WDR MYC OBX Counts
 [1,]   0   0   0   0    740
 [2,]   0   0   0   1      5
 [3,]   0   0   1   0      1
 [4,]   0   0   1   1      0
 [5,]   0   1   0   0      4
 [6,]   0   1   0   1      1
 [7,]   0   1   1   0      0
 [8,]   0   1   1   1      0
 [9,]   1   0   0   0      6
[10,]   1   0   0   1      0
[11,]   1   0   1   0      0
[12,]   1   0   1   1      0
[13,]   1   1   0   0      1
[14,]   1   1   0   1      0
[15,]   1   1   1   0      0
[16,]   1   1   1   1      0

现在我想在该组中存储的所有基因名中每行创建一个列表。例如像这样:

第 1 组 - 创建包含 740 个基因名的列表

第 2 组 - 创建包含 5 个基因名的列表

第 3 组 - 创建包含 1 个基因名的列表

第 5 组 - 创建包含 4 个基因名的列表

第 6 组 - 创建包含 1 个基因名的列表

第 9 组 - 创建包含 6 个基因名的列表

第 13 组 - 创建包含 1 个基因名的列表。

你能帮助我吗?


这是一种可能的解决方案。基本上,它涉及将矩阵转换为字符向量,因为有方便的函数来匹配文本字符串。

## create an example matrix - analagous to your 'updownregtable'                                                                               
nc <- 4
nr <- 1000
M <- matrix(rbinom(nr*nc,1,0.5),
            nrow = nr, ncol = nc,
            dimnames = list(sapply(1:nr, function(i) paste(sample(letters,5),collapse='')),paste('V',1:nc)))
## function for converting rows of a matrix to lines of text                                                                                   
matrix2text <- function(y) apply(y,1,function(x)paste(x,collapse=','))
## unique entries - analagous to the first four columns of your matrix                                                                         
## vennCounts(regulationtable)                                                                                                                 
Mu <- matrix2text(unique(M))
names(Mu) <- NULL
## convert the full matrix to text                                                                                                             
Mc <- matrix2text(M)
## find the matching groups                                                                                                                    
matching.groups <- sapply(Mu,function(x)names(grep(x,Mc,value=TRUE)))
## here are the counts per group                                                                                                               
counts.per.group <- sapply(matching.groups,length)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VennDiagram 创建 vennCounts 列表 的相关文章

  • 在 R 的替换命令中取消引用字符串

    我想知道是否可以unquote通过替换命令传递给表达式的字符串 具体来说 我使用 dplyr 从数据框中过滤和选择 gt w subject sex response 1 1 M 19 08 2 2 M 16 46 6 6 M 23 60
  • 如何将数据从长格式重塑为宽格式

    我在重新排列以下数据框时遇到问题 set seed 45 dat1 lt data frame name rep c firstName secondName each 4 numbers rep 1 4 2 value rnorm 8 d
  • Shiny :针对所有错误显示一条消息

    我在 R 的 Shiny 中有一个应用程序 我想处理消息 以便用户看不到发生了什么错误 我知道通过 tags style type text css shiny output error visibility hidden shiny ou
  • 如何在R中创建for循环? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在 R 编程中启动 for 循环 https stackoverflow com questions 4162363 how to start a for loop in r programmin
  • 连接树状图和热图

    我有一个heatmap 一组样本的基因表达 set seed 10 mat lt matrix rnorm 24 10 mean 1 sd 2 nrow 24 ncol 10 dimnames list paste g 1 24 sep p
  • R 3.5 - read.csv 无法读取 UTF-16 csv 文件

    我的代码如下 read csv http asic gov au Reports YTD 2018 RR20180420 001 SSDailyYTD csv skip 1 fileEncoding UTF 16 sep t header
  • 如何对范围内的行进行分组并考虑第三列?

    我有一个遗传数据集 我想对基因组中物理上靠近的遗传变异 行进行分组 我想对每条染色体基因组中某些点范围内的基因进行分组 chrom 我的 点 数据集包含变体 行需要在一定范围内的位置 如下所示 chrom low high 1 500 17
  • 如果值大于或小于,则替换数据框中的值

    我在 R 中操作数据帧时遇到问题 这是 R 中的基本内容 但我找不到执行此类操作的最佳命令 虚拟示例 Var1 20 300 39 Var2 49 23 91 Var3 0 239 210 我怎样才能用10如果值小于 则在第 2 列中10
  • 按名称包含在单个对象中的多个列对 data.frame 进行排序?

    我想排序一个data frame由多列组成 理想情况下使用基础 R 无需任何外部包 尽管如果有必要 就这样吧 读过如何按列对数据框进行排序 https stackoverflow com questions 1296646 how to s
  • ggplot2 + 使用比例 X 的日期结构

    我真的需要帮助 因为我已经迷路了 我正在尝试创建一个折线图 显示几个团队一年来的表现 我将一年分为几个季度 2012 年 1 月 1 日 2012 年 4 月 1 日 2012 年 8 月 1 日 12 1 12 并将 csv 数据帧加载到
  • R中data.frame(列表)的列平均值

    Data https i stack imgur com ZYsmv jpg 请 我需要计算此 data frame 中维吉尼亚币 Sepal Length 列的平均值 Sepal Length Sepal Width Petal Leng
  • ggplot:类似于scale_color_steps()的有序因子的色标

    With scale color steps 我们可以通过设置low和high争论 一个例子 df lt data frame x rnorm 99 y rnorm 99 col rnorm 99 ggplot df aes x y col
  • 在 R 中读入原始二进制数据并将其转换为整数

    我有一个二进制文件 其中包含编码为不同长度 主要是 2 4 字节 的有符号或无符号整数的数值 为了处理这些数据 我将文件的所需部分读取为raw向量与readBin 然后尝试将其转换为十进制 问题是 R的内置函数有限制 我不太明白 比如没有l
  • ODE 时间 Matlab 与 R

    如果在 matlab 中使用可变时间步长求解器 例如 ODE45 我会定义输出的时间跨度 即times 0 50 matlab 将返回 0 到 50 之间不同时间步长的结果 然而在 R 中 我似乎必须定义我希望 ODE 返回结果的时间点 即
  • 在 R 中计算大矩阵的零空间

    我找不到任何函数或包来计算 a 的零空间或 QR 分解 bigmatrix from library bigmemory 在 R 中 例如 library bigmemory a lt big matrix 1000000 1000 typ
  • R xts 对象中从每日时间序列到每周时间序列

    我正在使用 Zoo 和 xts 包来分析财务数据 ts 包不太合适 因为金融系列有周末 没有可用数据 我读到了 xts 包中可用的 apply 函数 apply daily x FUN apply weekly x FUN apply mo
  • 如何自动替换多个文件的文本内容中的字符?

    我有一个文件夹 myfolder包含许多乳胶表 我需要替换其中每个字符 即替换任何minus sign by an en dash 只是为了确定 我们正在替换连字符INSIDE该文件夹中的所有 tex 文件 我不关心 tex 文件名 手动执
  • 错误:美学必须是长度一,或者在省略 NA 时与 dataProblems:personCategoryz 的长度相同

    我正在尝试使用泰坦尼克号数据集创建一个图表 该数据集查看女性 儿童和男性及其生存率 我创建了新的类别来读取数据 但当我尝试超越该点时 不断出现错误消息 当我运行一个图表来显示这一点时 它显示得很好 只是它有一个单独的 NA 数据类别 所以我
  • R中的for循环和if函数

    我正在用 R 中的 if 函数编写一个循环 表格如下 ID category 1 a 1 b 1 c 2 a 2 b 3 a 3 b 4 a 5 a 我想使用 for 循环和 if 函数添加另一列来计算每个分组的 ID 如下所示的计数列 I
  • Pyspark - 一次聚合数据帧的所有列[重复]

    这个问题在这里已经有答案了 我想将数据框分组到单个列上 然后对所有列应用聚合函数 例如 我有一个包含 10 列的 df 我希望对第一列 1 进行分组 然后对所有剩余列 均为数字 应用聚合函数 sum 与此等效的 R 是 summarise

随机推荐

  • blockui 优于 jQueryUI 模式对话框

    我无法让 BlockUI 在模式对话框上工作 我尝试解决 z index 问题 但没有成功 在我的网页中 这是标题
  • 如何在XtraReport中使用子报表?

    我有一份主要报告 其中包括 详细报告 Transaction Amount Due PaymentType Money Tendered 我还有另一份报告 其中包含订购的物品 物品报告 Transaction ItemName Quanti
  • Python“所有其他元素”习语[重复]

    这个问题在这里已经有答案了 我觉得我花了很多时间用 Python 编写代码 但没有足够的时间创建 Pythonic 代码 最近我遇到了一个有趣的小问题 我认为可能有一个简单 惯用的解决方案 解释一下原文 我需要收集列表中的每个连续对 例如
  • 正在分析的二进制文件必须是可执行文件

    我正在尝试上传一个应用程序供 Apple 审核 但不确定我做错了什么而收到此错误消息 二进制文件必须是可执行文件 zip 文件名看起来应有的样子 项目名称中没有可见的空格 路径末尾的名称除外 示例 ProjectName app zip P
  • 为什么单例类很难测试?

    有效的Java第 3 条 使用私有构造函数或枚举类型强制执行单例属性 指出 将类设置为单例可能会使测试其客户端变得困难 因为不可能用模拟实现替代单例 除非它实现了充当其类型的接口 出于测试目的 为什么实例化一个单例实例并测试其 API 还不
  • 在 chrome 开发工具中隐藏 401 console.error 在 fetch() 调用时获取 401 [重复]

    这个问题在这里已经有答案了 我有一些代码可以进行提取调用 这利用了现代 chrome firefox 中内置的 window fetch api 该代码有时会出现 401 未经授权的响应 这是正常的 我希望忽略它 我可以通过代码流来做到这一
  • 从 Dock 中删除 AppleScript 脚本的图标

    如何隐藏正在运行的 AppleScript 的停靠栏图标 并仅将应用程序保留在菜单栏中 要隐藏应用程序使其不显示在 Dock 中 您需要修改应用程序内的 Info plist 文件 最简单的方法是在 Finder 窗口中选择应用程序 按住
  • numpy 中两个二维掩码数组的快速内积

    我的问题如下 我有两个数组X and Y形状为 n p 其中p gt gt n 例如 n 50 p 10000 我也有口罩mask 大小为布尔值的一维数组p 关于p of small密度 例如np mean mask 为 0 05 我尝试尽
  • 如何删除 XQuery 中的重复节点?

    我有一个动态生成的 XML 文档 我需要一个函数来消除其中的任何重复节点 我的函数如下所示 declare function local start2 let data local scan books return
  • 修改向量的元素(按值、按引用)函数 C++

    我有一个必须修改向量值的函数 在 C 中返回向量是一个好的做法吗 功能一 vector
  • 如何使用 MediaRecorder 作为 MediaSource

    作为学习 WebRTC 的练习 我试图并排显示本地网络摄像头和网络摄像头的延迟播放 为了实现这一目标 我尝试将记录的 blob 传递到 BufferSource 并使用相应的 MediaSource 作为视频元素的源 the ondataa
  • Google oAuth2 令牌越来越多地失效

    我有一个基于 oAuth2 构建的 Web 应用程序 该应用程序已经投入生产 5 年多了 用户通过 Google 进行身份验证和授权 并授予我的应用程序对 Google Analytics 数据的访问权限 突然间 我发现刷新用户 oAuth
  • 如何为多个变量声明具有多个限制的 sympy Piecewise

    同情 我如何声明Piecewise子函数中多个变量具有多个限制的函数 这是我的背景和尝试 from sympy import Piecewise Symbol exp from sympy abc import z x1 Symbol x1
  • 绕过 CloudFlare 的 100 秒超时

    我正在尝试 AJAX 化我的报告 以绕过 CloudFlare 对通过其站点运行的请求强加的 100 秒超时 See 是否可以增加 CloudFlare 超时 https stackoverflow com questions 385361
  • 正则表达式提取可选组

    我有一些格式为的日志字符串 T01 Warning Tag1 Message T23 Tag2 Message2 我正在尝试提取T数 检测是否存在Warning 然后将标签和消息的文本全部放在一个正则表达式中 不过 警告 的可选要求让我感到
  • 如何在cakephp中生成'a href="javascript:void(0)"'之类的链接?

    如何在 CakePHP 中生成类似 a href javascript void 0 的链接 我制作了一个应用程序 当用户单击图像列表时 内容将插入到编辑器文本区域中 我向这些图像添加一个类 并在 javascript 文件中编写一些代码
  • 为什么我要创建一个别名来创建函数?

    我偶尔会看到这种模式 尤其是在有关 Bash 提示定制的问题上 alias f useful code 我认为根本没有理由在这里创建别名 明显的重构 f useful code 它完全避免了声明别名 并且简单地一劳永逸地定义了函数 看起来更
  • .Net 使用 Lockbits 从位图中获取 RGB 值

    我使用下面的代码从图像中提取 RGB 值 有时这有效 但是在某些文件上 似乎步幅不能被位图宽度整除 它返回混合值 Dim rect As New Rectangle 0 0 bmp Width bmp Height Dim bmpData
  • 如何使用 Apache POI 插入换行符作为单元格的数据?

    我使用 Apache POI 3 16 创建 Excel 文件 我想将特定单元格内的数据设置为有换行符 rowConsommationEtRealisation createCell 0 setCellValue Consommation
  • VennDiagram 创建 vennCounts 列表

    我有一个这样的表 gt updownregtable PIM WDR MYC OBX ILMN 1651282 0 0 0 0 ILMN 1651354 0 0 0 0 ILMN 1651358 0 0 0 0