當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R symmetricMatrix-class 包矩陣中對稱矩陣的虛擬類


R語言 symmetricMatrix-class 位於 Matrix 包(package)。

說明

對稱矩陣的虛擬類 "symmetricMatrix" ,來自 Matrix 包,包含數字和邏輯、稠密和稀疏矩陣,例如,請參閱 “actual” 子類的示例。

主要用途是在可以處理所有對稱矩陣的方法(和 C 函數)以及 as(*, "symmetricMatrix") 中。

插槽

uplo

"character" 的對象。對於上三角,必須是"U",對於下三角,必須是"L"。

Dim, Dimnames

尺寸(長度為 2 "integer" )和相應的名稱(或 NULL ),繼承自 Matrix ,請參閱此處。請參閱下文,了解僅存儲兩個 Dimnames 組件之一。

factors

矩陣分解列表,也來自 Matrix 類。

擴展

直接類 "Matrix"

方法

暗名

signature(object = "symmetricMatrix") :返回對稱 dimnames ,即使 Dimnames 槽隻有行或列名稱。這可以節省大型(通常是稀疏)對稱矩陣的存儲空間。

是對稱的

signature(object = "symmetricMatrix") :簡單地返回TRUE

有一個 C 函數 symmetricMatrix_validate() 由內部有效性檢查函數調用,也來自 getValidity(getClass("symmetricMatrix"))

有效性和dimnames

有效性檢查不需要對稱的 Dimnames 槽,因此它可以是 list(NULL, <character>) ,例如,為了提高效率。但是,dimnames() 和其他函數和方法的行為應該就像暗名稱是對稱的一樣,即兩個列表組件相同。

例子

## An example about the symmetric Dimnames:
sy <- sparseMatrix(i= c(2,4,3:5), j= c(4,7:5,5), x = 1:5, dims = c(7,7),
                   symmetric=TRUE, dimnames = list(NULL, letters[1:7]))
sy # shows symmetrical dimnames
sy@Dimnames  # internally only one part is stored
dimnames(sy) # both parts - as sy *is* symmetrical

showClass("symmetricMatrix")

## The names of direct subclasses:
scl <- getClass("symmetricMatrix")@subclasses
directly <- sapply(lapply(scl, slot, "by"), length) == 0
names(scl)[directly]

## Methods -- applicaple to all subclasses above:
showMethods(classes = "symmetricMatrix")

也可以看看

isSymmetric 具有適用於 Matrix 類的高效方法 (isSymmetric-methods )。類 triangularMatrix ,例如,dsyMatrix 用於數字密集矩陣,或 lsCMatrix 用於邏輯稀疏矩陣類。

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Virtual Class of Symmetric Matrices in Package Matrix。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。