标签: bioconductor

R + Bioconductor:在ExpressionSet中组合probeset

首先,这可能是这个问题的错误论坛,因为R + Bioconductor具体相当.这就是我所拥有的:

library('GEOquery')
GDS = getGEO('GDS785')
cd4T = GDS2eSet(GDS)
cd4T <- cd4T[!fData(cd4T)$symbol == "",]
Run Code Online (Sandbox Code Playgroud)

现在cd4T是一个ExpressionSet对象,它包含一个包含19794行(probesets)和15列(样本)的大矩阵.最后一行消除了所有没有相应基因符号的探针组.现在麻烦的是,该组中的大多数基因被分配到多个探针组.你可以这样看

gene_symbols = factor(fData(cd4T)$Gene.symbol)
length(gene_symbols)-length(levels(gene_symbols))
[1] 6897
Run Code Online (Sandbox Code Playgroud)

因此,我的19794探针组中只有6897个具有独特的探针组 - >基因映射.我想以某种方式结合与每个基因相关的每个探针组的表达水平.我不太关心每个探针的实际探测ID.我非常希望最终得到一个包含合并信息的ExpressionSet,因为我的所有下游分析都是为了使用这个类而设计的.

我想我可以编写一些手工编写的代码,并从头开始创建一个新的表达式.但是,我假设这不是一个新问题,并且存在使用统计学上合理的方法来组合基因表达水平的代码.我猜这里也有一个合适的名字,但我的谷歌没有显示出太大的用处.有人可以帮忙吗?

r bioconductor

8
推荐指数
1
解决办法
1527
查看次数

如何使用ggplot2绘制重叠范围

我想试试ggplot2.特别是,我试图找出是否有更好(更优雅,更简单)的方法来创建Bioconductor IRanges包装插图中找到的绘图(在此处,第12页上的图,第11页上的代码).

在此输入图像描述

在插图中,使用以下代码生成绘图:

plotRanges <- function(x, xlim = x, main = deparse(substitute(x)),
+ col = "black", sep = 0.5, ...) +{
+ height <- 1
+   if (is(xlim, "Ranges"))
+     xlim <- c(min(start(xlim)), max(end(xlim)))
+   bins <- disjointBins(IRanges(start(x), end(x) + 1))
+ plot.new()
+   plot.window(xlim, c(0, max(bins)*(height + sep)))
+   ybottom <- bins * (sep + height) - height
+   rect(start(x)-0.5, ybottom, end(x)+0.5, ybottom + height, col = col, ...)
+   title(main)
+ axis(1) …
Run Code Online (Sandbox Code Playgroud)

plot r ggplot2 bioconductor

8
推荐指数
1
解决办法
1181
查看次数

R如何安装指定版本的bioconductor包?

我想使用的当前版本的包在 bioconductor 上失败了。然而,旧版本曾经可以工作。
我想知道如何安装特定版本的 bioconductor 包?
提前致谢。

在我的例子中,这个包叫做 biomaRt,失败的版本是 2.34.2,而 2.34.0 是成功的。

r bioconductor biomart

8
推荐指数
2
解决办法
6400
查看次数

multiFASTA文件处理

我很想知道是否有任何生物信息学工具能够处理multiFASTA文件,给我信息序列,长度,核苷酸/氨基酸含量等信息,并可能自动绘制描述性图.也可以使用R BIoconductor解决方案或BioPerl模块,但我找不到任何东西.

你能帮助我吗?非常感谢 :-)

bioinformatics fasta bioconductor biopython bioperl

7
推荐指数
1
解决办法
2327
查看次数

rpy2:将data.frame转换为numpy数组

我在R中有一个data.frame.它包含很多数据:来自许多(125)数组的基因表达水平.我想要Python中的数据,主要是因为我在R中的无能,以及这应该是一个30分钟的工作.

我想以下代码工作.要理解这段代码,请知道变量path包含数据集的完整路径,在加载时,它会给我一个名为的变量immgen.知道这immgen是一个对象(Bioconductor ExpressionSet对象)并exprs(immgen)返回一个包含125列(实验)和数万行(命名基因)的数据框.(以防万一它不清楚,这是Python代码,使用robjects.r来调用R代码)

import numpy as np
import rpy2.robjects as robjects
# ... some code to build path
robjects.r("load('%s')"%path) # loads immgen
e = robjects.r['data.frame']("exprs(immgen)")
expression_data = np.array(e)
Run Code Online (Sandbox Code Playgroud)

这段代码运行,但expression_data很简单array([[1]]).

我很确定这e不代表exprs()由于以下内容而生成的数据框:

In [40]: e._get_ncol()
Out[40]: 1

In [41]: e._get_nrow()
Out[41]: 1
Run Code Online (Sandbox Code Playgroud)

但那又有谁知道呢?即使它e确实代表我的data.frame,它不直接转换为数组也足够公平 - 数据框中的数据框比数组(rownames和colnames)更多,所以也许生活不应该那么容易.但是我仍然无法弄清楚如何执行转换.文档对我来说有点过于简洁,尽管我对文档标题的有限理解意味着这应该是可能的.

有人有什么想法?

python numpy r bioconductor rpy2

7
推荐指数
2
解决办法
4720
查看次数

使用Brainarray定制CDF对GSE31312的RMA标准化中的所有NaN进行标准化

我正在尝试使用来自Brainarray的定制基因水平注释CDF(芯片定义文件)文件,使关于弥漫性大B细胞淋巴瘤的特定基因表达数据集正常化.

不幸的是,RMA归一化表达式矩阵是所有NaNs,我不明白为什么.

数据集(GSE31312)可在GEO网站免费获取,并使用Affymetrix HG-U133 Plus 2.0阵列平台.我正在使用该affy包来执行RMA规范化.

由于问题是特定于数据集的,因此遗憾的是,以下用于重现问题的R代码非常麻烦(2 GB下载,8.8 GB解压缩).

设置工作目录.

setwd("~/Desktop/GEO")
Run Code Online (Sandbox Code Playgroud)

加载所需的包.取消注释以安装软件包.

#source("http://bioconductor.org/biocLite.R")
#biocLite(pkgs = c("GEOquery", "affy", "AnnotationDbi", "R.utils"))
library("GEOquery") # To automatically download the data
library("affy")
library("R.utils") # For file handling
Run Code Online (Sandbox Code Playgroud)

将阵列数据下载到工作目录.

files <- getGEOSuppFiles("GSE31312")
Run Code Online (Sandbox Code Playgroud)

解压缩名为CEL的目录中的数据

#Sys.setenv(TAR = '/usr/bin/tar') # For (some) OS X uncommment this line
untar(tarfile = "GSE31312/GSE31312_RAW.tar", exdir = "CEL")
Run Code Online (Sandbox Code Playgroud)

解压缩所有.gz文件

gz.files <- list.files("CEL", pattern = "\\.gz$", 
                       ignore.case = TRUE, full.names = TRUE)
for (file in …
Run Code Online (Sandbox Code Playgroud)

r bioinformatics normalization bioconductor

7
推荐指数
0
解决办法
738
查看次数

从Rle向量有效地构建GRanges/IRanges

我有一个运行长度编码的向量,按顺序表示基因组上每个位置的一些值.作为一个玩具示例,假设我只有一条长度为10的染色体,那么我会看到一个矢量

library(GenomicRanges)

set.seed(1)
toyData = Rle(sample(1:3,10,replace=TRUE))
Run Code Online (Sandbox Code Playgroud)

我想将其强制转换为GRanges对象.我能想到的最好的是

gr = GRanges('toyChr',IRanges(cumsum(c(0,runLength(toyData)[-nrun(toyData)])),
                              width=runLength(toyData)),
             toyData = runValue(toyData))
Run Code Online (Sandbox Code Playgroud)

哪个有效,但速度很慢.有没有更快的方法来构建同一个对象?

r bioinformatics run-length-encoding bioconductor iranges

7
推荐指数
1
解决办法
363
查看次数

GenomicFeatures包安装麻烦

很抱歉这么快就回来了一个简单的安装问题,但我自己无法自行解决这个问题严重影响了我的工作效率.无论如何,我尝试按照BC网站的建议安装GenomicFeatures.

> source("http://bioconductor.org/biocLite.R")
> biocLite("GenomicFeatures")
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息(除了几条警告消息)

ERROR: configuration failed for package ‘RCurl’
* removing ‘/home/tim/R/i686-pc-linux-gnu-library/2.15/RCurl’
ERROR: dependencies ‘XML’, ‘RCurl’ are not available for package ‘rtracklayer’
* removing ‘/home/tim/R/i686-pc-linux-gnu-library/2.15/rtracklayer’
ERROR: dependencies ‘XML’, ‘RCurl’ are not available for package ‘biomaRt’
* removing ‘/home/tim/R/i686-pc-linux-gnu-library/2.15/biomaRt’
ERROR: dependencies ‘rtracklayer’, ‘biomaRt’, ‘RCurl’ are not available for package ‘GenomicFeatures’
* removing ‘/home/tim/R/i686-pc-linux-gnu-library/2.15/GenomicFeatures’
Run Code Online (Sandbox Code Playgroud)

所以我猜想依赖项存在一些问题,但奇怪的是它们会在GF之前自动安装.我使用的是2.15.0版.关于问题可能是什么的任何线索?我很乐意根据需要提供更多信息.谢谢.

r bioconductor

6
推荐指数
1
解决办法
4945
查看次数

显示GenomicRange包输出中的所有行

我正在使用GenomicRange R包.我有一个像这样的输入文件:

dvex108056 + 87 206
dvex108056 + 87 226
dvex108056 - 101 240
dvex108056 - 104 240 
dvex108056 - 59 188
dvex108056 - 68 197
dvex108056 - 70 208
dvex108056 - 75 211
dvex108056 - 78 217
dvex108056 - 79 218
dvex108056 - 84 223
dvex108056 - 85 220
dvex108056 - 87 226
dvex108056 - 88 226
dvex108056 - 88 227
dvex108056 - 91 210
dvex108056 - 91 230
dvex114041 - 6255 6383
dvex144086 + 2557 2678
dvex144086 + …
Run Code Online (Sandbox Code Playgroud)

r coordinates bioconductor dataframe overlapping

6
推荐指数
1
解决办法
1590
查看次数

R包描述 - Bioconductor的遥控器应该安装二进制文件

我正在研究R软件包(https://github.com/bgbrink/dropClust),我正在测试它是否可以安装,因为它取决于CRAN和Bioconductor的许多软件包.我在描述中指定了Bioconductor中的三个依赖项:

Remotes: 
bioc::flowDensity, 
bioc::SamSPECTRAL, 
bioc::flowPeaks
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试安装软件包时,flowPeaks的安装失败,因为脚本下载了软件包的源版本,这需要GSL存在才能进行编译.

* installing *source* package ‘flowPeaks’ ...
** libs
clang++  -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/include  `gsl-config --cflags`  -fPIC  -Wall -g -O2  -c Rpack.cpp -o Rpack.o
/bin/sh: gsl-config: command not found
In file included from Rpack.cpp:16:
./gvector_gmatrix.h:24:10: fatal error: 'gsl/gsl_math.h' file not found
#include <gsl/gsl_math.h>
         ^
1 error generated.
make: *** [Rpack.o] Error 1
ERROR: compilation failed for package ‘flowPeaks’
Run Code Online (Sandbox Code Playgroud)

当我从Bioconductor手动下载软件包时,一切正常,因为脚本下载了软件包的二进制版本.我可以在某处指定这是默认行为吗?我尝试了选项(pkgType ="binary")但没有成功.

编辑:没有新的想法,所以我碰到了一次.

r bioconductor r-package

6
推荐指数
0
解决办法
284
查看次数