TypeError: входные данные должны быть списком / последовательностью лайков - PullRequest
0 голосов
/ 19 сентября 2019

Итак, теперь я думаю, что на правильной последовательности

, поэтому из предыдущего вопроса Как изменить pandas Dataframe и как взаимодействовать с базовым компонентом dash gui frameworkout html core

Я заметил, что использование set_value - лучший способ обновить / изменить определенные ячейки в dataframe, поэтому я попытался использовать этот код

values.index = pd.MultiIndex.from_tuples(values.index)

ext_sites.set_value(values.index, 'Pending  ', 'aaaaaaaaaaaaaaaaaa')

Кстати, я использовал для преобразования tuple значенияв MultiIndex

но я нахожу эту ошибку

Traceback (most recent call last):
  File "C:/Users/DELL/PycharmProjects/Gov-Trac-Tool/updateMyDF.py", line 34, in <module>
    values.index = pd.MultiIndex.from_tuples(values.index)
  File "C:\Users\DELL\PycharmProjects\MyALLRefProf\venv\lib\site-packages\pandas\core\indexes\multi.py", line 383, in from_tuples
    raise TypeError('Input must be a list / sequence of tuple-likes.')
TypeError: Input must be a list / sequence of tuple-likes.

как это работает, когда я указываю индекс строки только так

ext_sites.set_value(800, 'Pending ', 'aaaaaaaaaaaaaaaaaa')

Так я на правильном пути?

1 Ответ

1 голос
/ 19 сентября 2019

Выполнение вашего кода не достигает ext_sites.set_value (...) .Ошибка в вашем коде возникает на одну строку раньше:

values.index = pd.MultiIndex.from_tuples(values.index)

что четко написано в вашей трассировке.

Ознакомьтесь с документацией pandas.MultiIndex.from_tuples ,Он содержит:

tuples : list / sequence of tuple-likes

Очевидно, values.index - это не какой-либо список / последовательность лайков-кортежей, поэтому Панд жалуется на это.Может быть, у вас есть «нормальный» индекс (не MultiIndex)?

Кстати: ваша переменная имеет имя values.Это плохая привычка выбирать имена переменных, совпадающие с именами методов (то же самое относится и к именам столбцов).Используйте другое имя.

Еще одна плохая привычка: имена столбцов не должны содержать в конце кода пробелы, такие как 'Pending '.Они также не должны содержать начальных пробелов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...