Извините, что задал тривиальный вопрос. Вот мой пример данных:Как рассчитать взвешенное значение без цикла?
(x <- data.frame(period=c('20130101','20130102'),symbol=c('x1','x2'),V1=c(1,2),V2=c(3,4)))
(y <- data.frame(period=c('20130101','20130101','20130102','20130102'),
symbol=rep(c('V1','V2'),2),w1=rep(c(0.5,0.5),2),w2=rep(c(0.3,0.7),2),
w3=rep(c(0.2,0.8),2)))
В данный день и символ, есть два значения (V1, V2), в таблице «х».
period symbol V1 V2
1 20130101 x1 1 3
2 20130102 x2 2 4
В данный день, каждое значение (V1, V2) имеет три группы вес (w1, w2, w3).
period symbol w1 w2 w3
1 20130101 V1 0.5 0.3 0.2
2 20130101 V2 0.5 0.7 0.8
3 20130102 V1 0.5 0.3 0.2
4 20130102 V2 0.5 0.7 0.8
Как рассчитать взвешенное значение по двум таблицам без цикла? ** Например, в «20130101», V1 и V2 из «x1» равно 1 и 3 соответственно. Затем, найдя таблицу 'y' для даты '20130101' и V1 и V2, мы получим 3 группы весов. Взвешенное значение вычисляется по формуле:
wv1=1*0.5 + 3*0.5=2
wv2=1*0.3 + 3*0.7=2.4
wv3=1*0.2 + 3*0.8=2.6
таблица результатов выглядит следующим образом:
period symbol wv1 wv2 wv3
1 20130101 x1 2 2.4 2.6
...
+1 для «Уменьшить» по списку. Спасибо за показ! –
Большое вам спасибо. Это очень полезно. – YYY