这个问题在这里已有答案:
我想使用以下向量创建一个新的数据表。我有两个表,一个包含100个人的列表,以及一个包含5个测试的列表。我想组合表,但是,我想为每个主题的每个测试都有一行,所以在新表中我将有500行。我使用下面的简化示例。这是在R.
person <- data.frame(c("a", "b", "c", "d"))
test <- data.frame(c("1", "2", "3", "4", "5"))
我想从下面创建一个新表
person test
a 1
a 2
a 3
a 4
a 5
b 1
b 2
b 3
b 4
b 5
...等
我最初尝试加入,但没有变量可以匹配,也尝试粘贴没有运气。我觉得我错过了一些东西,因为这听起来很简单。任何帮助,将不胜感激!
干得好。
expand.grid(person = c("a", "b", "c", "d"),
test = c("1", "2", "3", "4", "5"))
使它成为data.table()
expand.grid(person = c("a", "b", "c", "d"),
test = c("1", "2", "3", "4", "5"))%>%
data.table()
这给出了人与测试之间所有可能的配对。
这也许是一些帖子的重复。
我们也可以使用CJ
包中的data.table。输出是data.table
。
library(data.table)
CJ(person[, 1], test[, 1])
# V1 V2
# 1: a 1
# 2: a 2
# 3: a 3
# 4: a 4
# 5: a 5
# 6: b 1
# 7: b 2
# 8: b 3
# 9: b 4
# 10: b 5
# 11: c 1
# 12: c 2
# 13: c 3
# 14: c 4
# 15: c 5
# 16: d 1
# 17: d 2
# 18: d 3
# 19: d 4
# 20: d 5