У меня есть Dataframe содержит столбцы + столбец «Порядок», который содержит целые уникальные числа, а некоторые строки равны нулю.
Мне нужно обновить ноль с помощью добавочного номера от максимального значения значения «Порядок».
Например:
Максимальное значение df ['Order'] = 4, и есть 3 записи. Df ['Order'] == 0, тогда эти 3 строки с 0 значениями необходимо заполнить 5,6, 7.
Я попробовал следующий скрипт:
Dimension_Items = {'Col1':['A', 'B', 'C', 'D', 'E', 'F'], 'Order':[0,2,3,4,0,0]}
Dimension_Items = pd.DataFrame.from_dict(Dimension_Items)
Max_Order = Dimension_Items['Order'].max()
Dimension_Items.loc[Dimension_Items['Order'] == 0, 'Order'] = range(Max_Order+1, len(Dimension_Items)+1)
Ошибка:
Traceback (most recent call last):
Dimension_Items.loc[Dimension_Items['Order'] == 0, 'Order'] = range(Max_Order+1, len(Dimension_Items)+1)
File "C:\Python36\lib\site-packages\pandas\core\indexing.py", line 189, in __setitem__
self._setitem_with_indexer(indexer, value)
File "C:\Python36\lib\site-packages\pandas\core\indexing.py", line 606, in _setitem_with_indexer
raise ValueError('Must have equal len keys and value '
ValueError: Must have equal len keys and value when setting with an iterable
Ошибка выдачи, пожалуйста, помогите в этом