2017-09-08 55 views
1

使用treeMine = fitctree(....)我可以生成一個決策樹,但該樹是非常大的,因此很難傳達信息,使用view(treeMine,'Mode','Graph') enter image description hereMatlab的:更改可變分辨率和名稱查看回歸樹

時所以我的問題是如果可以將變量名稱x1-x9更改爲其他名稱,以使其可以理解,並且如果我可以強制這些數字由工程表示法10e3表示。

有沒有人知道如何做到這一點?

小例子

小例子,可以使用Matlabs own car example

load carsmall 
idxNaN = isnan(MPG + Weight); 
X = Weight(~idxNaN); 
Y = MPG(~idxNaN); 
n = numel(X); 

rng(1) % For reproducibility 
idxTrn = false(n,1); 
idxTrn(randsample(n,round(0.5*n))) = true; % Training set logical indices 
idxVal = idxTrn == false;     % Validation set logical indices 

Mdl = fitrtree(X(idxTrn),Y(idxTrn)); 
view(Mdl,'Mode','graph') 

你怎麼那麼指定的值的分辨率和變量名

+0

你想要什麼新的變量名?這是一個只讀屬性btw –

+0

@SardarUsama我想給他們變量的名稱,他們代表什麼,但這是不可能的基於您的只讀。你在哪裏看到這個? 我想象一個人可以通過'set(gca,...)'或類似的方式訪問屬性,但沒有設法做到這一點 – JTIM

+0

@SardarUsama x1可以改爲女性,x2年齡等等 – JTIM

回答

1

關於名稱:這是一個有點因爲您只使用一個預測變量(權重),但您可以使用「PredictorNames」名稱 - 值對更改名稱,例如

Mdl = fitrtree(X(idxTrn),Y(idxTrn),'PredictorNames',{'weight'}); 

如果您要使用更多的預測器,您只需向單元陣列中添加更多元素,例如,

'PredictorNames',{'weight','age','women'} 

我不知道數字艱難。

+0

也可以更改號碼分辨率嗎? – JTIM

+0

我不知道如何 - 但密謀並不是我的專長。我只能說,沒有直接的選擇。 –