2014-04-24 47 views
0

RPART對連續,序數和分類變量使用不同的分割過程。有沒有辦法「通知」RPART變量類型?爲了說明,我有一個有整數值的有序變量(1,...,5)。現在,我需要將它強制轉換成角色,這樣RPART不會像連續變量那樣分裂它。RPART - 要素類型

我想不要改變我所有的變量類型,只是爲了RPART。不管怎樣,我寧願宣佈它。

謝謝。

回答

2

問題是,R如何知道foo <- c(1,2,3,2,4,5,1,5)(例如)不是數值變量?如果您查看foo的課程,您會看到它是數字。

R> class(foo) 
[1] "numeric" 

你的問題是,在一個非常基本的層面上,你沒有告訴R數據類型是什麼。在這種情況下,簡單的解決方案是而不是將其轉換爲字符向量,但將其轉換爲有序因子。如果僅僅是因爲這是數據的事實! rpart應該提取因素方面並相應地對待它。

因此,順便告知rpart包變量是序是讓R,這是序

foo <- as.ordered(foo) 

R> foo 
[1] 1 2 3 2 4 5 1 5 
Levels: 1 < 2 < 3 < 4 < 5 

我懷疑你是R上的其他功能錯過了,因爲你沒有告訴它數據的性質。 R正在做出一個不正確的假設。