Порядок соответствия LabelEncoder для Pandas dfPython

Программы на Python
Anonymous
Порядок соответствия LabelEncoder для Pandas df

Сообщение Anonymous »

Я устанавливаю LabelEncoder для scikit-learn в столбец в pandas df.

Как определяется порядок, в котором встречающиеся строки сопоставляются с целыми числами? Является ли он детерминированным?

Что еще более важно, могу ли я указать этот порядок?

Код: Выделить всё

import pandas as pd
from sklearn import preprocessing

df = pd.DataFrame(data=["first", "second", "third", "fourth"], columns=['x'])
le = preprocessing.LabelEncoder()
le.fit(df['x'])
print list(le.classes_)
### this prints ['first', 'fourth', 'second', 'third']
encoded = le.transform(["first", "second", "third", "fourth"])
print encoded
### this prints [0 2 3 1]
Я ожидаю, что le.classes_ будет ["первый", "второй", "третий", "четвертый"], а затем закодирован как [0 1 2 3], поскольку это порядок, в котором строки появляются в столбце. Можно ли это сделать?

Вернуться в «Python»