标签: bioconductor

R on MacOS错误:向量内存耗尽(达到限制?)

我正在尝试运行R脚本(特别是,我正在使用Bioconductor包中的"getLineages"函数,Slingshot.

我想知道为什么当我使用这个函数时出现错误"向量内存耗尽(限制达到了?)",因为与这个包中的其他函数相比,它似乎不是最耗费内存的函数(带有我正在分析的数据).

我确实理解在Stackoverflow上还有其他类似的问题,但他们都建议切换到64位版本的R.但是,我已经在使用这个版本.到目前为止,这个问题似乎没有其他答案,我想知道是否有人知道?

数据大小只有120mb,远远低于我电脑的8GB内存.

R 64位版本

macos r bioconductor

40
推荐指数
3
解决办法
4万
查看次数

R(热图与热图2)中热图/聚类默认值的差异?

我比较R中树状图,一个与创建热图的两个方面made4heatplot,一个用gplotsheatmap.2.适当的结果取决于分析,但我试图理解为什么默认值是如此不同,以及如何让两个函数给出相同的结果(或高度相似的结果),以便我理解所有'blackbox'参数进入这个.

这是示例数据和包:

require(gplots)
# made4 from bioconductor
require(made4)
data(khan)
data <- as.matrix(khan$train[1:30,])
Run Code Online (Sandbox Code Playgroud)

使用heatmap.2对数据进行聚类得出:

heatmap.2(data, trace="none")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

使用heatplot给出:

heatplot(data)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

最初的结果和缩放非常不同.heatplot在这种情况下,结果看起来更合理,所以我想了解要用heatmap.2它来做同样的参数,因为heatmap.2我有其他优点/功能我想使用,因为我想了解缺少的成分.

heatplot使用具有相关距离的平均链接,以便我们可以将其输入heatmap.2以确保使用类似的聚类(基于:https://stat.ethz.ch/pipermail/bioconductor/2010-August/034757.html)

dist.pear <- function(x) as.dist(1-cor(t(x)))
hclust.ave <- function(x) hclust(x, method="average")
heatmap.2(data, trace="none", distfun=dist.pear, hclustfun=hclust.ave)
Run Code Online (Sandbox Code Playgroud)

导致: 在此输入图像描述

这使得行侧树状图看起来更相似但是列仍然不同,因此比例也是如此.看来,heatplot默认情况下,以某种方式缩放列,默认情况下heatmap.2不会这样做.如果我向heatmap.2添加行缩放,我得到:

heatmap.2(data, trace="none", distfun=dist.pear, hclustfun=hclust.ave,scale="row")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

它仍然不相同但更接近.我怎样才能重现heatplot结果heatmap.2?有什么区别?

edit2:看起来关键的区别在于使用以下方法重新heatplot调整行和列的数据:

if (dualScale) {
    print(paste("Data (original) range: …
Run Code Online (Sandbox Code Playgroud)

r cluster-analysis hierarchical-clustering heatmap bioconductor

27
推荐指数
1
解决办法
4万
查看次数

安装路径不可写R,无法更新包

我正在尝试使用他们网站上的代码将Bioconductor安装到R中.当我输入代码时(见下文),我收到一条错误消息,说某些软件包无法更新,安装路径是不可写的.

> ## try http:// if https:// URLs are not supported
> source("https://bioconductor.org/biocLite.R")
Bioconductor version 3.4 (BiocInstaller 1.24.0), ?biocLite for help
> biocLite()
BioC_mirror: https://bioconductor.org
Using Bioconductor 3.4 (BiocInstaller 1.24.0), R 3.3.2 (2016-10-31).
installation path not writeable, unable to update packages: Matrix, mgcv,
Run Code Online (Sandbox Code Playgroud)

生存

我可以通过转包/安装包来安装这些包.

> utils:::menuInstallPkgs()
trying URL    'https://www.stats.bris.ac.uk/R/bin/windows/contrib/3.3/Matrix_1.2-8.zip'
Content type 'application/zip' length 2775038 bytes (2.6 MB)
downloaded 2.6 MB

trying URL 'https://www.stats.bris.ac.uk/R/bin/windows/contrib/3.3/mgcv_1.8-  16.zip'
Content type 'application/zip' length 2346257 bytes (2.2 MB)
downloaded 2.2 MB

trying URL     'https://www.stats.bris.ac.uk/R/bin/windows/contrib/3.3/survival_2.40-1.zip'
Content …
Run Code Online (Sandbox Code Playgroud)

r bioconductor mgcv

18
推荐指数
4
解决办法
4万
查看次数

用NA值绘制置信区间

我想使用Gviz包将置信区间映射到具有NA的数据.我修改了手动示例来揭露我的问题.首先作为手册曝光:

library(Gviz)

## Loading GRanges object
data(twoGroups)

## Plot data without NAs
dTrack <- DataTrack(twoGroups, name = "uniform")
tiff("Gviz_original.tiff", units="in", width=11, height=8.5, res=200, compress="lzw")
plotTracks(dTrack, groups = rep(c("control", "treated"),
                                each = 3), type = c("a", "p", "confint"))
graphics.off()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 现在,使用包含NA值和值的数据na.rm=TRUE:

  ## Transforming in data frame
  df <- as.data.frame(twoGroups)

## Input NAs to look like my real data
df[ df <= 0 ] = NA
df <- df[,-4]
df <- df[,-4]
names(df) <- c("chr", "start", "end", …
Run Code Online (Sandbox Code Playgroud)

graphics plot r bioconductor confidence-interval

17
推荐指数
1
解决办法
1056
查看次数

在R中如何获取英文错误信息

我正在尝试一些关于bioconductor的教程; 但我收到错误消息,我想搜索/提交; 不幸的是,由于R安装在用法语配置的系统上,R用法语返回消息; 我怎么能用英语这些消息.

我的系统:Ubuntu 10.04运行gnome 3; R版本是最后一个(2.15.1)Bioconductor已更新为2.10,

我尝试下载/使用数据集GSE20986(但我在使用另一个数据集GSE2034时遇到了类似的错误,同时遵循"R简而言之"中给出的程序); 对于那些说法语的人,我得到的错误信息是:

> getGEOSuppFiles("GSE20986")
[1] "ftp://ftp.ncbi.nlm.nih.gov/pub/geo/DATA/supplementary/series/GSE20986/"
Erreur dans scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  : 
  la ligne 1 n'avait pas 6 éléments
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

r bioconductor

13
推荐指数
1
解决办法
2046
查看次数

CRAN封装取决于Bioconductor封装安装错误

我管理了Depends,建议和导入描述文件.最后我提交了我的包裹CRAN.但是在安装包装时,它只安装存放在包装下CRANbioconductor包装.此外,它还具有Mac OS的程序包依赖性错误: 检查Mac OS的日志

可能是什么问题呢?我怎么能修好它?

亲切的问候,

r bioconductor cran

12
推荐指数
3
解决办法
2232
查看次数

如何将Ensembl ID转换为R中的基因符号?

我有一个包含Ensembl ID的data.frame在一列中; 我想为该列的值找到相应的基因符号,并将它们添加到我的数据框中的新列.我使用bioMaRt但它找不到任何Ensembl ID!

这是我的示例数据(df[1:2,]):

row.names organism    gene
41  Homo-Sapiens ENSP00000335357
115 Homo-Sapiens ENSP00000227378
Run Code Online (Sandbox Code Playgroud)

我希望得到这样的东西

row.names organism    gene         id
41  Homo-Sapiens ENSP00000335357   CDKN3
115 Homo-Sapiens ENSP00000227378   HSPA8
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

library('biomaRt')
mart <- useDataset("hsapiens_gene_ensembl", useMart("ensembl"))
genes <- df$genes
df$id <- NA
G_list <- getBM(filters= "ensembl_gene_id", attributes= c("ensembl_gene_id",
"entrezgene", "description"),values=genes,mart= mart)
Run Code Online (Sandbox Code Playgroud)

然后,当我检查G_list时,我得到了这个

[1] ensembl_gene_id entrezgene      description  <0 rows> (or 0-length row.names)
Run Code Online (Sandbox Code Playgroud)

所以我无法将G_list添加到我的df中!因为没有什么可补充的!

提前致谢,

r bioinformatics bioconductor dataframe

11
推荐指数
2
解决办法
2万
查看次数

将SNP ID映射到基因组坐标

我有几个SNP ID(即rs16828074,rs17232800等),我想在UCSC基因组网站的Hg19基因组中找到它们的坐标.

我更愿意用它R来实现这个目标.怎么做?

r bioinformatics genetics bioconductor genome

9
推荐指数
1
解决办法
6205
查看次数

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
查看次数

由ExpressionSet对象的样本子集

我有一个包含100个样本的ExpressionSet对象:

> length(sampleNames(eset1))
100
Run Code Online (Sandbox Code Playgroud)

我还有一个75个样本名称的向量(不是数据本身):

> length(vecOf75)
75
Run Code Online (Sandbox Code Playgroud)

如何eset1根据75个样本名称进行子集化(并保存)?也就是说,我想忽略那些eset1名字未列出的样本vecOf75.请记住,对应于75个样本名称的一些样本可能不在eset1.从而,

> length(sampleNames(eset1))
Run Code Online (Sandbox Code Playgroud)

现在应该给出<75.

r bioconductor

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