У меня есть набор данных (отсюда https://www.kaggle.com/renanmav/which-team-will-win-this-dota-2-match), где одна случайная строка выглядит так:
Sven|Lone Druid|Venomancer|Clockwerk|Shadow Shaman|Invoker|Gyrocopter|Anti-Mage|Alchemist|
Имена столбцов просто 0, 1, 2, 3. .. Я хочу один горячий кодировать весь набор данных, для каждого уникального слова в каждой строке, а затем создать столбцы с соответствующим именем, а затем просто написать 1 или 0 в зависимости от того, здесь он или нет (может быть, не очень хорошо объяснил, извините) В основном я хочу, чтобы предыдущая строка выглядела следующим образом:
Sven|Lone Druid|Venomancer|Clockwerk|Shadow Shaman|Invoker|Gyrocopter|Anti-Mage|Alchemist| other possible values....
------------------------------------------------------------------------------------------
1 | 1| 1| 1| 1| 1| 1| 1| 1| 0|0|0|...
, поэтому я получил все уникальные значения и создал с ним столбец данных в виде столбцов:
all_heroes = np.unique(X.values.flatten())
Я думаю, что я нужно сделать это вручную с помощью iterrows ()? Есть ли лучший способ сделать это?
Спасибо