美文网首页
R语言编程艺术 第2章 向量(下)

R语言编程艺术 第2章 向量(下)

作者: 小洁忘了怎么分身 | 来源:发表于2019-01-27 23:32 被阅读55次

2.7NA与NULL值

NA:缺失值
向量中有一个缺失值NA,会导致mean()等函数计算出的结果均为NA。但可将na.rm参数设置为TRUE,可以跳过缺失值,计算其余元素。
NULL:空值,当作不存在
NULL的一个用法是在循环中创建向量,其中每次迭代都在这个向量上增加一个元素。

z <- NULL
for (i in 1:10) if (i %% 2 == 0) z <- c(z,i)

2.8 筛选

(1)“筛选索引”,就是你要筛选出来的元素需要满足的条件,比如x[x>8]
x[x>8] <- 0
注意,这种筛选方式不会自动排除NA。

x <- c(1,3,5,NA)
x[x>4]
#[1]5 NA

(2)subset()筛选,可以自动排除NA

x <- c(1,3,5,NA)
subset(x,x>4)
#[1]5

(3)which 返回TRUE的下标(位置)

which(x>4)
#3

在一个向量中找出满足一定条件的元素首次出现的位置which(x>4)[1]
在一个向量中找出满足一定条件的元素x[which(x>4)[1]]

2.9 向量化的ifelse()函数

ifelse(b,u,v),其中b是一个布尔值向量,而u和v是向量。
该函数返回的值也是向量,如果b[i]为真,则返回值的第i个元素为u[i],如果b[i]为假,则返回值的第i个元素为v[i]。

x<-1:10
ifelse(x%%2==0,5,12)

这段代码的意思是以1:10为输入,如果是偶数则输出5,是基数则输出12。

2.10 向量相等

除==外还可以用identical,是判断是否完全一致,注意默认的数字类型是双精度型,用:产生的则是整数型,不同数据类型来判断,会产生不相等的结果。

2.11 向量元素的名称

用names函数可以给元素命名。

2.12 关于c()的更多内容

如果传递到c()中的参数有不同的类型,则它们将被降级为同一类型,该类型最大限度地保留它们的共同特性。混合整数型和字符型,R会选择把它们都转换为字符型。另外,c()函数对向量有扁平化的效果,c(1,4,c(0.5,1))会生成1,4,0.5,1。

相关文章

  • R语言的数据结构(包含向量和向量化详细解释)

    更多内容请参考《R语言编程艺术》——————————————— 向量类型是R语言的核心。深入理解向量对R中数据结构...

  • R语言编程艺术 第2章 向量(下)

    2.7NA与NULL值 NA:缺失值向量中有一个缺失值NA,会导致mean()等函数计算出的结果均为NA。但可将n...

  • [R语言] 《R语言编程艺术》 第2章 向量

    向量的三大核心内容:循环补齐筛选向量化 向量及其延伸 - 向量 单个数值(标量)没有单独的数据类型,是向量的一种...

  • R语言编程艺术 第2章 向量(上)

    2.1标量、向量、数组与矩阵 向量长度:length()矩阵、数组本质上是向量。 2.2声明 变量可以直接赋值,无...

  • R-----实战(一)

    最近在啃《R语言编程艺术》,今天主要记录一下几个实战的小栗子。 1:如何用代码判断一个向量里的奇数和偶数的个数?2...

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

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

  • R基础快速入门(2)

    文集地址 R语言快速入门 R语言变量 R语言中的变量可以存储原子向量,原子向量组或许多R对象的组合 注意:使用ca...

  • R语言流程控制

    都知道R语言是向量式编程,可是有时候确实需要用到循环语句,这里就介绍R语言里面的主要循环——for循环。 与其它语...

  • 生信学习Day5-森森

    生信学习第5天,昨天学习Rstudio基本操作后,今天继续学习R语言的向量、数据框。 向量 1. 标量和向量的区分...

  • Python和R的异同(一)

    注 <- 对应R, = 对应Python R语言基本数据结构是向量,支持向量化操作。Python不支持向量化 R和...

网友评论

      本文标题:R语言编程艺术 第2章 向量(下)

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