我想制作矩阵而不使用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=2
和k=3
时,它会返回我想要的内容。
我想要的是一次返回9个矩阵的方法。
答案 0 :(得分:1)
您正在寻找lapply
,例如
res <- lapply((k-1)/k, m_maker)
但是,你真的应该使用数组这样的东西。
ares <- abind(res, along=3)