我正在尝试为我的PySpark,MLLIb,随机森林分类器确定最有用的功能。但是,输出为SparseVector,特征名称未映射到特征索引。我敢肯定,有一种简单的方法可以生成一个漂亮的表,该表具有按重要性降序排列的功能及其重要性,但是我找不到合适的函数来执行此操作。请注意,模型是pyspark.ml.pipeline.PipelineModel
对象。
model.stages[1].featureImportances
SparseVector(210, {0: 0.0375, 1: 0.1736, 2: 0.1245, 3: 0.0004, 4: 0.0565, 5: 0.0009, 6: 0.0007, 7: 0.0, 8: 0.0002, 9: 0.0001, 11: 0.0048, 12: 0.0012, 13: 0.005, 14: 0.0017, 15: 0.0145, 16: 0.029, 17: 0.0399, 18: 0.003, 19: 0.0015, 20: 0.0011, 21: 0.001, 22: 0.0027, 23: 0.0117, 24: 0.0039, 25: 0.0607, 26: 0.0007, 27: 0.0522, 28: 0.0222, 29: 0.0034, 30: 0.0004, 31: 0.0003, 32: 0.0012, 33: 0.0043, 34: 0.0039, 35: 0.0088, 36: 0.0003, 37: 0.0243, 38: 0.0005, 39: 0.0003, 40: 0.0017, 41: 0.0011, 42: 0.0003, 43: 0.0, 44: 0.001, 45: 0.003, 46: 0.0024, 47: 0.0014, 48: 0.0002, 49: 0.0061, 50: 0.0012, 51: 0.0001, 52: 0.0101, 53: 0.0009, 54: 0.0008, 55: 0.0, 56: 0.0043, 57: 0.0, 58: 0.0003, 59: 0.0001, 60: 0.0005, 61: 0.0, 62: 0.0002, 63: 0.0005, 64: 0.0, 65: 0.0, 66: 0.0, 67: 0.0001, 68: 0.0, 73: 0.0, 84: 0.1131, 85: 0.1173, 86: 0.006, 87: 0.0074, 88: 0.0006, 89: 0.0019, 90: 0.0001, 91: 0.0, 92: 0.0, 96: 0.0002, 97: 0.0001, 98: 0.0003, 99: 0.0001, 100: 0.0001, 101: 0.0, 103: 0.0004, 104: 0.0, 105: 0.0001, 106: 0.0054, 107: 0.0073, 108: 0.0, 110: 0.0046, 111: 0.0, 112: 0.0, 113: 0.0, 114: 0.0, 115: 0.0, 116: 0.0, 117: 0.0, 118: 0.0, 119: 0.0, 120: 0.0, 121: 0.0, 122: 0.0, 123: 0.0, 124: 0.0, 125: 0.0, 126: 0.0, 127: 0.0, 128: 0.0, 129: 0.0, 130: 0.0, 131: 0.0, 132: 0.0, 133: 0.0, 134: 0.0, 135: 0.0, 136: 0.0, 137: 0.0, 138: 0.0, 139: 0.0, 140: 0.0, 141: 0.0, 142: 0.0, 143: 0.0, 145: 0.0, 146: 0.0, 147: 0.0, 148: 0.0, 150: 0.0, 152: 0.0, 153: 0.0, 154: 0.0, 156: 0.0, 157: 0.0, 158: 0.0, 159: 0.0, 160: 0.0, 161: 0.0, 162: 0.0, 164: 0.0, 165: 0.0, 167: 0.0, 168: 0.0, 169: 0.0, 170: 0.0, 173: 0.0, 174: 0.0, 175: 0.0, 176: 0.0, 177: 0.0, 178: 0.0, 180: 0.0, 182: 0.0, 186: 0.0, 193: 0.0, 196: 0.0, 197: 0.0, 198: 0.0})