使用cumsums过滤行销售高于...(dplyr)

时间:2015-08-05 21:22:28

标签: r dplyr

我有一个这样的数据框:

$dec_respo = (json_decode($response, true));    
$new_data = $deco_respo['identities']['user_id'];

我需要选择所有月份的销售额大于23000的行。结果应该是:

set.seed(1234)
Name <- c(rep("A", 4), rep("B", 4), rep("C", 4), rep("D", 4))
Month <- rep(c("M1","M2","M3","M4"), 4)
Sales <- sample(1000:10000, 16)
df <- data.frame(Name, Month, Sales)

我想,这是关键,但我无法获得正确的dplyr公式用于过滤。

2 个答案:

答案 0 :(得分:1)

您可以尝试以下方法:

function deletepaths()
{
  if (!documents.length) return false;

  var doc = activeDocument;
  var save = ["Ex1", "Ex2", "Ex3"];

  for (var x = 0; x < doc.pathItems.length; x++)
  {
    if (save.indexOf(doc.pathItems[x].name) == -1)
    {
      doc.pathItems[x].remove();
    }
  }
}

答案 1 :(得分:1)

这是一个基础R解决方案。

 ind <- cumsum(df$Sales) > 23000
 df[ind, ]
   Name Month Sales
5     B    M1  8745
6     B    M2  6760
7     B    M3  1085
8     B    M4  3091
9     C    M1  6990
10    C    M2  5624
11    C    M3  7236
12    C    M4  5899
13    D    M1  3541
14    D    M2  9299
15    D    M3  3627
16    D    M4  8523