需要将 expand.grid 的输出合并到 R 中的 csv 文件中
need to merge output of expand.grid into a cvs file in R
我有 20 个不同的列表变量 say
a= c("red" "blue"), b= c("circle", "square"), c= c("inside","outside")
我正在通过命令获取不同列表之间的组合:
data1 <- expand.grid(a, b)
data2 <- expand.grid(a, d)
我想将 data1
和 data2
的所有输出合并到一个数据集中。
我想将数据导出到 cvs 文件中。
对于给定的示例,您可以这样做:
all_combined <- do.call("rbind",
lapply(combn(list(a, b, c), 2, simplify = FALSE),
do.call, what = "expand.grid")
)
输出
# Var1 Var2
#1 red circle
#2 blue circle
#3 red square
#4 blue square
#5 red inside
#6 blue inside
#7 red outside
#8 blue outside
#9 circle inside
#10 square inside
#11 circle outside
#12 square outside
如果你只是想要特定的组合,你可以这样做:
data1 <- expand.grid(a, b)
data2 <- expand.grid(a, c)
combined <- rbind(data1, data2)
然后可以使用以下方法将其写入 CSV:
write.csv(combined, "CombinedData.csv")
我有 20 个不同的列表变量 say
a= c("red" "blue"), b= c("circle", "square"), c= c("inside","outside")
我正在通过命令获取不同列表之间的组合:
data1 <- expand.grid(a, b)
data2 <- expand.grid(a, d)
我想将 data1
和 data2
的所有输出合并到一个数据集中。
我想将数据导出到 cvs 文件中。
对于给定的示例,您可以这样做:
all_combined <- do.call("rbind",
lapply(combn(list(a, b, c), 2, simplify = FALSE),
do.call, what = "expand.grid")
)
输出
# Var1 Var2
#1 red circle
#2 blue circle
#3 red square
#4 blue square
#5 red inside
#6 blue inside
#7 red outside
#8 blue outside
#9 circle inside
#10 square inside
#11 circle outside
#12 square outside
如果你只是想要特定的组合,你可以这样做:
data1 <- expand.grid(a, b)
data2 <- expand.grid(a, c)
combined <- rbind(data1, data2)
然后可以使用以下方法将其写入 CSV:
write.csv(combined, "CombinedData.csv")