如何将使用旧版本的 R 及其包生成的 RData 文件更新为当前版本的 R?

问题描述 投票:0回答:1

你好我的 R 社区伙伴,

我有一个 ".RData" 文件,由某人在 2014-2016 之间生成。这与他之前的RNASeq项目的差异表达分析有关。将此文件加载到 R 中会生成许多使用 DESeq2 进行 DE 分析所需的对象。

但是,我在将该文件加载到 Rstudio 中当前版本的 R 时遇到问题,因为存在与多个包相关的冲突。我试图弄清楚如何通过安装旧版本的 R 和软件包来解决这个问题,但首先不知道使用什么版本来生成该 RData 文件,因为我没有生成它的代码。

R 中的一个简单加载命令会产生以下错误:

Error in h(simpleError(msg, call)) : 
  error in evaluating the argument 'x' in selecting a method for function 'nrow': no slot of name "elementMetadata" for this object of class "DESeqDataSet"
Loading required package: pcaMethods

Attaching package: ‘pcaMethods’

The following object is masked from ‘package:stats’:

    loadings

Error in h(simpleError(msg, call)) : 
  error in evaluating the argument 'x' in selecting a method for function 'nrow': no slot of name "elementMetadata" for this object of class "SummarizedExperiment"
In addition: There were 16 warnings (use warnings() to see them)

我的问题是,是否可以操作该 RData 文件并将其保存以与当前版本的 R 一起使用?如果是这样,我们如何实现这一目标?

我希望有人已经遇到过这个问题并设法解决了它。我真的需要一些帮助,因为我似乎无法在网上找到解决方案。

任何帮助将不胜感激,谢谢。

r bioinformatics genetics rna-seq
1个回答
0
投票

最简单和最快的方法是使用最初使用的相应版本的 R 和包加载它。然后将 DESeqDataSet 的元素(化验、列数据和行数据)保存为纯文本文件。将这些加载到新的分析环境中。

这与 RStudio 无关,但某些包的当前版本与加载的对象不兼容。您可以使用 conda 安装合适的 R 环境或使用 Docker/Apptainer。

我的一般建议是,如果可能的话,始终将输入和输出数据作为普通(=通用)文本文件。 RData 对象很方便,但如您所见,它们有缺点和版本问题。

© www.soinside.com 2019 - 2024. All rights reserved.