首页 > 解决方案 > 在 R 中应用 CV = true 的 LDA 时获取 LD1 值

问题描述

我们想看看记录的脑电图数据是否是一个很好的分类器,可以将参与者分为 A 组或 B 组。

我使用包中的LDA函数进行线性判别分析。为了确保模型具有泛化性,我们添加了留一法交叉验证 ( )。所有这些都非常有效。MASSRCV = TRUE

现在我想根据判别分数可视化这个分类。更具体地说,在 x 轴上显示两组,在 y 轴上显示判别分数。像这样:基于判别分数的分类

但是,在应用时CV = TRUE,不能使用predictLDA对象上的函数来生成LD1值。此外,没有返回线性判别式的系数(可用于自己计算判别分数(基于这些链接:什么是 LDA 中的“线性判别式系数”?判别函数))。

当我删除 时CV = TRUE,我可以在之后使用该predict函数并获得可视化所需的LD1 值(即判别分数)。但是,我的分类结果会根据我是否应用留一法交叉验证而有所不同。例如,当使用 时CV = TRUE,较少的参与者将被分类到正确的组中。因此,如果我根据线性判别分析的结果绘制数据,而不使用留一法交叉验证,它与我将描述的结果不对应。

我的问题是,在应用于包的功能时,是否有办法获得LD1 值线性判别式的系数?或者,如果有人知道另一种生成类似于我上面添加的情节的选项?CV = TRUELDAMASS

标签: r

解决方案


推荐阅读