Используйте метод isin
. rpt[rpt['STK_ID'].isin(stk_list)]
.
Вероятно, вы ищете outer()
или бинарный оператор alias %o%
:
> c(2,3,4) %o% c(1,2)
[,1] [,2]
[1,] 2 4
[2,] 3 6
[3,] 4 8
> outer(c(2,3,4), c(1,2))
[,1] [,2]
[1,] 2 4
[2,] 3 6
[3,] 4 8
В вашем случае outer()
предлагает гибкость для указания функции, применяемой к комбинациям ; %o%
применяется только функция умножения *
. Для вашего примера и данных
mph <- function(d, rpm) {
cir <- pi * d
cir * rpm / 63360 * 60
}
> outer(c(20,26,29), c(150,350), FUN = mph)
[,1] [,2]
[1,] 8.924979 20.82495
[2,] 11.602473 27.07244
[3,] 12.941220 30.19618
Я считаю, что функция, которую вы ищете, это outer
> outer(cir, rpm, function(X, Y) X * Y / 63360 * 60)
[,1] [,2]
[1,] 8.924979 20.82495
[2,] 11.602473 27.07244
[3,] 12.941220 30.19618
. В этом случае вы можете немного очистить обозначение:
outer(cir, rpm / 63360 * 60)