首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在R 4.0.3中为细胞计数脚本安装'rtiff‘包

如何在R 4.0.3中为细胞计数脚本安装'rtiff‘包
EN

Stack Overflow用户
提问于 2021-02-11 06:30:25
回答 1查看 167关注 0票数 1

我正在使用初学者手册(https://apps.dtic.mil/dtic/tr/fulltext/u2/1079243.pdf),以便使用Rstudio对显微镜图像中的细胞进行计数。安装BiocManager和EBImage包后,手册建议:

代码语言:javascript
代码运行次数:0
运行
复制
Install.packages("tiff")
Install.packages("pixmap")
Install.packages("rtiff")

但是,'rtiff‘包不适用于新版本的R 4.0.3 (2020-10-10)。所以我不能安装它:

代码语言:javascript
代码运行次数:0
运行
复制
Warning in install.packages :
  package ‘rtiff’ is not available for this version of R

A version of this package for your version of R might be available elsewhere,
see the ideas at
https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packages

该手册将继续加载软件包,为数据集创建适当的文件路径和目录:

代码语言:javascript
代码运行次数:0
运行
复制
library("tiff")
library("pixmap")
library("rtiff")

map_path <- "C:/Cellcounting/Analysis/Images/"
map_savdir <- "C:/Cellcounting/Analysis/Mapped_image"
map_files <- list.files(map_path, pattern="tif", full.name=F)
image_path <- "C:/Cellcounting/Analysis/Mapped_image/"
image_savdir <- "C:/Cellcounting/Analysis/Image_analysis"
image_files <- list.files(image_path, pattern="tiff", full.name=F)
csv_path <- "C:/Cellcounting/Analysis/Image_matrices"

然后,我应该创建以下for循环来将图像转换为像素贴图:

代码语言:javascript
代码运行次数:0
运行
复制
 for (i in 1: length (map_files)) {
  mapped_image <- paste0 (sub (". tif", replacement = "", x = map_files [i]), "_ mapped.tiff")
  map1 <- readTiff (paste0 (map_path, map_files [i]))
  map2 <- as.matrix (map1 @ red)
  map2 [map2 <0.3] <- 0
  writeTiff (map2, paste0 (map_savdir, "/", mapped_image))
 }

此时,我收到以下错误,我认为这是因为我无法安装'rtiff‘包:

代码语言:javascript
代码运行次数:0
运行
复制
Error in readTiff (paste0 (map_path, map_files [i])):
  could not find function "readTiff"

我能做些什么?有没有替代rtiff的方法?

提前感谢,

EN

回答 1

Stack Overflow用户

发布于 2021-07-22 22:03:30

我也有同样的问题。我使用这个程序是为了在R中获得相似的细胞计数,但无法正确安装'rtiff‘。

'rtiff‘不再存在于CRAN中,所以我一直在尝试使用以下代码从CRAN的归档文件中安装'rtiff’:

代码语言:javascript
代码运行次数:0
运行
复制
install.packages("devtools")
library(devtools)
install_github("cran/rtiff")

以及:

代码语言:javascript
代码运行次数:0
运行
复制
packageurl<-"https://cran.r- 
project.org/src/contrib/Archive/rtiff/rtiff_1.4.tar.gz"
install.packages(packageurl,repos=NULL,type="source",dependencies = T)

我得到了相同的错误,即软件包的安装具有非零退出状态。我继续搜索互联网和各种表单,试图安装完整的软件包。

我要做的一件事就是将函数'readTiff‘和'writeTiff’导入到R环境中,方法是从CRAN归档文件中下载tar.gz文件,使用WinZIP解压其中的内容,然后将其放入您的存储库中。示例代码如下:

代码语言:javascript
代码运行次数:0
运行
复制
setwd('C:/Users/Computer/Documents/rtiff_1.4.8/rtiff/R')
source('readTiff.R')
source('writeTiff.R')

这使我能够在R环境中使用这些函数,但遗憾的是,在尝试运行for循环来创建映射映像时,开始弹出更多错误:

代码语言:javascript
代码运行次数:0
运行
复制
Error in .C("C_TiffGetWidth", as.character(fn), w = as.integer(w), PACKAGE = "rtiff") : 
"C_TiffGetWidth" not available for .C() for package "rtiff"

我会继续深入调查这件事。我实际上是与你所引用的这本手册的作者之一合作的,所以希望我们能解决这个问题,并尽快更新你的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66146067

复制
相关文章

相似问题

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