如何解决如何使用R按行值范围过滤数据帧?
我有一个以下数据框,我想过滤仅包含2019-06-01至2019-06-30值的数据框
ds yhat
1 2015-01-01 -100
2 2015-01-02 250
3 2015-01-03 50
4 … 60
5 2019-06-30 370
解决方法
三种方法,具体取决于您选择的R生态系统:
### base R
subset(dat,as.Date("2019-06-01") <= ds & ds <= as.Date("2019-06-30"))
# ds yhat
# 5 2019-06-30 370
### tidyverse
library(dplyr)
dplyr::filter(dat,between(ds,as.Date("2019-06-01"),as.Date("2019-06-30")))
# ds yhat
# 5 2019-06-30 370
### data.table
library(data.table)
as.data.table(dat)[ between(ds,as.Date("2019-06-30")),]
# ds yhat
# 1: 2019-06-30 370
(仅供参考:我在dplyr::
之前加filter
到dplyr
的唯一原因是,有些人可以在不加载stats::filter
的情况下尝试通话,并且会发现library(dplyr)
的行为有很大不同。通常,如果您filter(dat,...)
,那么您应该只可以ds
。)
数据:
(Date
已转换为dat <- structure(list(ds = structure(c(16436,16437,16438,NA,18077),class = "Date"),yhat = c(-100L,250L,50L,60L,370L)),row.names = c("1","2","3","4","5"),class = "data.frame")
级。)
<form method="post" action='/cart' id="ajax">
{...}
<a href="/cart" class="new_popup ajax-popup-link" onclick="this.parentNode.submit();return false;">Add to Cart</a>
</form>
<script>
$('.ajax-popup-link').magnificPopup({
type: 'ajax',key: 'popup',preloader: false,fixedContentPos: false,closeOnBgClick: false,settings: null,gallery: {
// options for gallery
enabled: true
},});
$(document).magnificPopup({
delegate: '.new_popup',});
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。