Рассмотрим следующее подмножество моего поля данных:
Pack side row col v1 v2
1 P1 Left 1 1 0.4094 -3.8700
2 P1 Right 1 1 0.4110 -3.5245
3 P1 Left 1 2 0.4118 -3.4876
4 P1 Right 1 2 0.4108 -3.7268
5 P1 Left 1 3 0.4119 -3.5322
6 P1 Right 1 3 0.4110 -3.6101
Меня интересует разница между левым и правым для v1 и v2 соответственно, в частности, разница в% для v1 и прямая разница для v2.
Мой желаемый вывод - это новое поле данных, которое выглядит следующим образом:
Pack row col dv1 dv2
1 P1 1 1 0.389294404 0.3455
2 P1 1 2 -0.243427459 -0.2392
3 P1 1 3 -0.218978102 -0.0779
, где вычисление для dv1 равно (Right-Left)/Left*100
для v1, а вычисление для dv2 равно Right-Left
изv2.
Вот данные df:
df <- structure(list(Pack = structure(c(1L, 1L, 1L, 1L, 1L, 1L), .Label = c("P1",
"P2", "P3", "P4"), class = "factor"), side = structure(c(1L,
2L, 1L, 2L, 1L, 2L), .Label = c("Left", "Right"), class = "factor"),
row = c(1L, 1L, 1L, 1L, 1L, 1L), col = c(1L, 1L, 2L, 2L,
3L, 3L), v1 = c(0.4094, 0.411, 0.4118, 0.4108, 0.4119, 0.411
), v2 = c(-3.87, -3.5245, -3.4876, -3.7268, -3.5322, -3.6101
)), .Names = c("Pack", "side", "row", "col", "v1", "v2"), row.names = c(NA,
6L), class = "data.frame")
Спасибо!