如何用矩阵进行指数计算?

Bor*_*Lim 1 r calculated-columns exponential

我想用矩阵和向量计算指数.矩阵如下

 ID     var_0     var_01    var_02   var_03 
 1        1         2        3        4
 2        5         6        7        8
 3        9         10       11       12
 ...
Run Code Online (Sandbox Code Playgroud)

和向量是(0.1,0.2,0.3,0.4)

我想得到如下结果

 ID       var_0   var_01     var_02   var_03 
 1        1^0.1     2^0.2    3^0.3    4^0.4
 2        5^0.1     6^0.2    7^0.3    8^0.4
 3        9^0.1     10^0.2   11^0.3    12^0.4
 ...
Run Code Online (Sandbox Code Playgroud)

也就是说,我想为每个ID获取(ith var)^ ith矢量

use*_*650 5

您可以使用R的向量回收.转置矩阵,以便以正确的顺序应用功率计算,然后转置回来.

(m <- matrix(1:12, nrow=3, ncol=4, byrow=TRUE))
#       [,1] [,2] [,3] [,4]
# [1,]    1    2    3    4
# [2,]    5    6    7    8
# [3,]    9   10   11   12

p <- 1:4

t(t(m)^p)
#       [,1] [,2] [,3]  [,4]
# [1,]    1    4   27   256
# [2,]    5   36  343  4096
# [3,]    9  100 1331 20736
Run Code Online (Sandbox Code Playgroud)