这个问题在这里已有答案:
我在R中有以下基本问题
我有一个 for (k in 1:x){...}
循环,它产生长度取决于 k
的数值向量 . 对于 k
的每个值,我产生一个数值向量 .
如果可能的话,我想将它们收集为R中的数据帧行 . 换句话说,我想介绍一个数据框 data
s.t.
for (k in 1:x) {
data[k,] <- ...
}
其中点表示生成矢量的命令,其长度取决于 k
.
不幸的是,据我所知,R中数据帧的行长度是常量,因为它是一个相等长度的向量列表 . 我已经尝试用适当数量的零来完成每一行以达到恒定长度(在这种情况下等于 x
) . 我想工作"dynamically" .
我不认为这个问题等同于数据帧中不同长度的合并向量;由于 if
循环,每步只知道1个向量 .
Edit
我的意思是一个非常简单的例子 . 对于每个 k
,我想编写其组件为 1,2,...,k
的向量,并将其存储为 k
数据帧 data
的第一行 . 在上面的设置中,我会写
for (k in 1:x) {
data[k,] <- seq(1,k,1)
}
由于 seq(1,k,1)
的长度取决于 k
,因此代码不起作用 .
1 回答
你可以考虑在这里使用
plyr
的ldply
.