0

我有一个矩阵或数据表如下:

which looks like
   time      node1                 node2               node3
   1         100                  200                  300
   2         101                  245                  329   
   3         90                   245                  350 
   4         129                  320                  290
   5         79                   270                  320

我想将此矩阵读取为:

In first run – 1,101,245,290 and assign to some vector
In second run – 2,90,320,320 and assign to some vector.
In third run—3,129,270 and assign to some vector.

这样在后期我可以使用这个向量进行数学计算。

过程类似于每个阶段每个时钟滴答输出的管道。

4

1 回答 1

0

这将使您大部分时间到达那里。data.frame您可以使用矩阵索引 a 。第一列表示行,第二列表示列。看起来你想创建对角线向量

vecs <- lapply(1:3, function(i) df[cbind(pmin(i + 0:3, nrow(df)), 1:4)])

> vecs
[[1]]
[1]   1 101 245 290

[[2]]
[1]   2  90 320 320

[[3]]
[1]   3 129 270 320
于 2016-01-18T17:21:45.663 回答