3
我读通过R.矩阵封装的指示,但我无法理解函数的参数p
:[R构建稀疏矩阵
sparseMatrix(i = ep, j = ep, p, x, dims, dimnames,
symmetric = FALSE, index1 = TRUE,
giveCsparse = TRUE, check = TRUE)
根据http://stat.ethz.ch/R-manual/R-devel/library/Matrix/html/sparseMatrix.html
号码:
指向列的每个列(或行)的数值(整数值)向量指向列(或行)中元素的初始(从零开始)的索引 。 i,j或p 中的一个必须缺失。
我计算p
为任一的行或列指数的压缩表示,因为它是浪费的具有在任一i
或j
多个元素具有相同的值来表示单个行/列。但是,当我尝试提供的示例中,我仍然无法弄清楚如何p
是控制它的x
元素进入到行/列
dn <- list(LETTERS[1:3], letters[1:5])
## pointer vectors can be used, and the (i,x) slots are sorted if necessary:
m <- sparseMatrix(i = c(3,1, 3:2, 2:1), p= c(0:2, 4,4,6), x = 1:6, dimnames = dn)
谢谢,现在弄明白了。因此,p中第i个元素的值表示已经包含在第(i-1)列中的x个元素的数量。换句话说,p中第i个元素和第(i-1)个元素之间的差异是(i-1)列中的x个元素的数量 – GorillaInR
@GorillaInR - 是的。严格地说,你评论中倒数第二句话是不准确的,但最后一句是。所以,看起来你已经掌握了它。 –
- 如果最终陈述是真实的,则倒数第二个陈述也将是真实的:每个差异是相应列中x个元素的数量,则第一个(i-1)差异的总和= x个元素的总数已经包含在第一个(i-1)列中= p的第i个元素的值 – GorillaInR