在R中制作矩阵

时间:2015-10-04 12:24:36

标签: r

我想制作矩阵而不使用for,while等循环。 所以我尝试分配k并将k放在函数中,这就是制作矩阵。

powlist= function(base,startnum,endnum) (base)^(startnum:endnum)

m_maker= function(base) matrix(c(powlist(base,0,19)),4,5)

k= 2:10
a= m_maker((k-1)/k)

但是函数只返回一个矩阵。 我认为函数应该返回9个矩阵。 请让我知道如何更改此代码。

我想让每个矩阵的第一个是矩阵m_maker(1/2)和 第二个m_maker(2/3)等等。 当我每次都放k=2k=3时,它会返回我想要的内容。 我想要的是一次返回9个矩阵的方法。

1 个答案:

答案 0 :(得分:1)

您正在寻找lapply,例如

res <- lapply((k-1)/k, m_maker)

但是,你真的应该使用数组这样的东西。

ares <- abind(res, along=3)