Python - Feature Selection - Should I remove bad variables?
Assuming your features are df[X] and your target is df[y], I would just do the following:

keepfeatures = X[trained_model.feature_importances_ &gt; 0]
keepfeatures.append(y)

df = df[keepfeatures]