Я пытаюсь смоделировать некоторые кости.
На каждой стороне есть продукт. Моя цель - собрать все возможные комбинации, а затем суммировать их построчно (возможно, добавив в столбцы, созданные для этой цели)
Я все еще не очень хорошо разбираюсь в R, и я пробовал много вещей, но я, вероятно, неправильно их применил, поэтому я не чувствую себя в безопасности, говоря вам: «Я пробовал X, и это не сработало». Вместо этого я пытаюсь объяснить свою проблему как можно точнее.
Вот что я делаю:
Это добавляет столбцы для суммирования бросков костей. Работает нормально.
Makecolumns <- function(df){
df[,"Number of fruits eaten"] <- NA
df[,"Had a vegetable?"] <- NA
df[,"Exotic fruits included?"] <- NA
df[,"Number of exotic fruits included?"] <- NA
return(df)
}
Создает таблицу со всеми возможными комбинациями. Работает нормально.
createfruittable <- function(nr_one=0,nr_two=0,nr_three=0){
one <- as.data.frame(c("Bacon","Bacon","Mango","Mango","Pear","Pear","Cucumber","Pear_pear"))
two <- as.data.frame(c("Bacon","Bacon","Pear","Pear","Pear","Pear","Pear_Mango","Pear_Mango"))
three <- as.data.frame(c("Pear","Pear","Pear","Pear","Mango","Mango","Cucumber","Cucumber"))
result <- (expand.grid(c(replicate(nr_one,one),replicate(nr_two,two),replicate(nr_three,three))))
convertfruit(result)
}
Пример с одним кубиком
fruits_eaten <- createfruittable(nr_one = 1, nr_two = 1,nr_three = 1)
Названия столбцов, которые я добавляю, должны объяснять, что я пытаюсь суммировать / считать. Если вы запустите код, я думаю, он будет интуитивно понятным.
Я хочу идти строка за строкой и рассчитывать на основе комбинации результатов игры в кости. Это доставляет мне неприятности, поскольку результаты бросков кубиков являются факторами в моем фрейме данных, и я не смог использовать условия для получения нужного мне результата.
Пример:
Если у меня в ряду 1 есть Груша, Манго, Огурец, я хочу подсчитать, что в этом рулете было 2 фрукта, экзотический фрукт, 1 экзотический фрукт и овощи.