IMO, документация должна быть обновлена, потому что она говорит, что pd.get_dummies
принимает данные, подобные массиву, а 2-D numpy
массив равен массиву (несмотря на то, что не существует формального определения типа массива ).Однако, похоже, он не похож на многомерные массивы.
Возьмите этот крошечный пример:
>>> df
a b c
0 a 1 d
1 b 2 e
2 c 3 f
Невозможно получить пустышки в базовом массиве 2D numpy
:
>>> pd.get_dummies(df.values)
Исключение: данные должны быть одномерными
Но вы можете получить пустышки на самом кадре данных:
>>> pd.get_dummies(df)
b a_a a_b a_c c_d c_e c_f
0 1 1 0 0 1 0 0
1 2 0 1 0 0 1 0
2 3 0 0 1 0 0 1
Или на массиве 1Dпод отдельным столбцом:
>>> pd.get_dummies(df['a'].values)
a b c
0 1 0 0
1 0 1 0
2 0 0 1