R语言中ifelse、which、%in%的用法详解

 更新时间:2021年04月20日 11:47:49   作者:何同尘  
这篇文章主要介绍了R语言中ifelse、which、%in%的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

ifelse、which、%in%是R语言里极其重要的函数,以后会经常在别的程序中看到。

ifelse

ifelse是if条件判断语句的简写,它的用法如下:

ifelse(test,yes,no)
参数 描述
test 一个可以判断逻辑表达式
yes 判断为 true 后返回的对象
no 判断为 flase 后返回的对象

举例:

x = 5
ifelse(x,1,0)

如果x不等于0,就返回1,等于0就返回0。

which

which 返回条件为真的句柄,给正确的逻辑对象返回一个它的索引。

which(test,arr.ind=FALSE)

test 必须是逻辑对象,逻辑数组。

举例:

which(LETTERS == "R")

%in%

%in% 判断 前面的对象是否在后面的容器中

element %in% list veator
1 %in% c(1:3)

补充:R语言:if-else条件判断及any、all、na.omit使用方法

基本结构展示:

if (7<10) {
  print("Seven is less than ten")
} else{
  print("seven is more than ten")
}

实例演示:

Titanic=read.csv("https://goo.gl/4Gqsnz")  #从网络读取数据

1. any()

#any代表只要有任一值符合,即为TRUE
if (any(titanicC$Age>70)) {                                              
  print("there are passengers older than 70")
} else{
  print("no one is older than 70")
}

2. all()

#所有都满足才true
if (all(titanicC$Age>10)) {
  print("all passengers older than 10")
} else{
  print("there are passengers younger than 10")
}

3. na.omit()

#放的位置决定是删除单一变量缺失值,还是删除任何变量缺失值
if (any(na.omit(titanic$Age==100))) {
  print("there are passengers aged 100")
} else{
  print("there are no passengers aged 100")
}                                                                                 
#数据库中只要有missing的记录都删掉
if (any(titanic$Age==80, na.rm=TRUE)) {
  print("there are passengers aged 80")
} else{
  print("there are no passengers aged 80")
}       
#Age这个变量有missing的记录删掉,其他变量有missing可以保留

4. else if 写更重复的语句

x=100
y=10
if(x<y){
  print("AA")
} else if(x==y){
  print(BB)
} else{
  print(CC)
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:

相关文章

  • R语言rmarkdown使用安装教程

    R语言rmarkdown使用安装教程

    markdown是文本处理的标记语言,它的功能类似于word,但与word中各种排版、字体设置不同,markdown能使我们更专注于码字这件事,用标记语法来代替常见的排版格式,Rmarkdown基于R中的文本处理格式,这篇文章主要介绍了R语言rmarkdown使用安装教程,需要的朋友可以参考下
    2024-02-02
  • R语言-生成频数表和列联表crosstable函数介绍

    R语言-生成频数表和列联表crosstable函数介绍

    这篇文章主要介绍了R语言-生成频数表和列联表crosstable函数介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 基于R语言赋值符号的区别说明

    基于R语言赋值符号的区别说明

    这篇文章主要介绍了基于R语言赋值符号的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言中if(){}else{}语句和ifelse()函数的区别详解

    R语言中if(){}else{}语句和ifelse()函数的区别详解

    这篇文章主要介绍了R语言中if(){}else{}语句和ifelse()函数的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言绘图基础教程(新手入门推荐!)

    R语言绘图基础教程(新手入门推荐!)

    数据作图是数据分析的重要方法之一,R提供了丰富的作图函,下面这篇文章主要给大家介绍了关于R语言绘图基础教程的相关资料,文中通过实例代码以及图文介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • R语言列表和数据框的具体使用

    R语言列表和数据框的具体使用

    本文主要介绍了R语言列表和数据框的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Rstudio中安装package出现的问题及解决

    Rstudio中安装package出现的问题及解决

    这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言学习ggplot2绘制统计图形包全面详解

    R语言学习ggplot2绘制统计图形包全面详解

    这篇文章主要为大家详细介绍了R语言学习ggplot2绘制统计图形包的全面知识讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-11-11
  • R语言 实现将factor转换成numeric方法

    R语言 实现将factor转换成numeric方法

    这篇文章主要介绍了R语言 实现将factor转换成numeric方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Rcpp和RcppArmadillo创建R语言包的实现方式

    Rcpp和RcppArmadillo创建R语言包的实现方式

    这篇文章主要为大家介绍了Rcpp和RcppArmadillo创建R包实现方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-11-11

最新评论