R语言中$和@各自的作用是什么

$表示从一个dataframe中取出某一列数据;@是从R的类实例里面读取数据。$是S3类的引用方式,$比较常用,当一个函数里需要返回多个值(比如有变量,有向量,有矩阵)时,我们要用list,而不是return,这时如果想提取某个变量的结果,就需要用到$。

$表示从一个dataframe中取出某一列数据;@是从R的类实例里面读取数据。

$是S3类的引用方式,$比较常用,当一个函数里需要返回多个值(比如有变量,有向量,有矩阵)时,我们要用list,而不是return,这时如果想提取某个变量的结果,就需要用到$,默认情况下,对于list, environment 这两种对象,$可以提取(extract)出里面的元素,对于自己定义的class,可以实现$ S3 Method。通常我们的data.frame, list. 向量等用$就可以。

@是S4类的引用方式。@比较少用。对于 S4 object,@可以提取出 slot。

比如

m1<-lm(Y~X,data=….(some data frame))

m1$coefficients

就会返回回归直线的截距和斜率。

x$y 等价于 x[[“y”, exact = FALSE]],用于获取dataframe或者list里面的某个变量,

比如mtcars$cyl 和diamonds$carat。不同之处在于 $ 可以部分匹配变量名,比如:

x <- list(abc = 1)

x$a

#> [1] 1

x[[“a”]]

#> NULL

S4也有例如,有个维恩包Vennerable:S4类型,想取得里面IntersectionSets,信息必须用@符号。

@ 是R中,S4类的一个操作符,用于提取S4对象中的内容(slot),比如:

setClass(“Person”,

slots = list(name = “character”, age = “numeric”))

alice <- new(“Person”, name = “Alice”, age = 40)

alice@age

> [1] 40

这个时候是不起作用的,因为被S4类重写了。可以自己定义

的行为。

延伸阅读:

什么是R语言?

R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优异工具。

R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。由“R开发核心团队”负责开发。R可以看作贝尔实验室(AT&T BellLaboratories)的Rick Becker、John Chambers和Allan Wilks开发的S语言的一种实现。当然,S语言也是S-Plus的基础。所以,两者在程序语法上可以说是几乎一样的,可能只是在函数方面有细微差别,程序十分容易地就能移植到一程序中,而很多一的程序只要稍加修改也能运用于R。

文章标题:R语言中$和@各自的作用是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/39042

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2023年2月21日 上午2:19
下一篇 2023年2月21日 上午2:21

相关推荐

  • DevOps对企业文化的影响有哪些

    DevOps是一组实践,旨在增强开发与运维团队间的协作与通信,以提高在更短时间内发布更可靠产品的能力。DevOps对企业文化产生了重大影响,它促进了团队合作精神的提升(1)、提高了工作效率和响应速度(2)、增加了跨部门交流(3)、推动了自动化与创新(4)、强化了持续学习与适应性(5)、以及提升了客户…

    2023年12月13日
    15800
  • 需求管理工具的优势

    需求管理工具的优势有:一、提高效率;二、降低风险;三、明确目标;四、提高透明度。需求管理工具可以帮助项目管理者更快、更准确地收集、分析和审批需求,从而提高项目的效率和质量。 一、提高效率 需求管理工具可以帮助项目管理者更快、更准确地收集、分析和审批需求,从而提高项目的效率和质量。 二、降低风险 需求…

    2023年4月30日
    23200
  • 企业的预测分析包括哪些

    预测分析的基本内容主要包括1、销售预测;2、利润预测;3、成本预测;4、资金预测。销售预测是指,对未来特定时间内,全部产品或特定产品的销售数量与销售金额的估计。 1、销售预测 销售计划的中心任务之一就是销售预测,无论企业的规模大小、销售人员的多少,销售预测影响到包括计划、预算和销售额确定在内的销售管…

    2023年1月9日
    68400
  • 没有网络怎么能实现多人协同办公

    方法有:一、使用本地网络;二、使用局域网软件;三、使用蓝牙或无线传输;四、使用可移动存储设备。如果没有连接互联网,可以考虑在局域网内建立本地网络。可以使用路由器或交换机等网络设备,将多个设备连接在一起,形成一个局域网。 一、使用本地网络 如果没有连接互联网,可以考虑在局域网内建立本地网络。可以使用路…

    2023年4月16日
    46000
  • oa系统都有什么

    OA系统通常具备数字化文档管理、流程自动化、内部通信协议和资源共享等核心功能。1、数字化文档管理涉及文件的创建、存储、检索、共享和备份,具体强调将纸质文件转变为电子化资料以便通过网络快速传递交换。2、流程自动化则重在优化日常工作流程,通过软件实现请假、报销等常规流程的自动处理。3、内部通信协议意在加…

    2024年1月11日
    11500
  • VR 时代的主流编程语言是什么

    VR 时代的主流编程语言有:1、C#;2、C++语言;3、Java;4、其他计算机图形学与GPU编程。C#基础语法与算法、面向对象编程、C#是数据结构与高级语法,是做U3D的基础语言。而Unity把C#当作脚本语言使用。 1、C# C#基础语法与算法、面向对象编程、C#是数据结构与高级语法,是做U3…

    2023年2月21日
    46100
  • 有什么软件可以做计划

    可以做计划的软件有:1、微软To-Do;2、Todoist;3、Trello;4、Evernote;5、Google Keep;6、Microsoft Planner;7、OmniFocus;8、Wunderlist。 在日常生活和工作中,我们经常需要制定各种计划来帮助我们更好地完成任务和达成目标。…

    2023年3月2日
    52300
  • 数据分析的基本步骤是什么

    数据分析的基础步骤包括特定的连贯流程,确保分析的规范性与有效性。这个流程主要分为1、问题定义、2、数据准备、3、数据清洗、4、数据分析建模、5、数据解释及报告。问题定义环节明确分析目标与需求。数据准备阶段涉及数据采集与选择适当数据集。数据清洗是保证数据品质,包括删除重复、处理缺失值等。数据分析建模使…

    2023年12月14日
    33300
  • 多模光纤与单模光纤的区别是什么

    多模光纤与单模光纤的区别在于以下几个方面:1、核心直径;2、光源;3、带宽;4、护套颜色;5、模态色散;6、价格。多模和单模光纤之间的主要区别是,前者具有更大的直径,通常是50或62.5µm的纤芯直径,而典型的单模光纤是8和10µm的纤芯直径。 一、核心直径 多模和单模光纤之间的主要区别是,前者具有…

    2023年2月17日
    1.3K00
  • eplan无法找到部件数据库怎么解决

    解决方法是:一、手动添加部件数据库;二、修改部件数据库路径;三、修复或重新安装部件数据库文件。如果部件数据库文件被删除或移动了位置,可以通过手动添加部件数据库来解决问题。 一、手动添加部件数据库 如果部件数据库文件被删除或移动了位置,可以通过手动添加部件数据库来解决问题。具体步骤如下:打开EPLAN…

    2023年5月30日
    4.8K00

发表回复

登录后才能评论
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部