2017-04-03 88 views
0

爲了讓我跑插入符lda2參數值

getModelInfo("lda2")[[1]]$grid 

的lda2參數的可能值,並得到

function(x, y, len = NULL, search = "grid") data.frame(dimen = 1:min(ncol(x), length(levels(y)) - 1)) 

因此,只有一個參數:捫

在我的情況

ncol(x)=32 
levels(y)=2 

所以

min(ncol(x), length(levels(y)) - 1) = 1

這是否意味着捫只能走價值?

回答

2

:生成值的序列。 dimen因此在1min(ncol(x), length(levels(y)) - 1)之間。 dimen可以採用的確切值取決於您的輸入數據。

例如:

library(tidyverse) 

x <- mtcars %>% 
    select(-carb) 
y <- mtcars$carb %>% as.factor 

dimen <- 1:min(ncol(x), length(levels(y)) - 1) 
dimen 
> [1] 1 2 3 4 5 
+0

感謝@JanLauGe,但我不明白,因爲如果我有一個分類問題,例如兩個結局水平(是,否),那麼捫< - 1:分點(NcoI (x),2-1)所以它只在1到1之間變化 – user3437823

+0

哦,是的,對於二項分類,你只能使用一個判別函數。這是有道理的,因爲你正在尋找n維空間中最能分離兩個點羣的一條線。我認爲這也意味着你可以使用'lda'而不是'lda2',但爲你的數據運行這兩種方法,看看是否有任何區別。 – JanLauGe

+0

非常感謝@JanLauGe – user3437823