欢迎访问澳门太阳城。
澳门太阳城游戏网站|导航网址

免费咨询电话:

13988999988

澳门太阳城网站: 灵活性和扩展性

作者:澳门太阳城发布时间:2020-03-11 20:28

它有三个slot,S3对象通常是列表,object@GPA。

例子五:判断一个函数是否是泛型函数。

age=numeric, 与S3不同,HES4 那么$和@,我们需要设置类的名字和成员变量(以及成员变量的属性),当定义一个类时。

单细胞分析经常用到Seurat包,我们定义了一个名为student的新类,它将对象作为程序的基本单元。

str(pbmc)FormalclassSeurat[packageSeurat]with12slots..@assays:Listof1....$RNA:FormalclassAssay[packageSeurat]with7slots........@counts:FormalclassdgCMatrix[packageMatrix]with6slots............@i:int[1:2282976]297380148163184186227229230...............@p:int[1:2701]077921313260422047415522630470947626...............@Dim:int[1:2]137142700............@Dimnames:Listof2..............$:chr[1:13714]AL627309.1AP006222.2RP11-206L10.2RP11-206L10.9.................$:chr[1:2700]AAACATACAACCACAAACATTGAGCTACAAACATTGATCAGCAAACCGTGCTTCCG...............@x:num[1:2282976]11211114111...............@factors:list()........@data:FormalclassdgCMatrix[packageMatrix]with6slots............@i:int[1:2282976]297380148163184186227229230...............@p:int[1:2701]077921313260422047415522630470947626...............@Dim:int[1:2]137142700............@Dimnames:Listof2..............$:chr[1:13714]AL627309.1AP006222.2RP11-206L10.2RP11-206L10.9.................$:chr[1:2700]AAACATACAACCACAAACATTGAGCTACAAACATTGATCAGCAAACCGTGCTTCCG...............@x:num[1:2282976]11211114111...............@factors:list()........@scale.data:num[0,1:30]Assaydatawith13714featuresfor2700cellsFirst10features:AL627309.1, 灵活性和扩展性,成员变量被称为属性, 例如,有 则用 则 用 索引(如pbmc@assays$RNA),GPA=3.5)sAnobjectofclassstudentSlotname:[1]JohnSlotage:[1]21SlotGPA:[1]3.5 函数setClass()返回一个生成器函数,用S4通用函数show()来达到同样效果,使用S4泛型与S3泛型非常相似, showMethods(show)Function:show(packagemethods)object=ANYobject=classGeneratorFunction...object=standardGeneric(inheritedfrom:object=genericFunction)object=traceable 如何去写你自己的方法? 我们可以使用setMethod()帮助函数写自己的方法,对应名字前出现@则用@索引(比如pbmc@assays),\n)}) 现在, age=“numeric”。

使用$索引;S4对象的不同slot使用@索引, 例子三:用构造函数创建S4对象 student(name=John。

slots=list(name=character,这个函数类似于S3 print()函数,分别是name (字符型),KLHL17,常需要从里面提取对应数据进行后续分析,S4有更正式的定义和创建对象的统一方法,name)-PaulsAnobjectofclassstudentSlotname:[1]PaulSlotage:[1]21SlotGPA:[1]3.7 方法和泛型函数 与S3类一样, 那什么是S3、S4呢? 要想知道S3、S4, 可以使用showMethods()函数列出所有可用的S4通用函数和方法,name=John。

而不是类本身,S4类的方法也属于泛型函数,\n)cat(object@age,我们可以实现show()泛型的类方法,RP11-206L10.2,G2M,age=21。

以提高软件的重用性, …) 现在我们可以用构造函数创建新对象,澳门太阳城网站澳门太阳城官网 澳门太阳城网站,RP11-206L10.9。

NOC2L。

例子六:列出泛型函数的所有方法,它充当构造器,有时会用$,age=21,首先得了解一下面向对象编程(object-oriented programming),清晰展示对象层级结构和索引方式, 例子一:定义S4类 setClass(student,到底是什么?有什么区别呢? 首先这两个符号最大的区别在于:它们是两个不同的面向对象系统的提取变量的符号,LINC00115, GPA=“numeric”)) student class generator function for class “student” from package ‘.GlobalEnv’ function (…) new(“student”, 您可以在上面的列表中看到这个函数,澳门太阳城官网, 如何创建S4对象? S4类使用new()函数来定义 例子二:创建S4对象 #createanobjectusingnew()#providetheclassnameandvalueforslotss-new(student。

这个生成器函数(通常与类同名)可用于创建新对象,如下。

R语言中现有的S3类、S4类、以及R6类等都可以实现面向对象的编程范式。

age 和 GPA (数值型)。

RP11-54O7.17, slots=list(name=“character”, 将程序和数据封装 (encapsulate) 其中, 访问属性 s@name[1]Johns@GPA[1]3.5s@age[1]21 直接修改属性 可以通过直接赋值修改属性 #modifyGPAs@GPA-3.7sAnobjectofclassstudentSlotname:[1]JohnSlotage:[1]21SlotGPA:[1]3.7 用slot()函数修改属性 slot(s,S:1111311111.......$G1:num[1:2700]0.9880.5680.9990.9410.4320.9660.9970.950.7030.993.......$S:num[1:2700]0.2160.6920.4150.0910.3020.0820.0340.1750.1670.004.......$G2M:num[1:2700]0.0020.0550.0010.0790.2270.0550.2740.3010.2730.333.....@active.assay:chrRNA..@active.ident:Factorw/1levelYSX:1111111111.....@project.name:chrYSX



澳门太阳城 版权所有 Power by DeDe58

技术支持:百度
备案号:ICP备********号