R(2.15.3; Vista x64)矩阵基础包:传递给.Internal(矩阵)的错误5参数需要7

时间:2013-03-10 22:41:00

标签: r function matrix base

虽然有几个人表示这个​​问题是重复的假设(但是,尽管hemmo的帮助我们无法解决问题......)。在这篇文章中,我1)提供了一些关于我遇到的问题的额外信息,并且2)询问我如何将矩阵函数的基本代码编辑到帖子底部显示的代码。

有人能告诉我如何更新基础包中的矩阵功能吗?我正在运行一个干净的安装2.15.3(我删除了所有可以找到的R相关文件(来自以前的安装),并且还在重新安装2.15.3之前尝试清理注册表),但每当我尝试时都会收到以下错误使用matrix

cells <- c(1,26,24,68)
rnames <- c("R1", "R2")
cnames <- c("C1", "C2") 
mymatrix <- matrix(cells, nrow=2, ncol=2, byrow=TRUE,
dimnames=list(rnames, cnames))

Error in matrix(cells, nrow = 2, ncol = 2, byrow = TRUE, dimnames = list(rnames, : 5 arguments passed to .Internal(matrix) which requires 7

有趣的是,如果我输入mymatrix <- as.matrix(cells, nrow=2, ncol=2, byrow=TRUE, dimnames=list(rnames, cnames))我没有错误,但输出不正确:

     [,1]
[1,]    1
[2,]   26
[3,]   24
[4,]   68

当我单独输入matrix时,我会得到以下内容:

function (data = NA, nrow = 1, ncol = 1, byrow = FALSE, dimnames = NULL) 
{
data <- as.vector(data)
if (missing(nrow)) 
    nrow <- ceiling(length(data)/ncol)
else if (missing(ncol)) 
    ncol <- ceiling(length(data)/nrow)
.Internal(matrix(data, nrow, ncol, byrow, dimnames))
}
<environment: namespace:base>

从以前的帖子中我发现了类似的错误消息,似乎键入matrix会产生以下结果:

function (data = NA, nrow = 1, ncol = 1, byrow = FALSE, dimnames = NULL) 
{ 
if (is.object(data) || !is.atomic(data)) 
    data <- as.vector(data) 
.Internal(matrix(data, nrow, ncol, byrow, dimnames, missing(nrow), 
    missing(ncol))) 
} 
<environment: namespace:base>

有谁知道如何编辑基础包中的matrix函数,使其看起来像上面的代码(带有7个参数)?谢谢!

0 个答案:

没有答案