Добавление данных в Pandas Dataframe из файла CSV, вызывающего ошибки значения

Я пытаюсь добавить int к существующему значению в Pandas DataFrame с

>>> df.ix['index 5','Total Dollars'] += 10

Я получаю ошибку: ValueError: Must have equal len keys and value when setting with an iterable.

Я думаю, что ошибка исходит от datatype, полученной из:

>>> print type(df.ix['index 5','Total Dollars'] 
int64 <class 'pandas.core.series.Series'>

Блок данных заполняется через CSV файл. Я попытался загрузить базу данных из другого CSV файла:

>>> print type(df.ix['index 5','Total Dollars']
int64

Что может вызвать эту разницу в типе?

Ответ 1

Это выглядит как ошибка для некоторых более ранних версий pandas, исправленных по крайней мере с помощью 0.16.2, если не раньше, как обсуждалось здесь и здесь.

С 0.17.1 это прекрасно работает:

df = pd.DataFrame(data=[5], columns=['Total Dollars'], index=['index 5'])

         Total Dollars
index 5              5

df.ix['index 5', 'Total Dollars'] += 10

         Total Dollars
index 5             15