Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何筛选特定日期范围内的数据集?_R_Date_Subset - Fatal编程技术网

R 如何筛选特定日期范围内的数据集?

R 如何筛选特定日期范围内的数据集?,r,date,subset,R,Date,Subset,如果我有一个数据集,并希望根据r中的特定日期范围对特定列求和? 例如 数据集 Guest Sales date A 50 2018-08-10 B 180 2018-08-10 C 20 2018-08-15 D 390 2018-08-20 我想要2018-08-10和2018-08-16之间的销售总额?您可以尝试: sum(df[df$date >="2018-08-10" & d

如果我有一个数据集,并希望根据r中的特定日期范围对特定列求和? 例如 数据集

Guest  Sales  date
A        50      2018-08-10
B        180     2018-08-10
C         20     2018-08-15
D         390    2018-08-20
我想要2018-08-10和2018-08-16之间的销售总额?

您可以尝试:

sum(df[df$date >="2018-08-10" & df$date<="2018-08-16",]$Sales)

sum(df[df$date>=“2018-08-10”&df$date=“2018-08-10”&date使用库的解决方案
dplyr

library(dplyr)
df %>% 
  filter(date > "2018-08-10" & date < "2018-08-16") %>% 
  summarise(sum_sales = sum(Sales))
#    sum_sales
# 1        20
库(dplyr)
df%>%
过滤器(日期>“2018-08-10”和日期<“2018-08-16”)%%
总结(销售总额=销售总额)
#销售总额
# 1        20
数据:


df请将您的数据保存为文本而不是图像。请参阅,但是,我需要2018-08-10和2018-08-16期间的销售额总和。这应该是250而不是20。这就像添加
=

df <- data.table::fread("Guest  Sales  date
                         A        50      2018-08-10
                         B        180     2018-08-10
                         C         20     2018-08-15
                         D         390    2018-08-20")
library(dplyr)
df %>% 
  filter(date > "2018-08-10" & date < "2018-08-16") %>% 
  summarise(sum_sales = sum(Sales))
#    sum_sales
# 1        20
df <- data.table::fread("Guest  Sales  date
                         A        50      2018-08-10
                        B        180     2018-08-10
                        C         20     2018-08-15
                        D         390    2018-08-20", data.table=FALSE)