因此,我从CSV中获取了一些信息,将其存储为一个矩阵,并试图对结果计算以下操作,但它给了我一个2x2个NA数组。在这里看不到问题。
data <- read.csv('qog.csv', sep=';')
X <- matrix( log( data$wdi_gnipc ) )
X <- cbind(X, data$ciri_empinx_new)
t(X) %*% X当我看X和t(X)时,它们看起来就像我所期望的那样,所以我是矩阵--将2xn矩阵与nx2矩阵相乘(n是一些像193这样的大数),因此矩阵乘积应该被很好地定义,并给出一个有意义的2x2答案。
有什么可能会出错吗?
注:当我尝试
(c(1,2),c(3,4)) t(a) %*a
它给出了预期的结果。不知道这和我用数据做什么有什么重要的区别。
发布于 2014-12-11 02:53:59
让我们来回答这个问题。对于要填充NA的交叉产品,必须在X中每个列至少有一个NA。通过运行以下命令,可以找到每列的NA数:
colSums(is.na(X))很有可能你会得到
all(colSums(is.na(X)) > 0)
# [1] TRUEhttps://stackoverflow.com/questions/27414447
复制相似问题