给定以下矩阵,第一列中的权重为 ls,第二列中的 heihts 为:
> wgt.hgt.matrix
[,1] [,2]
[1,] 180 70
[2,] 156 67
[3,] 128 64
[4,] 118 66
[5,] 202 72
我正在寻找一种简洁的方法来应用这个二进制函数,比如
function(lb, inch) { (lb/inch**2)*703 } -> bmi
到矩阵的每一行,产生一个数组、列表或向量,其中包含 5 个结果 BMI 值。我发现的一种方法使用该apply
功能:
apply(wgt.hgt.matrix, 1, function(row) bmi(row[1], row[2]))
但是 Ruby (*) 中的 splat 运算符将有助于使调用更加简洁明了:
apply(wgt.hgt.matrix, 1, function(row) bmi(*row))
是否存在与 splat 运算符等效的语法元素,即告诉 R 拆分所有类似向量的对象以填充参数列表的语法元素?还有其他更简单或更简洁的apply
电话建议吗?