gpt4 book ai didi

r - R中不循环添加2个向量

转载 作者:行者123 更新时间:2023-12-02 05:49:45 25 4
gpt4 key购买 nike

我正在尝试编写一个函数,输入 2 个向量并返回一个矩阵,其中每个元素 [i,j] 是 x[i]+y[j]

例如,假设 x 是

2 3 5 7

y 是

2 3 8

输出需要是

4  5  10 5  6  11 7  8  15 9  10 15

如何通过使用 apply 函数之一(在 R 中)而不使用循环来完成此操作?

最佳答案

您需要使用outer()convert the result to a matrix row-by-row首先使用 t() 转置它:

> x <- c(2,3,5,7)
> y <- c(2,3,8)
> outer(x,y,"+")
[,1] [,2] [,3]
[1,] 4 5 10
[2,] 5 6 11
[3,] 7 8 13
[4,] 9 10 15
> as.vector(t(outer(x,y,"+")))
[1] 4 5 10 5 6 11 7 8 13 9 10 15

关于r - R中不循环添加2个向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37439525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com