Вычисление среднего значения подмножества в кадре данных в r

Я новичок в R и борюсь с вычислением среднего значения подмножеств. У меня есть 12 CSV-файлов в "папке данных". Имена столбцов в каждом csv - "Дата заказа", "Идентификатор", "Кекс" и "Маффин". Все значения в последних 3 столбцах являются числовыми, за исключением некоторых NA. Мне нужно рассчитать среднее количество каждого типа торта для каждого ID (номер магазина). В приведенном ниже коде я попытался связать все файлы CSV в кадре данных. Я хочу иметь возможность вызывать среднее значение каждого отдельного столбца тортов, поэтому я попытался установить подмножество "кекс" и "сдобы", чтобы найти среднее значение подмножества при выборе идентификатора или диапазона идентификаторов.

 cakemean <- function(directory, cake, ID=1:12) {    
+                 files_list <- dir("datafolder", full.names = TRUE)     
+                 dat <- data.frame()      
+                 for (i in 1:12) {              
+                 dat <- rbind(dat, read.csv(files_list[i]))    }    
+                 dat_subset <- subset(dat, dat$ID == ID)     
+                 mean(dat_subset$cupcake, na.rm = TRUE)
+                 mean(dat_subset$muffin, na.rm = TRUE)
+               
+         }
>         cakemean("datafolder", "cupcake", 1)
[1] 0.5528041
> cakemean("datafolder", "muffin", 1)
[1] 0.5528041
> cakemean("datafolder", "cupcake", 1:5)
[1] 0.5528041

Когда я вызываю "cakemean", я получаю возвращенное значение, которое не является средним значением выбранного торта. Выбираю ли я "кекс" или "маффин", я получаю одно и то же значение, и если я все еще получаю то же значение, если я не выбираю торт и просто выбираю идентификатор.

Я искал повсюду, пытаясь найти решение этой проблемы, но у меня, похоже, были проблемы с вычислениями среднего значения. Я пытался использовать colMeans, и это оказалось менее полезным, чем описанный выше подход. Мне нужно, чтобы эту функцию можно было многократно использовать, поскольку, возможно, она понадобится мне позже, чтобы вычислить среднее или медианное значение по дате заказа.

Какие-либо предложения?

0 ответов

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