通过为每个id R分配一个序列来创建变量

问题描述 投票:0回答:1

我从具有ID的数据框中获得此列:

id
1
3
9
12
11

ID在数据框中不会重复。我正在尝试创建一个新的数据帧,为每个ID分配一个序列c(-1:1)。我正在尝试得到这样的东西:

id   seqvalue
1  -1
1   0
1   1
3   -1
3   0
3   1
9   -1
9   0
9   1
12   -1
12   0
12   1
11   -1
11   0
11   1
r variable-assignment seq
1个回答
0
投票

1]像这样使用expand.grid

DF <- data.frame(id = c(1, 3, 9, 12))
expand.grid(seqvalue = seq(-1, 1), id = DF$id)[2:1]

[2)另一种可能性是merge

merge(data.frame(seqvalue = seq(-1, 1)), DF)[2:1]
© www.soinside.com 2019 - 2024. All rights reserved.