Есть ли способ использовать функцию фильтрации внутри сводки, например:
#I have a dataset with 5 columns Price, Type, Amount USD, date
# I only want the mean price of the rows that are not Type == "SELL"
data = summarise(Price = filter(!Type == "SELL") %>% mean(Price), Amount = sum(Amount), USD = sum(USD), date = min(date))
Вы можете использовать :
library(dplyr)
data %>%
summarise(Price = mean(Price[Type != 'SELL']),
Amount = sum(Amount),
USD = sum(USD),
date = min(date))
Чтобы использовать его в трубах:
data %>%
summarise(Price = mean(data %>% filter(Type != 'SELL') %>% pull(Price)),
Amount = sum(Amount),
USD = sum(USD),
date = min(date))
Это так, но я нахожу его очень запутанным для этой задачи. Смотрите обновленный ответ.
спасибо, просто чтобы убедиться, что нельзя использовать каналы внутри функции суммирования?