У меня есть проблема, которую я просто не могу решить.
Скажем, у меня есть все oop, как показано в минимальном рабочем примере ниже Я хочу, чтобы R делал для каждой итерации новую переменную "summary" (в этом примере "dogfood_items", "catfood_items" и "fishfood_items"), т.е. я не могу получить выражение "Summaze (str_ *) 1014 * (food [i], "items", sep = "_") = sum (items)) "для работы. Определение промежуточной переменной (например, <- str_ c (food [i], "items", sep = "_")), а затем запись суммирования (a = sum (items), к сожалению, также не работает. </p>
Что меня беспокоит, так это то, что "str_ c (food [1]," items "," sep = "_"), стоящий сам по себе, работает совершенно нормально. Он не работает в рамках суммирования ( ...).
У кого-нибудь есть идеи, как заставить это работать?
Пожалуйста, не обращайте на меня внимания sh. Я довольно новичок в R.
С наилучшими пожеланиями, Дэвид.
library(tidyverse)
food <- c("dogfood", "catfood", "fishfood")
output <- list()
data <- tribble(
~items, ~cost, ~staff, ~foodtype,
100, 200, 11, "dogfood",
120, 20, 12, "dogfood",
40, 120, 12, "catfood",
10, 12, 13, "fishfood",
)
data # view data
for (i in seq_along(food))
output[[i]] <- data %>%
filter(foodtype==food[i]) %>%
summarise(str_c(food[i], "items", sep="_")=sum(items)) # the problem is here !