返回顶部
首页 > 资讯 > 精选 >R语言属性知识点有哪些
  • 265
分享到

R语言属性知识点有哪些

2023-06-14 07:06:57 265人浏览 安东尼
摘要

这篇文章主要介绍了R语言属性知识点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。属性(attribute):R中对象具备的特性特性描述了所代表的内容以及R解释该对象的方

这篇文章主要介绍了R语言属性知识点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

属性(attribute):R中对象具备的特性

特性描述了所代表的内容以及R解释该对象的方式

很多时候两个对象之间的唯一差别在于它们的属性不同

常见的属性

属性描述
class对象的类
comment对象的注释,一般用于描述对象的含义
dim对象的维度
dimnames与对象的每个维度相关的名字
names返回对象的名字属性.返回结果取决于对象的类型.对于数据框对象会返回数据框的列名;对于数组会返回数组中被命名元素的名字
row,names对象的行名(dimnames相关)
tsp对象的起始点,对于时间序列对象有用
levels因子型变量的水平

查询R中对象的属性的标准方法:

对于对象x和属性a:一般来说可以通过a(x)来查询x的a属性

大多数情况下,R中都有一个现成的获取对象属性或者改变对象属性的函数

(这种改变对象属性的方法会在当前环境中覆盖对象的旧属性,但不会影响闭环境中的变量属性)

m = matrix(data = 1:12, nrow = 4, ncol = 3,      dimnames = list(c("r1", "r2", "r3", "r4"),              c("c1", "c2", "c3")))

通过attributes函数可以获得一个包含对象所有属性的列表

> attributes(m)$dim[1] 4 3$dimnames$dimnames[[1]][1] "r1" "r2" "r3" "r4"$dimnames[[2]][1] "c1" "c2" "c3"
> dim(m)[1] 4 3> dimnames(m)[[1]][1] "r1" "r2" "r3" "r4"[[2]][1] "c1" "c2" "c3"
> colnames(m)[1] "c1" "c2" "c3"> rownames(m)[1] "r1" "r2" "r3" "r4"

可以通过改变属性将矩阵转化为其他类的对象

例如移除对象的维度属性

> dim(m) <- NULL> m [1] 1 2 3 4 5 6 7 8 9 10 11 12 > class(m)[1] "integer"> typeof(m)[1] "integer"

创建一个数组

> (a <- array(1:12, dim = c(3:4)))   [,1] [,2] [,3] [,4][1,]  1  4  7  10[2,]  2  5  8  11[3,]  3  6  9  12

定义一个包含相同对象的向量

> (b <- 1:12) [1] 1 2 3 4 5 6 7 8 9 10 11 12

问题:在R总这两个对象等价吗?

> a == b   [,1] [,2] [,3] [,4][1,] TRUE TRUE TRUE TRUE[2,] TRUE TRUE TRUE TRUE[3,] TRUE TRUE TRUE TRUE

数组的每个元素反映的是对两个对象个元素比较的结果

R中all.equal函数

用来比较两个对象的数据和维度一甄别两个对象是否近乎相同,若不相同则会返回其原因

> all.equal(a, b)[1] "Attributes: < Modes: list, NULL >"          "Attributes: < Lengths: 1, 0 >"            [3] "Attributes: < names for target but not for current >" "Attributes: < current is not list-like >"      [5] "target is matrix, current is numeric"

若只是检查两个对象是不是完全一致,但不关心原因可以使用identical函数

> identical(a, b)[1] FALSE


对于简单类型,其类和类型是有紧密联系的

对于符合型对象,两者则可能不同

有时候,对象的类会随着属性列出.

不过,对于确定的类型(比如矩阵和数组),类是隐藏的.

可以用class函数来确定对象的类

可以用typeof函数查看对象的基本类型

可以改变R对象所属的类.

例如,因子型向量转换为整型数组,整型数组,转换为因子

> (eye.colors <- factor(c("brown", "blue", "blue", "green", "brown", "brown", "brown")))[1] brown blue blue green brown brown brownLevels: blue brown green> (eye.colors.integer.vector <- unclass(eye.colors))[1] 2 1 1 3 2 2 2attr(,"levels")[1] "blue" "brown" "green"
> v <- as.integer(c(1, 1, 1, 2, 1, 1, 2, 2, 3, 1))> levels(v) <- c("what", "who", "why")> class(v) <- "factor"> v [1] what what what who what what who who why whatLevels: what who why

在调用class函数或者typedef函数时,对于有些对象,需要对其进行引用以防止其在调用时被执行

例如:想要查询符号x,而不是x所指向的对象的类型

> class(quote(v))[1] "name"> typeof(quote(v))[1] "symbol"

但并不是所有类型的对象都可以采用该操作

例如:R中的any对象,...对象,字符串对象和允诺对象不能被隔离

(查看允诺对象的类型时会要求执行该允诺对象,而这一过程会把它转换为普通对象,从而使我们无法查询到其类型信息)

感谢你能够认真阅读完这篇文章,希望小编分享的“R语言属性知识点有哪些”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: R语言属性知识点有哪些

本文链接: https://lsjlt.com/news/268899.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • R语言属性知识点有哪些
    这篇文章主要介绍了R语言属性知识点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。属性(attribute):R中对象具备的特性特性描述了所代表的内容以及R解释该对象的方...
    99+
    2023-06-14
  • R语言属性知识点总结及实例
    属性(attribute):R中对象具备的特性 特性描述了所代表的内容以及R解释该对象的方式 很多时候两个对象之间的唯一差别在于它们的属性不同 常见的属性 ...
    99+
    2024-04-02
  • R语言中字符串有哪些知识点
    这篇文章主要介绍了R语言中字符串有哪些知识点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在R语言中的单引号或双引号对中写入的任何值都被视为字符串。 R语言存储的每个字符串都...
    99+
    2023-06-14
  • R语言数据重塑知识点有哪些
    这篇文章给大家分享的是有关R语言数据重塑知识点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。R 语言中的数据重塑是关于改变数据被组织成行和列的方式。 大多数时间 R 语言中的数据处理是通过将输入数据作为数据...
    99+
    2023-06-14
  • R语言中Rcpp基础知识点有哪些
    这篇文章将为大家详细讲解有关R语言中Rcpp基础知识点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. 相关配置和说明由于Dirk的书Seamless R and C++ Integration ...
    99+
    2023-06-25
  • R语言中基本语法的知识点有哪些
    这篇文章主要介绍R语言中基本语法的知识点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!我们将开始学习R语言编程,首先编写一个“你好,世界! 的程序。 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚...
    99+
    2023-06-14
  • R语言时间序列的知识点有哪些
    这篇文章给大家分享的是有关R语言时间序列的知识点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。时间序列对象:变量随着时间变化时间序列的回归函数(例如ar或arima)通常以时间序列作为参数许多绘图函数都有针...
    99+
    2023-06-14
  • R语言中循环的相关知识点有哪些
    这篇文章主要介绍“R语言中循环的相关知识点有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“R语言中循环的相关知识点有哪些”文章能帮助大家解决问题。repeatrepeat是最存粹的循环,只要不让...
    99+
    2023-07-05
  • javascript DOM节点属性知识点有哪些
    这篇文章主要介绍了javascript DOM节点属性知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript DOM节点属性知识点有哪些文章都会有所收获...
    99+
    2024-04-02
  • R语言线性回归知识点总结
    回归分析是一种非常广泛使用的统计工具,用于建立两个变量之间的关系模型。 这些变量之一称为预测变量,其值通过实验收集。 另一个变量称为响应变量,其值从预测变量派生。 在线性回归中,这两...
    99+
    2024-04-02
  • HTML常用的属性知识点有哪些
    这篇文章将为大家详细讲解有关HTML常用的属性知识点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 定义: HTML属性:HTML元素提供的附加信息 简单的理...
    99+
    2024-04-02
  • R语言基本语法知识点
    我们将开始学习R语言编程,首先编写一个“你好,世界! 的程序。 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚本文件编写程序。让我们逐个体验不同之处。 命令提示符 如...
    99+
    2024-04-02
  • Go语言基础知识点有哪些
    这篇文章主要介绍Go语言基础知识点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Go 语言教程Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go是从2007年末由Robert Gries...
    99+
    2023-06-20
  • R语言“循环”知识点详解
    可能有一种情况,当你需要执行一段代码几次。 通常,顺序执行语句。 首先执行函数中的第一个语句,然后执行第二个语句,依此类推。 编程语言提供允许更复杂的执行路径的各种控制结构。 循环语...
    99+
    2024-04-02
  • R语言符号知识点汇总
    符号 当在R中定义一个变量时,实际上就是在环境中将一个符号赋给一个值 x <- 1 实际上就是在全局环境中将符号x赋给一个长度为1,值为1的向量对象 当R解释器对表达式求...
    99+
    2024-04-02
  • R语言常量知识点总结
    R语言基本的数据类型有数值型, 逻辑型(TRUE, FALSE),文本(字符串)。 支持缺失值,有专门的复数类型。 常量是指直接写在程序中的值。 数值型常量包括整型、单精度、双精度等...
    99+
    2024-04-02
  • C语言函数的知识点有哪些
    这篇文章主要介绍“C语言函数的知识点有哪些”,在日常操作中,相信很多人在C语言函数的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言函数的知识点有哪些”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-30
  • R语言的特点有哪些
    R语言的特点有哪些?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。R语言一般特点自由软件,免费、开放源代码,支持各个主要计算机系统;完整的程序设计语言,基于函数和对象,可以自定义...
    99+
    2023-06-09
  • R语言运算符知识点总结
    运算符是一个符号,通知编译器执行特定的数学或逻辑操作。 R语言具有丰富的内置运算符,并提供以下类型的运算符。 运算符的类型 R语言中拥有如下几种运算符类型: 算术运算符 关...
    99+
    2024-04-02
  • R语言运算符知识点讲解
    运算符 运算符:包含一个或者两个参数的无括号的参数 符号 说明 + ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作