У меня есть необходимость подмножества данных по строкам на основе переменной «Флаг». То есть, в примере ниже, если флаг == 1 сопровождается тремя или любыми 0, то суммируйте M1 и M2 для трех строк, где флаг == 0. Я ожидаю, что в G1 + G2 количество таких событий будет изменяться , Для каждого требуется сводка.R: Условно подмножество строк
Может ли такое подмножество и подведение итогов выполняться такими функциями, как агрегат или его варианты, или это должно быть закодировано с помощью циклов, явно индексируя каждый элемент? Любые намеки были бы наиболее ценными.
G1 G2 G3 Flag M1 M2
10 1 0 0 0 5336.682
10 1 0 1 1 1871.782
10 1 0 0 0 3330.898
10 1 0 0 0 763.134
10 1 0 0 1 1183.485
10 1 0 0 1 385.664
10 1 0 0 1 372.036
10 1 0 1 1 329.601
10 1 1 1 0 281.965
10 1 1 0 0 377.866
10 1 1 0 0 328.342
10 1 1 0 0 512.528
10 1 1 1 0 777.216
10 1 1 0 0 409.559
10 1 1 1 0 417.606
10 1 1 1 0 673.728
10 1 1 0 0 1090.082
10 1 1 0 0 345.481
10 1 1 0 0 329.294
10 2 ... ... ... ...
11 1 ... ... ... ...
... ... ... ... ... ...
11 2 ... ... ... ...
Итак, группа остается прежней, пока вы не нажмете новый флаг == 1, а затем это следующая группа? – C8H10N4O2
G2 вложен в G1. G2 состоит из двух уровней: 1 и 2. Я надеюсь найти все экземпляры ограничений (Flag == 1, за которым следуют три или что-то еще Флаг == 0), а затем сгенерировать итоговую статистику (например, среднее значение) для двух переменных проценты, M1 & M2. Таким образом, в этом примере сводная статистика будет выполняться на трех строках после флага. Первый выход будет генерироваться из M1 [0, 0, 1] и M2 [3330.898, 763.134, 1183.484]. Затем для M1 [0,0,0] и M2 [377,866, 328,342, 512,528]. Следующий флаг == 1 не удовлетворяет ограничениям. Все они будут сгруппированы с G1 [10], G2 [1]. – ksing