Порядок операций в кратком изложении

Что происходит в первой строке кода и почему результат отличается от двух следующих?

library(tidyverse)
library(magrittr)

data.frame(A=c(2,2),B=c(1,1)) %>%
   summarise(A = sum(A),B = sum(B), D=sum(A)-sum(B))

дает D=0

data.frame(A=c(2,2),B=c(1,1)) %>%
   summarise(A = sum(A),B = sum(B), D=sum(A-B) )

урожайность в D=2

data.frame(A=c(2,2),B=c(1,1)) %>% 
  summarise(sum_A = sum(A),sum_B = sum(B), D=sum(A)-sum(B))

дает в D=2.

Кажется, я не могу объяснить, как D=0 может быть результатом такой операции. Как может D=0 быть разумным результатом?

1 ответ

Это ошибка, см. https://github.com/tidyverse/dplyr/issues/3233. Это исправлено в 0.7.4.9001.

Другие вопросы по тегам