Например, есть фрейм данных:
col1 col2
a a
b b
c e
d f
После обучения LabelEncoding в первом столбце я получаю примерно следующее:
col1 col2
1 a
2 b
3 e
4 f
После установки созданных кодов во втором столбце я хочу получить что-то вроде этого:
col1 col2
1 1
2 2
3 5
4 6
Как это сделать проще всего. Спасибо.

Создал фрейм данных df, скопировав образец из сообщения OP следующим образом.
df=pd.read_clipboard()
Когда мы его распечатаем, его значение будет следующим:
col1 col2
0 a a
1 b b
2 c e
3 d f
Не могли бы вы попробовать следующее. Я привел здесь только первые 6 алфавитов, которые вы могли бы упомянуть, если они есть в вашем фактическом Input_file.
dict1 = {'a':1, 'b':2, 'c':3, 'd':4, 'e':5, 'f':6}
df.applymap(lambda s: dict1.get(s) if s in dict1 else s)
Результат будет следующим.
col1 col2
0 1 1
1 2 2
2 3 5
3 4 6
@ s900n, извините, я не понял, не могли бы вы объяснить это подробнее здесь.
Вы можете кодировать себя с помощью pd.factorize:
v, k = pd.factorize(sorted(df.stack().unique()))
m = dict(zip(k.tolist(), (v+1).tolist()))
df.replace(m)
Вывод:
col1 col2
0 1 1
1 2 2
2 3 5
3 4 6
Я думаю, что настоящий трюк состоит в том, чтобы сложить col1 и col2, а затем кодировать значения обоих списков как один.
le = LabelEncoder()
le.fit(df.stack())
На самом деле я не знаю e и f, я хочу назначить им код, как я вижу их в первый раз.