在使用OneHotEncoder转换要素之后,我试图对数据集中的某些要素进行一些数据分析,并且输出显示要素13和要素21是最重要的要素,但是我怎么知道这些要素对应于哪些要素?

最佳答案

您可以使用.categories_属性执行此操作。这是一个一般示例:

import numpy as np
from sklearn.preprocessing import OneHotEncoder

ohe = OneHotEncoder(sparse=False)

arr = np.random.choice(['dog', 'cat', 'ferret'], 10)
print(arr)


Out[100]:
array(['ferret', 'ferret', 'dog', 'dog', 'cat', 'ferret', 'ferret',
       'ferret', 'dog', 'dog'], dtype='<U6')


encoded = ohe.fit_transform(arr.reshape(-1, 1))
print(encoded)


[[0. 0. 1.]
 [0. 0. 1.]
 [0. 1. 0.]
 [0. 1. 0.]
 [1. 0. 0.]
 [0. 0. 1.]
 [0. 0. 1.]
 [0. 0. 1.]
 [0. 1. 0.]
 [0. 1. 0.]]


print(ohe.categories_) # this is the line you're looking for


Out[1]: [array(['cat', 'dog', 'ferret'], dtype='<U6')]


现在,只需索引此数组即可找到您的第16个和第21个功能。

关于python - 从OneHotEncoder获得相应的功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59129535/

10-12 21:38