来自Mathematica的MapThread函数

时间:2015-10-12 09:01:05

标签: r function wolfram-mathematica

来自Mathematica我开始使用R.在Mathematica中有一个函数MapThread。从不同列表的元素插入功能。 这是一个小例子:

MapThread[#1*#2 &, {{1, 2, 3}, {4, 5, 6}}]

返回:

{4,10,18}

我想知道R中是否有相同的功能。

2 个答案:

答案 0 :(得分:2)

您可以使用mapply('*', c(1,2,3), c(4,5,6)) [1] 4 10 18

*

第一个参数是在以下参数上以元素方式应用的函数(在本例中是乘法?mapply)。然后第二个参数是第一个向量,第三个参数是第二个向量(将在其元素上应用函数)。

如果您在控制台上输入django-bower,则可以查看更多示例并阅读相关内容。

答案 1 :(得分:2)

如果由于一些奇怪的原因你可以做到显而易见,例如,c(1,2,3) * c(4,5,6)do.call会比mapply更有效:do.call("*", list(c(1,2,3), c(4,5,6)))

我认为这相当于您的Mathematica代码所做的事情。