这一章节将如何对 R 对象中的值进行选取,R 的符号规则有两种方式进行查询:

第一种记号体系:索引
查询索引语法:
deck[ , ](使用中括号)
其中[ , ] 为索引,其中含有两个索引参数,用 "," 分隔

在 R 中,有六种方式创建并使用索引,分别为:

  1. 正整数索引
  2. 负整数索引
  3. 空格
  4. 逻辑值
  5. 名称

第二种记号体系: $ 和 [[]]

构建索引

正整数索引

格式: deck[1, c(1,2,3)]
语法:
索引从 1 开始

负整数索引

格式:deck[-(2:52), 1:3]
功能:返回除了符号后行元素外所有行元素
语法:
同一个索引参数不能同时使用正整数和负整数

零索引

格式: deck[0, 0]
功能:返回一个空的对象

空格索引:

格式:deck[1, ]
功能:提取该索引位置代表维度的所有元素

逻辑值索引

格式:deck[1, c(TRUE, TRUE, FALSE)]
功能:构建一个含有逻辑值索引(一个逻辑值向量),提取其中为 TRUE 的元素
语法:逻辑值向量与原向量的长度相同

名称索引

格式: deck[1, c("face", "suit", "value")]
功能:提取具有匹配名称属性的对象
实用:由于数据框中的列必须有名称,因此常用于数据框中提取对象

$ 和 [[]]

$ 和 [[]] 可用于列表和数据框,提取其中的数据元素,而不是数据对象.

$

格式:

deck$value

功能:

用于提取所选数据框的列的名称

[[]]

问题缘由:

  1. 列表中的元素没有名称,可以使用 [[]] 和数字,来得到相应的元素.
  2. 通过 [] 得到的会是一个新的列表对象,无法进行 sum 等计算

格式:

lst[[1]]

功能:

返回 lst 这个列表中第一个对象中的值

注意的要点:

与 lst[1] 不同, lst[[1]] 返回的是数据元素, lst[1] 返回一个新的数据对象.

《R语言入门与实践》第四章:R 的记号体系的更多相关文章

  1. 《R语言入门与实践》第一章:R基础

    前言 本章介绍了 R 语言的基础知识 界面: 使用命令 “ R “进行命令行的实时编译 对象 定义: 用于储存数据的,设定一个名称 格式: a <- 1:6 命名规则: 规则1:不能以数字开头规 ...

  2. 《R语言入门与实践》第二章:R包和帮助文档

    这一章讲了两方面的内容,如何使用 R 包和帮助文档. R包 下载 R 包 命令: install.packages("<nameofpackage>") R 会话中启用 ...

  3. #Python编程从入门到实践#第四章笔记

    #Python编程从入门到实践#第四章笔记   操作列表 ​​​1.遍历列表 使用for循环,遍历values列表 for value in values: print(value) 2.数字列表 使 ...

  4. 《R语言实战》读书笔记--第一章 R语言介绍

    1.典型的数据分析过程可以总结为一下图形: 注意,在模型建立和验证的过程中,可能需要重新进行数据清理和模型建立. 2.R语言一般用 <- 作为赋值运算符,一般不用 = ,原因待考证.用-> ...

  5. python编程:从入门到实践----第四章>操作列表

    一.遍历整个列表 1-1.假设有一个魔术师名单,需要将其中每个魔术师的名字都打印出来. # 用for循环来打印魔术师名单中的名字 magicians=['alice','david','carolin ...

  6. 《R语言入门与实践》第七章:程序

    前言 这一章讲了程序设计的相关知识,经过了: 算法分析 编码 得到最后的程序. if 语句 格式:if (this) {that} else if { another} else { another ...

  7. 《R语言入门与实践》第六章:R 的环境系统

    前言 这一章在对象的基础之上,讲解了对象所处的环境,进一步讲了环境对对象的作用,以及如何使用环境.结构如下: 环境的定义和操作 环境的规则 制作闭包 环境 R 环境的定义 在 R 中,每一个数据对象都 ...

  8. 《R语言入门与实践》第五章:对象改值

    本章将了如何对一个数据对象中的数据进行改动,分为以下方法: 直接改值 条件取值然后改值 直接改值 单个改值:vec[1] <- 1000多个改值: vec[c(1,3,5)] <- 100 ...

  9. 《R语言入门与实践》第三章:R 对象

    在这一章,包含的内容有: R 的数据类型 属性 类(特殊的属性) Ruby 的数据结构 R 数据类型 R 可以识别六种类型的数据类型,分别是: double integer character log ...

随机推荐

  1. 关于sql server profiler 监控工具的使用

    勾选以下属性: 记录这个数据库访问磁盘的次数:

  2. weixin://connectToFreeWifi/?apKey=协议如何跳转到微信客户端打开在wifi指定任意网页?

    微信门店wifi接口,任意站跳转,跳转二维码长按识别加粉,接口支持动态传参数,支持微信支付等特殊接口对接. 代码如下使用 <head> <meta charset="utf ...

  3. Git知识

    git最小化配置: 配置user.name 和 user.email git config --global user.name 'your_name' git config --global use ...

  4. 在C#中GUID生成的四种格式

    var uuid = Guid.NewGuid().ToString(); // 9af7f46a-ea52-4aa3-b8c3-9fd484c2af12 var uuidN = Guid.NewGu ...

  5. php通过pecl方式安装扩展

    安装pecl cd /usr/local/php/bin/ wget http://pear.php.net/go-pear.phar -O go-pear.php php go-pear.php # ...

  6. https://blog.csdn.net/uftjtt/article/details/79044186

    https://blog.csdn.net/uftjtt/article/details/79044186

  7. Godot-富文本

    作用:添加链接(比如赞助网站,或者相关站点什么的) 效果如下: (引用Godot官网) Introduction RichTextLabel allows the display of complex ...

  8. bootstrap 无需引入 直接使用

    <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="styl ...

  9. IP通信基础学习第六周(上)

    CSAM:冲突检测 链路:是指一条无源的点到点的物理线路段,且中间没有任何其它的交换结点. 数据链路:把实现相关规程的硬件和软件加到链路上. 数据链路层的功能:链路管理,信息的传输,流量与差错控制,异 ...

  10. 3.键盘输入10个数,放到数组中,(1)去除该数组中大于10的数 (2)将该数组中的数字写入到本地文件number.txt中

    package cn.it.text; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner; ...