Plot feature importance bar graph
Read a data.table containing feature importance details and plot it.
xgb.plot.importance(importance_matrix = NULL, numberOfClusters = c(1:10))
data.tablereturned by the
numericvector containing the min and the max range of the possible number of clusters of bars.
The purpose of this function is to easily represent the importance of each feature of a model.
The function return a ggplot graph, therefore each of its characteristic can be overriden (to customize it).
In particular you may want to override the title of the graph. To do so, add
+ ggtitle("A GRAPH NAME") next to the value returned by this function.
ggplot2bar graph representing each feature by a horizontal bar. Longer is the bar, more important is the feature. Features are classified by importance and clustered by importance. The group is represented through the color of the bar.
data(agaricus.train, package='xgboost') #Both dataset are list with two items, a sparse matrix and labels #(labels = outcome column which will be learned). #Each column of the sparse Matrix is a feature in one hot encoding format. train <- agaricus.train bst <- xgboost(data = train$data, label = train$label, max.depth = 2, eta = 1, nthread = 2, nround = 2,objective = "binary:logistic") #train$data@Dimnames[] represents the column names of the sparse matrix. importance_matrix <- xgb.importance(train$data@Dimnames[], model = bst) xgb.plot.importance(importance_matrix)