classesToAM
位於 methods
包(package)。 說明
給定類名向量或類定義列表,該函數返回這些類的超類的鄰接矩陣;也就是說,一個以類名作為行名和列名的矩陣,如果第 j 列中的類是第 i 行中類的直接超類,則元素 [i, j] 為 1,否則為 0。
該矩陣具有類定義的 contains
槽隱含的信息,但其形式通常更便於進一步分析;例如,在軟件包和其他軟件中使用鄰接矩陣來構建關係的圖形表示。
用法
classesToAM(classes, includeSubclasses = FALSE,
abbreviate = 2)
參數
classes |
類名稱的字符向量或列表,其元素可以是類名稱或類定義。該列表很方便,例如包含類名的包槽。請參閱示例。 |
includeSubclasses |
邏輯標誌;如果 |
abbreviate |
控製返回矩陣的行和/或列標簽的縮寫:值 0、1、2 或 3 都不縮寫、行、列或兩者都縮寫。默認值 2 對於打印矩陣很有用,因為類名往往超過一個字符長,適合 spread-out 打印。值 0 或 3 適合製作圖表(3 避免了某些圖表繪製軟件生成小字體標簽的傾向)。 |
細節
對於每個類,計算從類定義中獲取所有超類名稱,並找到這些類定義中的邊;即距離為1的所有超類。鄰接矩陣的相應元素設置為1。
各個類定義的鄰接矩陣被合並。請注意兩種可能的不一致,這兩種不一致都不會導致問題,除非可能來自不同包的同名類。邊是根據每個超類定義計算的,因此信息會覆蓋距離 > 1 的擴展元素的可能推斷(而且應該如此)。當參數中連續類的矩陣被合並時,計算當前不會檢查不一致之處 - 這是多個具有相同名稱的類可能會導致混亂的區域。稍後的修訂可能包括一致性檢查。
值
如所說明的,具有條目0或1的矩陣,非零值指示對應於列的類是對應於行的類的直接超類。行和列名稱是類名稱(不包含包槽)。
例子
## the super- and subclasses of "standardGeneric"
## and "derivedDefaultMethod"
am <- classesToAM(list(class(show), class(getMethod(show))), TRUE)
am
## Not run:
## the following function depends on the Bioconductor package Rgraphviz
plotInheritance <- function(classes, subclasses = FALSE, ...) {
if(!require("Rgraphviz", quietly=TRUE))
stop("Only implemented if Rgraphviz is available")
mm <- classesToAM(classes, subclasses)
classes <- rownames(mm); rownames(mm) <- colnames(mm)
graph <- new("graphAM", mm, "directed", ...)
plot(graph)
cat("Key:\n", paste(abbreviate(classes), " = ", classes, ", ",
sep = ""), sep = "", fill = TRUE)
invisible(graph)
}
## The plot of the class inheritance of the package "graph"
require(graph)
plotInheritance(getClasses("package:graph"))
## End(Not run)
也可以看看
extends
和 classRepresentation 用於獲取類定義的基礎信息。
相關用法
- R className 類名包含對應的包
- R callGeneric 從方法調用當前通用函數
- R cbind2 按列或行組合兩個對象
- R canCoerce 可以將對象強製為某個 S4 類嗎?
- R as 強製對象屬於某個類
- R language-class 表示未評估語言對象的類
- R BasicClasses 基本數據類型對應的類
- R findClass 查找類定義
- R setOldClass 注冊舊式 (S3) 類和繼承
- R ReferenceClasses 具有按引用處理的字段的對象(OOP 樣式)
- R MethodsList 方法列表對象
- R setGroupGeneric 創建函數的組通用版本
- R StructureClasses 基本結構對應的類
- R showMethods 顯示指定函數或類的所有方法
- R getMethod 獲取或測試方法的定義
- R slot 正式類對象中的槽
- R S4groupGeneric S4組通用函數
- R methodUtilities 用於方法和 S-Plus 兼容性的實用函數
- R getClass 獲取類定義
- R evalSource 使用源文件中的函數定義,無需重新安裝包
- R is 對象是來自類嗎?
- R isSealedMethod 檢查密封方法或類
- R GenericFunctions 管理通用函數的工具
- R dotsMethods 在方法簽名中使用...
- R S3Part 包含 S3 類的 S4 類
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Compute an Adjacency Matrix for Superclasses of Class Definitions。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。