, когда я запускаю этот код, я получаю следующее сообщение об ошибке:Передача серии с DTYPE = «категории» как категории для панды категоричных функции
import pandas as pd
car_colors = pd.Series(['Blue', 'Red', 'Green'],
dtype='category')
car_data = pd.Categorical(['Yellow', 'Green', 'Red', 'Blue','Purple'],
categories= car_colors, ordered=False)
print car_colors
s = pd.Series(car_data)
s
ValueError: object array method not producing an array
Но самое смешное, когда я удалить dtype = 'category'
, код работает нормально.
Короче говоря, категорический функция принимает серию, но не с dtype = 'category'
Является ли это ошибка или я делаю что-то не так?
Я предполагаю, что это не имеет смысла, чтобы вновь сделать категоричный когда данные уже имеют тип dtype, поэтому в каком-то смысле это ошибка, но также немного странно хотеть сделать это таким образом. – EdChum
Если вы явно передали только категории, то это работает: 'car_data = pd.Categorical (['Yellow', 'Green', 'Red', 'Blue', 'Purple'], Категории = car_colors.cat.categories, ordered = False) ' – EdChum
Да, это было мое сомнение. Мы можем передавать списки и серии как категории, но не сами категории. Спасибо, что освободили EdChum –