美文网首页
R语言中的那些小细节【一】

R语言中的那些小细节【一】

作者: Bio_Infor | 来源:发表于2022-06-22 15:52 被阅读0次
NA与NULL的区别
a <- c(1, 2, NA)
b <- c(1, 2, NULL)

sum(a)
#> NA
sum(a, na.rm = T)
#> 3
sum(b)
#> 3

最终结果表明,NA值如果在不添加na.rm=TRUE的情况下会使得我们的运算结果成为NA,而NULL不会影响我们的计算结果。之所以出现这样的结果是因为:NA表示数据集中的该数据遗失。而NULL表示不存在的值。

subset()与直接索引的区别

接上文:

a[a > 1]
#> 2 NA
subset(a, a > 1)
#> 2
b[b > 1]
#> 2
subset(b, b > 1)
#> 2

差别在于,只要有NA的存在,无论怎么直接索引,NA值都会出现在结果当中,此时解决办法可以尝试使用subset()函数。

善用all()与any()函数
a <- c(3, 4, 5, 6)
all(a > 1)
#等效于:sum(a > 1) == length(a)
any(a > 5)
#等效于:sum(a > 5) != 0

这两个小函数可以帮助我们“笼统”判断一个向量中元素的情况,可以替代我们平时所写的sum()语句。

矩阵与向量的混合运算
a <- matrix(1:4, ncol = 2)
#     [,1] [,2]
#[1,]    1    3
#[2,]    2    4
a + 1:4
#     [,1] [,2]
#[1,]    2    6
#[2,]    4    8

实际上,矩阵也可以被理解为一个向量,当矩阵与向量进行运算时,向量会自动变成按列进行储存的矩阵了。

向量输入,矩阵输出

背景很简单,当我们对向量进行了某种操作后,最终输出的结果我们想以矩阵的形式进行展示,也就是每个元素及其对应的运算结果处在矩阵的一行或者一列之中:

a <- 1:4
fun <- function(x) return(c(x, x^2))
matrix(fun(a), ncol = 2)
#     [,1] [,2]
#[1,]    1    1
#[2,]    2    4
#[3,]    3    9
#[4,]    4   16
sapply(a, FUN = fun)
#     [,1] [,2] [,3] [,4]
#[1,]    1    2    3    4
#[2,]    1    4    9   16

使用sapply()函数就达到了我们的目的,区别只是在于需要转置(t())一下就可以了。

相关文章

  • R语言中的那些小细节【一】

    NA与NULL的区别 最终结果表明,NA值如果在不添加na.rm=TRUE的情况下会使得我们的运算结果成为NA,而...

  • R programming - WEEK4

    参考文献 R语言实例-数据过滤grep正则表达式R 语言中,数据框依据不同列进行排序R语言rank函数详细解析R语...

  • R语言中的%in%

    R语言中的%in%用来寻找前面一个向量内的哪些元素在后面一个向量中,比如: #首先复制两个变量a和b >a <- ...

  • 琴考级时容易被忽视的15个扣分点,细节决定成败!

    演奏过程中,常有各种细节处理。如果我们没有处理好这些小细节,那对于整体弹奏会大打折扣。今天和大家来探讨一下,哪些小...

  • R语言中的颜色(一)

    利用R绘图的时候,颜色是一个经常需要设置的参数。好的颜色搭配除了可以让你的图看上去更高大上,同时也能让结论更突出。...

  • 一些小细节

    他转脸看着江生说,“这是阿遇,我把他交给你,从今以后,你要拿命护着他。” 江生看了眼床边的杜遇,“杜先生放心,江生...

  • 2018-06-21

    R语言与python语言中的对应 将R语言中的各个操作和python操作对应起来,可以快速掌握两门语言,并且理解一...

  • R语言中的switch函数用法

    R语言中的switch与其它语言中的switch有很大区别。 在R中,switch函数的语法形式如下: 其中,ex...

  • R语言笔记1:初识数据结构

    简介 R语言是一套开源的数据分析解决方案。R语言中提供了多种存储数据的对象类型,包括标量(R语言中的标量是由向量的...

  • R语言中字体设置

    关于R语言中字体的调整 R语言系统中对于中文的字体设置为宋体,本文主要介绍如何来调整R语言中的默认字体,已经在如何...

网友评论

      本文标题:R语言中的那些小细节【一】

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