Decision Tree uses too few Variables The Decision Tree algorith used only 3 variables ("lstat" "rm"    "dis") to make a regression.
The Dataset is Boston Housing which has 13 predictor variables and 1 response variable.
I understand that the variables used for split are decided based on Gini or Entropy coefficients.
But could it really be that all other variables except these 3 have zero predictive power?
Code:
library(MASS)
set.seed(1)
train = sample (1:nrow(Boston), nrow(Boston)/2)
tree.boston=tree(medv~.,Boston , subset=train)
summary(tree.boston)

plot(tree.boston)
text(tree.boston , pretty =0)

Output:
Regression tree:
tree(formula = medv ~ ., data = Boston, subset = train)
Variables actually used in tree construction:
[1] "lstat" "rm"    "dis"  
Number of terminal nodes:  8 
Residual mean deviance:  12.65 = 3099 / 245 
Distribution of residuals:
     Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
-14.10000  -2.04200  -0.05357   0.00000   1.96000  12.60000 

Graph:

 A: For your question: Yes, this is the most predictive feature set based on gini criteria and the 50% train data you sampled. However, you are probably looking for accuracy when you mean predictive. That would have to be calculated for an in-sample and out-sample metric (eg. Mean squared error or mean absolute error). Based on that you can decide whether these are predictive. If you change the train sample (i.e. sample 50% with a different seed, it may be possible to get other features). Given there is no limit of depth I guess, the accuracy in sample would be 100% or 0 MSE or something like that i.e. over-fit.
Seed plays a critical role in tree based models. Decision Tree being the most basic model, in this case it seems, these are the only features predictive. However it is for the current training set that has been sampled. If the seed is changed for sampling, the predictive features might change.
Random forests therefore have better prediction as it will average across several decision trees. In case of random forests, it must be noted that there is functionality for feature sampling with a seed as well.
I find this video on decision trees helpful for intuition:
https://www.youtube.com/watch?v=wpNl-JwwplA&feature=youtu.be
