我正在学习R编程,使用“R编程的艺术”这本书。 在第3.2.3章扩展示例:图像处理中。作者Matloff试图使用Mount Rushmore灰度图像来说明图像存储在矩阵中。他使用了一个名为pixmap的库。我下载了包,安装了它。
> library(pixmap)
> mtrush1 <- read.pnm("mtrush1.pgm")
> mtrush1
Pixmap image
Type : pixmapGrey
Size : 194x259
Resolution : 1x1
Bounding box : 0 0 259 194
> plot(mtrush1)
这是本书编写的内容,我试图运行它,但收到了错误消息,
> library(pixmap)
> mtrush1 <- read.pnm("mtrush1.pgm")
Error in file(file, open = "rb") : cannot open the connection
In addition: Warning message:
In file(file, open = "rb") :
cannot open file 'mtrush1.pgm': No such file or directory
starting httpd help server ... done
这是什么意思?无法打开连接?还有mtrush1.pgm不存在?我该怎么办呢?有帮助吗?非常感谢。
答案 0 :(得分:2)
将参数cellres=1
添加到您的函数调用中,您应该没问题。
您看到的第二个错误 - Warning message: In rep(cellres, length = 2) : 'x' is NULL so the result will be NULL
- 是因为您没有设置 cellres 参数,因此“cellres”会假定其默认值(即' NULL' - 因此警告)。对于你正在处理的事情,将cellres参数设置为1将完成这一操作(尽管你可以传入一个具有不等值的双元素向量,并通过绘制结果对象来了解它如何影响你的数字)。
注意:虽然回答时间有点迟,但我认为,由于我今天早些时候遇到了同样的问题(因为谷歌没有帮助),因此可能需要回复。
答案 1 :(得分:0)
这意味着文件mtrush1.pgm
不在当前目录中。您应setwd
到包含此文件的目录,或在read.pnm
中指定完整路径。
对于文件mtrush1.pgm
,您可以从http://heather.cs.ucdavis.edu/~matloff/
答案 2 :(得分:0)
文件mtrush1.pgm
和书中的R脚本&#34; R编程艺术&#34;可以在this GitHub site找到。