Pandas np.array колонка в AWS DLAMI - PullRequest
0 голосов
/ 24 января 2019

У меня проблемы с вставкой np.arrays в столбец данных pandas.

x = pd.DataFrame([0,1,2,3])
x['a'] = x.apply( lambda x : np.zeros(30) ,axis=1)

Когда я запускаю это на моей локальной машине, у меня нет проблем и я получаю правильный вывод

In [6]: x.head()
Out[6]: 
   0                                                  a
0  0  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ...
1  1  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ...
2  2  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ...
3  3  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ...

Но при запуске этого на Deep Learning AMI (Ubuntu) версии 20.0 (ami-0f9e8c4a1305ecd22)

Я получаю сообщение об ошибке

ValueError: Shape of passed values is (4, 30), indices imply (4, 1)

Обе машины работают на Python 3.6.5. На данный момент мой обходной путь - вставить массивы в список.

x['a'] = x.apply( lambda x : [np.zeros(30)] ,axis=1)

Почему мой код работает локально, но не работает на экземпляре AMI?

1 Ответ

0 голосов
/ 15 марта 2019

Спасибо за открытие этого номера.

Мне удалось воспроизвести эту проблему на экземпляре ULANTU DLAMI версии 21.2. Мы используем версию панд 0.22.0 на DLAMI.

Локально на моей машине я использую версию pandas 0.24.2 и не сталкиваюсь с проблемой выше.

Спасибо, что сообщили об этом, мы примем меры и вскоре исправим проблему.

С вашей стороны, сейчас я бы порекомендовал удалить панд и переустановить панд следующим образом:

pip uninstall pandas pip install pandas==0.24.2

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