怎么在R语言中保留大于或小于特定数值的行

发布时间:2021-04-02 14:30:06 作者:Leah
来源:亿速云 阅读:1507

今天就跟大家聊聊有关怎么在R语言中保留大于或小于特定数值的行,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

如下所示:

newdata<-subset(x, x$var > 某一数字)

x为矩阵 var是其中的一个变量

补充:r语言 循环次数超过了50这个最大值_错过了520还可以一起过儿童节,如何用R语言‘撸'一个文字跑马灯去表白...

引言

和大家分享一下如何用R语言来写一个文字跑马灯吧。这个文字跑马灯写起来基本不费时间,在办公室摸一下鱼大概就够了。

正文

这个文字跑马灯我准备按照面向对象编程来写。因为,面向对象就会有对象。而且,这个东西写出来就是拿给你们去表白的。

首先我们定义一个基类,这个基类要具有像PPT一样的逐页播放文字的功能。

#' @title projector
projector <- R6::R6Class(
 classname = "projector",
 public = list(
  initialize = function(sildes) { # 构造函数
   private$slides <- sprintf("r%s",sildes) # 给每页文字的开始加上'r'字符以覆盖上一页
   private$length <- base::length(private$slides) # 记录所有的播放页数量
   private$position <- 0 # 初始播放位置为第一页之前
   private$slide <- private$slides[private$position]
  },
  nextslide = function(){ # 播放下一页
    private$position <- private$position + 1 # 获取下一页位置
    if ( private$position > private$length ){ # 播放到最后一页后回到第一页
      private$position <- private$position - private$length
    }
    private$slide <- private$slides[ private$position ] # 设置当前播放页为下一页
    base::cat(private$slide) # 播放当前播发页
  },
  autoplay = function(fps = 10){ # 自动播放,播放速率每秒10页
    while(T){ # 无限循环,可以用for改写控制循环次数
      self$nextslide() # 播放下一页
      base::Sys.sleep(1/fps) # 休眠控制播放速率
    }
  }
 ),
 private = list(
  slide = NA,# 当前播放页
  slides = c(), # 所有的播放页
  length = 0,# 播放页的总数
  position = 0# 当前播放位置
 )
)
#' @test 
player <- projector$new(c("我是第一页","我是第二页","我是第三页"))
player$nextslide() # 播放下一页
player$nextslide()
player$nextslide()
player$nextslide()
player$autoplay(3) # 以每秒三张的速率播放,可以使用 Ctrl+C 组合键 跳出

怎么在R语言中保留大于或小于特定数值的行

利用这个文字PPT播放器,我们只要设置好播放页就可以实现文字跑马灯了。比如:

player2 <- projector$new(
 c(
  "我是第一页    ",
  "是第一页    我",
  "第一页    我是",
  "一页    我是第",
  "页    我是第一",
  "    我是第一页",
  "   我是第一页 ",
  "  我是第一页  ",
  " 我是第一页   ", 
  "我是第一页    " # 最后一页的下一页是第一页,让播放页闭环以到达流畅的视觉效果
 )
)
player2$autoplay(3)

怎么在R语言中保留大于或小于特定数值的行

当然我们不需要那么傻的的每次都手动设置播放页。接下来,我们从PPT文字播放器这个基类派生一个类,这个派生类新增了根据跑马灯文字自动设置播放页的功能。

#' @title scroller
scroller <- R6::R6Class("scroller", 
 inherit = projector,
 public = list(
  initialize = function(film, width = 50 ) { # 重载基类的构造函数,根据输入的文字和宽度自动设置播放页
    film <- paste0( base::strrep(" ",width), film,base::strrep(" ",width), collapse="" ) 
    slides <- rep( base::strrep(" ",width) , nchar(film)-width+1 )
    for( i in 1:length(slides) ){
      slides[i] <- substr(film,i,i+width-1)
    }
    super$initialize(slides)
  }
 )
)
#' @test 
boy <- scroller$new("你可真是个小可爱! 不如...  和我在一起吧^_^",50) # 设置播放页的宽度为50
boy$autoplay(10) # 以每秒10页的速率播放
girl <- scroller$new("哈哈哈*—* 我就知道你喜欢我! 好吧,我就勉强答应你咯~",50) # 设置播放页的宽度为50
girl$autoplay(10) # 以每秒10页的速率播放

怎么在R语言中保留大于或小于特定数值的行

怎么在R语言中保留大于或小于特定数值的行

看完上述内容,你们对怎么在R语言中保留大于或小于特定数值的行有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

推荐阅读:
  1. R语言怎么选择特定的行
  2. 如何使用decode函数判断大于小于等于的情况

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

r语言

上一篇:使用R语言怎么获取指定位置的数据

下一篇:使用ASP.NET怎么创建一个网站web页面

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》