【r<-基础|向量】R提取向量元素[与[[区分

作者: 王诗翔 | 来源:发表于2018-05-06 22:57 被阅读20次

内容取自《R语言编程指南》。

[]能够创建一个向量子集,[[]]可以提取向量中的元素。我们可以将一个向量比作10盒糖果,使用[]可以获取其中的3盒糖果,使用[[]]则是打开盒子并从中取出一颗糖果。

对于简单的向量,使用[]或[[]]会产生相同的结果(所以大多数人都没能区分它们)。但在某些情况下,它们会返回不同的结果。例如,对于一个命名的向量,创建一个子集与提取一个元素将会不同:

x <- c(a = 1, b = 2, c = 3)
x["a"]
## a 
## 1

x[["a"]]
## [1] 1

我们利用糖果盒的比喻来进行理解:x["a"]让我们得到标签为“a”的糖果盒,而x[["a"]]让我们得到便签为“a”的糖果盒里面的糖果。

由于[[]]只能用于提取出一个元素,因此不适用提取多个元素的情况。

x[[c(1,2)]]

# Error in x[[c(1, 2)]] : 
#   attempt to select more than one element in vectorIndex

此外,[[]]也不能用于负整数,因为负整数的意思是提取除指定位置外的所有元素。

对很多初学者来说,代码中同时使用[]和[[]]可能会感到混乱,并且容易造成误用。此时,你只要记住糖果盒的比喻即可。

相关文章

  • 【r<-基础|向量】R提取向量元素[与[[区分

    内容取自《R语言编程指南》。 []能够创建一个向量子集,[[]]可以提取向量中的元素。我们可以将一个向量比作10盒...

  • 学习小组Day5笔记--Gu

    继续学习R 向量 1.标量和向量的区分标量:一个元素组成的变量向量:多个元素组成的变量 2.从向量中提取元素1.元...

  • 学习小组Day5-数据结构-CYJ

    1. 向量 1.1 标量和向量的区分 标量:一个元素组成的变量向量:多个元素组成的变量 1.2从变量中提取元素 1...

  • 学习小组Day5笔记-R语言进阶-April

    数据类型 向量标量和向量的区分:一个元素vs多个元素依次排列从向量中提取元素:根据元素的位置/值的大小数据框(ta...

  • Day 5 Joyce

    虽然R已在在用,小洁还是帮我理清了一些概念: 1.向量-赋值,<--向量中提取元素 2.数据框-数据框里提取向量 ...

  • 学习小组day5笔记-钟能能

    R语言数据结构 1.向量 1.向量是指由多个元素组成的变量。我们在R中可以通过赋值来定义一个向量。 2.提取向量在...

  • 学习小组-晓光-Day5

    R语言数据结构 变量、向量、标量的概念 从向量中提取元素 根据元素位置x[4] #x第4个元素x[-4] #排除...

  • 学习小组Day5笔记——山川石

    数据类型 向量(vector) 标量与向量的区分 元素:数字或者字符串。 标量:单个元素组成的变量。 向量:多个元...

  • 《学习小组Day5笔记——囚牛》

    R语言数据结构 向量(vector) 标量和向量的区分 元素 元素指的是数字或者字符串(用chr表示)等 变量标量...

  • Day5-高大石头

    R数据结构 1.向量 <从向量中提取元素>(1)根据元素位置 (2)根据值 2.data.frame 3.直接使用...

网友评论

    本文标题:【r<-基础|向量】R提取向量元素[与[[区分

    本文链接:https://www.haomeiwen.com/subject/uwyprftx.html