Порядок операций суммирования dplyr влияет на вывод - PullRequest
0 голосов
/ 29 января 2019

Заметил какое-то любопытное поведение, которое я не могу понять.

Учитывая следующий набор данных:

"Well"  "PlateID"   "SourceFile"    "Frequency" "SI"    "Description"
"341"   "H10"   1   "94: DDG-00005, HVTN505 CC, Plate1_H10_H10_094.fcs" 24.5    9867    "PBS Background"
"342"   "H10"   2   "190: DDG-00005, HVTN505 CC, Plate2_H10_H10_094.fcs"    26.7    10493   "PBS Background"
"343"   "H10"   3   "286: DDG-00005, HVTN505 CC, Plate3_H10_H10_094.fcs"    31.1    10508   "PBS Background"
"344"   "H10"   4   "382: DDG-00005, HVTN505 CC, Plate4_H10_H10_094.fcs"    52.8    11780   "PBS Background"
"345"   "H11"   1   "95: DDG-00005, HVTN505 CC, Plate1_H11_H11_095.fcs" 2.75    8741    "PBS Background"
"346"   "H11"   2   "191: DDG-00005, HVTN505 CC, Plate2_H11_H11_095.fcs"    1.74    10422   "PBS Background"
"347"   "H11"   3   "287: DDG-00005, HVTN505 CC, Plate3_H11_H11_095.fcs"    2.11    9368    "PBS Background"
"348"   "H11"   4   "383: DDG-00005, HVTN505 CC, Plate4_H11_H11_095.fcs"    4.99    8580    "PBS Background"
"349"   "H12"   1   "96: DDG-00005, HVTN505 CC, Plate1_H12_H12_096.fcs" 4.26    9845    "PBS Background"
"350"   "H12"   2   "192: DDG-00005, HVTN505 CC, Plate2_H12_H12_096.fcs"    41  11455   "PBS Background"
"351"   "H12"   3   "288: DDG-00005, HVTN505 CC, Plate3_H12_H12_096.fcs"    9.31    8982    "PBS Background"
"352"   "H12"   4   "384: DDG-00005, HVTN505 CC, Plate4_H12_H12_096.fcs"    NA  NA  "PBS Background"

, если я выполняю операции в этом порядке, я получаю желаемый вывод:

run.data.avg.pbs <- run.data[run.data$Description == "PBS Background",] %>%
  group_by(Description, PlateID) %>%
  summarise(SI.plateCV = round(cv(SI), 2),
            SI = round(mean(SI), 2),
            Frequency.plateCV = round(cv(Frequency), 2),
            Frequency = round(mean(Frequency), 2))

Однако, если выполняются операции в следующем порядке:

run.data.avg.pbs <- run.data[run.data$Description == "PBS Background",] %>%
  group_by(Description, PlateID) %>%
  summarise(SI = round(mean(SI), 2),
            SI.plateCV = round(cv(SI), 2),
            Frequency = round(mean(Frequency), 2),
            Frequency.plateCV = round(cv(Frequency), 2))

столбцы SI.plateCV и Frequency.plateCV возвращаются пустыми (NA).Что дает?

edit: забыл упомянуть, что cv () из растрового пакета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...