Панды и стата 13 файлов

У меня установлены панды 0.13.1, но pandas.read_stata() не может прочитать файлы .dta, созданные в формате Stata 13, с ошибкой

TypeError: cannot concatenate 'str' and 'NoneType' objects

Нет проблем с тем же набором данных, сохраненным в формате Stata 12.

Я думал, что последний выпуск панд (0.13.1) обрабатывал файлы набора данных Stata 13. Я делаю что-то неправильно?

1 ответ

Решение

Я предполагаю, что вы не делаете ничего по своей сути неправильно, но ваша версия панд не может обрабатывать файлы набора данных Stata 13. Как описано в справке dta, формат наборов данных.dta Stata изменился с выпуском Stata 13.

Решение 1.

Обновите ваших панд до v0.14.0 (31 мая 2014 г.):

read_stata теперь принимает формат Stata 13 (GH4291)

Источник: http://pandas.pydata.org/pandas-docs/stable/whatsnew.html

Решение 2.

Если у вас есть доступ к Stata, есть несколько способов вернуться к более ранним / различным форматам, которые должны работать с вашей более ранней версией панд. Смотрите этот ответ:

Прочитать файл Stata 13 в R

редактировать

Решение 3.

После некоторого обсуждения в GitHub проблемы, с которыми сталкиваются панды в наборах данных Stata 13, являются строковыми переменными. Таким образом, другое решение может быть преобразование строки в числовой тип. Увидеть help encode, который создаст соответствующие метки стоимости; или, может быть help real или же help destring, если строки оказываются просто числами в строковом типе.

Другие вопросы по тегам