bjeto soma em uma coluna entre um intervalo definido por outra colu
Tenho um quadro de dados como este:
df
A B
[1,] 1 4
[2,] 2 3
[3,] 3 5
[4,] 4 7
[5,] 5 5
[6,] 6 7
[7,] 7 4
[8,] 8 7
[9,] 9 3
[10,] 10 7
Preciso somar os números na coluna B que se situam entre um determinado intervalo definido pela coluna A. Por exemplo, somar o valor em B entre A≥1 e A <3.
Estou tentando usar isso:
> sum(which(df$B[df$A>=1] & df$B[df$A<3]))
mas não me dá o que quero.