У меня есть кадр данных pandas, подобный этому:
Col1 ABC
0 XYZ A
1 XYZ B
2 XYZ C
Используя функцию pandas get_dummies()
в столбце ABC, я могу получить следующее:
Col1 A B C
0 XYZ 1 0 0
1 XYZ 0 1 0
2 XYZ 0 0 1
Пока мне нужно что-то вроде этого, где столбец ABC имеет тип данных list / array
:
Col1 ABC
0 XYZ [1,0,0]
1 XYZ [0,1,0]
2 XYZ [0,0,1]
Я попытался использовать функцию get_dummies
, а затем объединить все столбцы в нужный столбец. Я нашел много ответов, объясняющих, как объединить несколько столбцов в виде строк, например: pandas-python">Объедините два столбца текста в кадре данных в pandas/python. Но я не могу найти способ объединить их в список.
Этот вопрос представил идею использования sklearn OneHotEncoder
, но я не смог заставить ее работать. Как я могу быстро закодировать один столбец кадра данных pandas?
Еще одна вещь: во всех ответах, с которыми я сталкивался, были решения, в которых имена столбцов приходилось вводить вручную при их объединении. Есть ли способ использовать Dataframe.iloc()
или механизм объединения для объединения столбцов в список?