我正在使用初学者手册(https://apps.dtic.mil/dtic/tr/fulltext/u2/1079243.pdf),以便使用Rstudio对显微镜图像中的细胞进行计数。安装BiocManager和EBImage包后,手册建议:
Install.packages("tiff")
Install.packages("pixmap")
Install.packages("rtiff")
但是,'rtiff‘包不适用于新版本的R 4.0.3 (2020-10-10)。所以我不能安装它:
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
该手册将继续加载软件包,为数据集创建适当的文件路径和目录:
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循环来将图像转换为像素贴图:
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‘包:
Error in readTiff (paste0 (map_path, map_files [i])):
could not find function "readTiff"
我能做些什么?有没有替代rtiff的方法?
提前感谢,
发布于 2021-07-22 14:03:30
我也有同样的问题。我使用这个程序是为了在R中获得相似的细胞计数,但无法正确安装'rtiff‘。
'rtiff‘不再存在于CRAN中,所以我一直在尝试使用以下代码从CRAN的归档文件中安装'rtiff’:
install.packages("devtools")
library(devtools)
install_github("cran/rtiff")
以及:
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解压其中的内容,然后将其放入您的存储库中。示例代码如下:
setwd('C:/Users/Computer/Documents/rtiff_1.4.8/rtiff/R')
source('readTiff.R')
source('writeTiff.R')
这使我能够在R环境中使用这些函数,但遗憾的是,在尝试运行for循环来创建映射映像时,开始弹出更多错误:
Error in .C("C_TiffGetWidth", as.character(fn), w = as.integer(w), PACKAGE = "rtiff") :
"C_TiffGetWidth" not available for .C() for package "rtiff"
我会继续深入调查这件事。我实际上是与你所引用的这本手册的作者之一合作的,所以希望我们能解决这个问题,并尽快更新你的信息。
https://stackoverflow.com/questions/66146067
复制相似问题