如何将 PBM 等光栅图像转换为 CSV 文件?

How would I convert a raster image such as a PBM to a CSV file?

我正在尝试将 PBM 文件类型的光栅图像转换为 CSV 文件。

我试过这个:

setwd("~/Desktop/")
directory <- "test.pbm"
ndirectory <- "test.csv"

file_name <- list.files(directory, pattern = ".pbm")

files.to.read <- paste(directory, file_name) 
files.to.write <- paste(ndirectory, paste(sub(".pbm","", 
file_name),".csv"))

for (i in 1:length(files.to.read)) {
  temp <- (read.csv(files.to.read[i], header = TRUE, skip = 11, 
  fill = TRUE))
  write.csv(temp, file = files.to.write[i])
}

但我收到错误 "No such file or directory" 但该文件肯定在我的桌面目录中。我是否过于复杂化了,或者有人对我如何前进有任何建议吗?

您可以通过设置路径和full.names标志来获取src文件的绝对路径。 然后将“.pbm”替换为“.csv”即可轻松获取目标文件名。

试试这个。

src_files <- list.files(path="~/Desktop/",pattern = ".pbm", full.names = TRUE)
dest_files <- sub(".pbm", ".csv", src_files)
for (i in 1:length(src_files)) {
  temp <- (read.csv(src_files[i], header = TRUE, skip = 11, fill = TRUE))
  write.csv(temp, file = dest_files[i])
}