R中返回矩阵的条件函数

R中返回矩阵的条件函数,r,function,for-loop,R,Function,For Loop,如果这是一个愚蠢的问题,我很抱歉,但我对它有点陌生。 我想写一个for循环,其中输入是一个时间序列。根据时间条件,我想选择mat1、mat2或mat3来替换“mat”参数并将其乘以2 输出顺便说一句,如果你想要连续整数的列表,你可以简单地使用time顺便说一句,如果你想要连续整数的列表,你可以简单地使用timemylist亲爱的罗兰。谢谢你抽出时间。我非常感谢。如果我想在每个时间点提取相应的mat,特别是第二行mat[,2],并将其相乘,我如何才能做到这一点?你有什么想法吗?现在它是一个列表格式

如果这是一个愚蠢的问题,我很抱歉,但我对它有点陌生。 我想写一个for循环,其中输入是一个时间序列。根据时间条件,我想选择mat1、mat2或mat3来替换“mat”参数并将其乘以2


输出顺便说一句,如果你想要连续整数的列表,你可以简单地使用
time顺便说一句,如果你想要连续整数的列表,你可以简单地使用
time
mylist亲爱的罗兰。谢谢你抽出时间。我非常感谢。如果我想在每个时间点提取相应的mat,特别是第二行mat[,2],并将其相乘,我如何才能做到这一点?你有什么想法吗?现在它是一个列表格式
mylist亲爱的罗兰。谢谢你抽出时间。我非常感谢。如果我想在每个时间点提取相应的mat,特别是第二行mat[,2],并将其相乘,我如何才能做到这一点?你有什么想法吗?亲爱的丹尼尔,现在这是一个列表。谢谢你抽出时间。我非常感谢。如果我想在每个时间点提取相应的mat,特别是第二行mat[,2],并将其相乘,我如何才能做到这一点?你有什么想法吗?现在它是一种列表格式,您可以将
函数(x)get(x)*2
更改为您想要的任何格式
get(x)
是每个“mat”,因此如果您只想要第二行,可以说
function(x)get(x)[2,]
而不是亲爱的Daniel。谢谢你抽出时间。我非常感谢。如果我想在每个时间点提取相应的mat,特别是第二行mat[,2],并将其相乘,我如何才能做到这一点?你有什么想法吗?现在它是一种列表格式,您可以将
函数(x)get(x)*2
更改为您想要的任何格式
get(x)
是每个“mat”,因此,如果您只想要第二行,可以说
function(x)get(x)[2,]
time=seq(0,10, by=1)
mat1 <- matrix(data = rexp(9, rate = 10), nrow = 3, ncol = 3)
mat2 <- matrix(data = rexp(9, rate = 10), nrow = 3, ncol = 3)
mat3 <- matrix(data = rexp(9, rate = 10), nrow = 3, ncol = 3)
lapply(as.character(cut(time,c(-1,3.1,6.1,10),labels=c('mat1','mat2','mat3'))), function(x) get(x)*2)


[[1]]
          [,1]      [,2]        [,3]
[1,] 0.4013379 1.2690301 0.142831401
[2,] 0.1536697 0.1132762 0.040964909
[3,] 0.1412248 0.2209273 0.007446217

[[2]]
          [,1]      [,2]        [,3]
[1,] 0.4013379 1.2690301 0.142831401
[2,] 0.1536697 0.1132762 0.040964909
[3,] 0.1412248 0.2209273 0.007446217

                 ...

[[10]]
           [,1]       [,2]       [,3]
[1,] 0.16712782 0.06451693 0.06554605
[2,] 0.03614116 0.18526124 0.46443236
[3,] 0.53055007 0.01203971 0.16585931

[[11]]
           [,1]       [,2]       [,3]
[1,] 0.16712782 0.06451693 0.06554605
[2,] 0.03614116 0.18526124 0.46443236
[3,] 0.53055007 0.01203971 0.16585931