【发布时间】:2019-06-19 17:04:35
【问题描述】:
我有一个机器学习模型精度数据集,我希望将其作为箱线图进行比较,但是我不知道如何将 Y 轴设置为精度。
我的数据是模型在每个 kfold 交叉验证中的准确度:
Model 1 2 3 4 5 6 7 8 9 10
LR 0.69047619 0.71428571 0.61904762 0.57142857 0.69047619 0.69047619 0.73809524 0.76190476 0.78571429 0.76190476
SVM 0.80952381 0.76190476 0.76190476 0.76190476 0.80952381 0.76190476 0.78571429 0.76190476 0.88095238 0.88095238
RF 0.73809524 0.61904762 0.52380952 0.61904762 0.73809524 0.71428571 0.73809524 0.71428571 0.88095238 0.71428571
GBM 0.83333333 0.83333333 0.73809524 0.73809524 0.78571429 0.83333333 0.80952381 0.80952381 0.88095238 0.85714286
MLP 0.85714286 0.80952381 0.80952381 0.76190476 0.78571429 0.83333333 0.76190476 0.92857143 0.92857143 0.85714286
Keras 0.9047619 0.85714286 0.80952381 0.85714286 0.83333333 0.78571429 0.88095238 0.92857143 0.88095238 0.92857143
我试过了:
accuracy <- c(0,1)
p <- ggplot(bxplt, aes(Model, accuracy))
p + geom_boxplot()
Error: Aesthetics must be either length 1 or the same as the data (6): y
我觉得我一定遗漏了一些明显的东西,但我找不到任何其他足够相似的问题或具有类似示例的资源,我们将不胜感激。
dput(bxplt)
structure(list(Model = structure(c(3L, 6L, 5L, 1L, 4L, 2L), .Label = c("GBM",
"Keras", "LR", "MLP", "RF", "SVM"), class = "factor"), X1 = c(0.69047619,
0.80952381, 0.73809524, 0.83333333, 0.85714286, 0.9047619), X2 = c(0.71428571,
0.76190476, 0.61904762, 0.83333333, 0.80952381, 0.85714286),
X3 = c(0.61904762, 0.76190476, 0.52380952, 0.73809524, 0.80952381,
0.80952381), X4 = c(0.57142857, 0.76190476, 0.61904762, 0.73809524,
0.76190476, 0.85714286), X5 = c(0.69047619, 0.80952381, 0.73809524,
0.78571429, 0.78571429, 0.83333333), X6 = c(0.69047619, 0.76190476,
0.71428571, 0.83333333, 0.83333333, 0.78571429), X7 = c(0.73809524,
0.78571429, 0.73809524, 0.80952381, 0.76190476, 0.88095238
), X8 = c(0.76190476, 0.76190476, 0.71428571, 0.80952381,
0.92857143, 0.92857143), X9 = c(0.78571429, 0.88095238, 0.88095238,
0.88095238, 0.92857143, 0.88095238), X10 = c(0.76190476,
0.88095238, 0.71428571, 0.85714286, 0.85714286, 0.92857143
)), class = "data.frame", row.names = c(NA, -6L))
【问题讨论】:
-
您能否通过
dput(df)的输出提供您的数据,其中df是您的数据框? -
感谢您的回复,我试过这个并添加到
-
箱线图可能不是理想的可视化。点和小提琴图(请参阅下面的答案)将比箱线图更好地显示您的实际数据。
标签: r machine-learning ggplot2