当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R abIndex-class 抽象索引向量的“abIndex”类


R语言 abIndex-class 位于 Matrix 包(package)。

说明

"abIndex" class 是 “Abstract Index Vector” 的缩写,用于比使用 2:1000000c(0:1e5, 1000:1e6) 类型的整数(或 numeric )向量更有效地处理大型索引向量。

请注意,当前的实现细节可能会发生变化,如果您考虑使用这些类,请联系包维护者(packageDescription("Matrix")$Maintainer)。

类中的对象

可以通过 new("abIndex", ...) 形式的调用来创建对象,但更容易且通常通过 as(x, "abIndex") (其中 x 是整数(值)向量)或直接通过 abIseq() 及其组合 c(...) 来创建。

插槽

kind

character 字符串, ("int32", "double", "rleDiff") 之一,表示 abIndex 对象的内部结构。

x

"numLike" 的对象;仅当对象未压缩时才使用(即长度不是 0 ),即当前恰好在 kind != "rleDiff" 时。

rleD

"rleDiff" 的对象,用于通过 rle 进行压缩。

方法

as.numeric、as.integer、as.vector

signature(x = "abIndex"):...

[

signature(x = "abIndex", i = "index", j = "ANY", drop = "ANY"):...

强制

signature(from = "numeric", to = "abIndex"):...

强制

signature(from = "abIndex", to = "numeric"):...

强制

signature(from = "abIndex", to = "integer"):...

长度

signature(x = "abIndex"):...

行动

signature(e1 = "numeric", e2 = "abIndex"):这些以及以下算术和逻辑运算尚未实现;有关这些 (S4) 组方法的列表,请参阅 Ops

行动

signature(e1 = "abIndex", e2 = "abIndex"):...

行动

signature(e1 = "abIndex", e2 = "numeric"):...

概括

signature(x = "abIndex"):...

展示

("abIndex") :简单的 show 方法,基于 show(<rleDiff>) 构建。

is.na

("abIndex"):与常规向量类似。

是.有限的,is.infinite

("abIndex"):同上。

注意

目前这是实验性的,尚未用于我们自己的代码。如果您打算使用此类,请联系我们(packageDescription("Matrix")$Maintainer)。

部分基于 Jens Oehlschlaegel 的想法和代码,如实施的(大约 2008 年,在 GPL 部分)包 ff

例子


showClass("abIndex")
ii <- c(-3:40, 20:70)
str(ai <- as(ii, "abIndex"))# note
ai # -> show() method


stopifnot(identical(-3:20,
                    as(abIseq1(-3,20), "vector")))

也可以看看

这里使用rle (base); numeric

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Class "abIndex" of Abstract Index Vectors。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。