2012-05-08 4 views
0

Как бы найти средние значения активных наблюдений за каждый день в шестимесячный период. Данные выглядит следующим образом:Средние значения активных записей

output start  end 
12000 04/01/2012 04/01/2012 
2175 11/25/2011 01/22/2012 
1800 12/06/2011 01/23/2012 
1795 03/23/2012 03/23/2012 
1550 04/03/2012 04/20/2012 
3400 10/13/2011 01/24/2012 
1850 02/27/2012 03/08/2012 
2500 11/08/2011 01/24/2012 
5350 02/02/2012 04/01/2012 
2550 02/09/2012 04/09/2012 
8000 11/01/2011 01/22/2012 
2725 12/02/2011 01/22/2012 
6249 01/12/2012 01/24/2012 
1875 01/22/2012 02/28/2012 
2550 01/18/2012 01/24/2012 
2650 01/28/2012 01/29/2012 
2100 11/25/2011 02/21/2012 
6900 01/17/2012 02/17/2012 
1779 04/21/2012 04/21/2012 
4900 11/09/2011 01/22/2012 
3250 12/09/2011 01/24/2012 
2995 03/14/2012 04/18/2012 

Так за каждый день в течение шести месяцев, я хочу, чтобы найти среднее значение всех активных наблюдений в этот день. Например, второе замечание выше было бы включено во все другие активные наблюдения, чтобы найти средние значения в дни между 25.11.2011 и 22.01.2012.

любые идеи о том, как вытащить

ответ

1
start <- as.Date(data$start, "%m/%d/%Y") 
end <- as.Date(data$end, "%m/%d/%Y") 
period <- as.Date(min(start):max(end), origin = "1970-01-01") 
averages <- sapply(period, function(x) mean(data[x >= start & x <= end, 'output'])) 
data.frame(period, averages) 
+0

Когда я попытался «средние», я получаю: Ошибка в среднем (данные [х> = пуск и х <= конец, «выход»]) : Ошибка при оценке аргумента 'x' при выборе метода для функции 'mean': Ошибка в данных [x> = start & x <= end, "output"]: объект типа 'замыкание' не является подмножеством – cconnell

+0

Должно быть что-то не так с вашей переменной данных, данные <- read.table ("1.txt", header = T, quote = "\" ") - это то, как я загрузил его – Julius

+0

Спасибо, я перезагрузил данные, и это сработало – cconnell

Смежные вопросы