Я знаю, что название сбивает с толку, но позвольте мне объяснить.Я пытаюсь подготовить Series 'для sklearn.MultiLableBinarizer
, где каждая строка представляет собой отдельный идентификатор пользователя, который я хочу горячим кодированием.По ошибке он повторяется по каждому отдельному символу строки.Выполнение series.apply(list)
делает то же самое, разбивая каждую строку на отдельные символы.Если серия выглядит следующим образом:
0 '3436803478'
1 '1230782212'
2 '7320482099'
...
Тогда я хочу, чтобы вывод был
0 ['3436803478']
1 ['1230782212']
2 ['7320482099']
...
Вместо
0 ['3','4','3','6','8','0','3','4','7','8']
1 ['1','2','3','0','7','8','2','2','1','2']
2 ['7','3','2','0','4','8','2','0','9','9']
...
Если бы я работал с одним значениемЯ бы просто сделал ids = [[s] for s in values]
, но поскольку мы работаем с Series и apply()
, мне нужно что-то вроде имени функции, но для []
.list()
не работает, как объяснено здесь
Примечание: строки на самом деле начинаются как целые числа, но я могу обойти это с помощью .apply(str)