【发布时间】:2020-10-10 11:47:36
【问题描述】:
我有 2 个数据集
data1=structure(list(x1 = c(7L, 7L, 7L, 7L, 7L, 6L, 6L, 6L, 6L), x2 = c(2L,
2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L), x3 = c(1L, 1L, 1L, 2L, 1L, 2L,
1L, 1L, 2L), x4 = c(156L, 156L, 238L, 156L, 238L, 238L, 156L,
156L, 156L), x5 = c(0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L), x5.1 = c(31L,
1L, 9L, 8L, 6L, 11L, 3L, 3L, 2L), x6 = structure(c(1L, 1L, 1L,
1L, 1L, 2L, 2L, 2L, 2L), .Label = c("En", "RU"), class = "factor"),
x7 = structure(c(2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L), .Label = c("13",
"other"), class = "factor"), x8 = c(1L, 1L, 2L, 2L, 1L, 1L,
1L, 1L, 1L), x9 = c(0L, 1L, 0L, 0L, 2L, 3L, 2L, 0L, 0L),
x10 = c(0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L), x11 = c(745L,
120L, 140L, 200L, 130L, 410L, 460L, 460L, 675L), x12 = c(440L,
120L, 140L, 200L, 130L, 410L, 460L, 460L, 445L), x13 = c(2L,
0L, 0L, 0L, 0L, 0L, 2L, 1L, 1L), prediction = structure(c(1L,
5L, 6L, 8L, 7L, 2L, 3L, 3L, 4L), .Label = c("0.0646", "0.0713",
"0.1319", "0.2629", "0.3479", "0.3693", "0.4037", "0.4123"
), class = "factor")), class = "data.frame", row.names = c(NA,
-9L))
第二个数据集
data2=structure(list(pred = structure(c(4L, 2L, 1L, 3L, 1L, 5L, 7L,
6L, 6L, 1L), .Label = c("0.0226902365684509", "0.0326902365684509",
"0.0826902365684509", "0.1211001253128052", "0.411001253128052",
"0.611001253128052", "0.64564001253128052"), class = "factor")), class = "data.frame", row.names = c(NA,
-10L))
如何为每个变量 x1-x13 创建带有 data1$prediction 和 data2$pred 的数据透视表
通过手段激怒了
例如变量 x1 的期望输出
x1 mean_prediction mean_pred
7 0.31 0.056
6 0.14 0.569
输出中的 I.E 必须在一个数据框中包含 12 个表。而不是分离的数据帧。 怎么做?
#更新
structure(list(x1 = c(7L, 7L, 7L, 7L, 7L, 6L, 6L, 6L, 6L), x2 = c(2L,
2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L), x3 = c(1L, 1L, 1L, 2L, 1L, 2L,
1L, 1L, 2L), x4 = c(156L, 156L, 238L, 156L, 238L, 238L, 156L,
156L, 156L), x5 = c(0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L), x5.1 = c(31L,
1L, 9L, 8L, 6L, 11L, 3L, 3L, 2L), x6 = structure(c(1L, 1L, 1L,
1L, 1L, 2L, 2L, 2L, 2L), .Label = c("En", "RU"), class = "factor"),
x7 = structure(c(2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L), .Label = c("13",
"other"), class = "factor"), x8 = c(1L, 1L, 2L, 2L, 1L, 1L,
1L, 1L, 1L), x9 = c(0L, 1L, 0L, 0L, 2L, 3L, 2L, 0L, 0L),
x10 = c(0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L), x11 = c(745L,
120L, 140L, 200L, 130L, 410L, 460L, 460L, 675L), x12 = c(440L,
120L, 140L, 200L, 130L, 410L, 460L, 460L, 445L), x13 = c(2L,
0L, 0L, 0L, 0L, 0L, 2L, 1L, 1L), prediction = structure(c(1L,
5L, 6L, 8L, 7L, 2L, 3L, 3L, 4L), .Label = c("0.0646", "0.0713",
"0.1319", "0.2629", "0.3479", "0.3693", "0.4037", "0.4123"
), class = "factor"), pred = c(0.121100125, 0.032690237,
0.022690237, 0.082690237, 0.022690237, 0.411001253, 0.645640013,
0.611001253, 0.611001253)), class = "data.frame", row.names = c(NA,
-9L))
【问题讨论】:
-
data1$prediction和data2$pred有什么关系? -
@RonakShah,这些数据可以通过 cbind 绑定。没关系。我只是复制 pred 并粘贴到新数据集中
-
data1有 9 行,data2有 10 行。我认为我们不能直接cbind。 -
@RonakShah,这是我的错误,请检查编辑后的帖子,我做了 cbind ,这里一定是正确的
标签: r dplyr data.table