Принимает ли pandas.DataFrame только данные одинакового размера? - PullRequest
0 голосов
/ 04 июня 2018

Мне было интересно, хочу ли я использовать pandas.DataFrame для генерации входных данных для сюжетно-множественных графиков скрипки, то есть мои данные будут содержать несколько наборов данных, эти наборы данных должны быть одинакового размера?

Я был на самом делеуже пробовал это разными способами, но в основном копировал из этого примера.Когда мои данные находятся в списке, скажем [[1,2,3],[1,2],[1,2,3,4]], я всегда получаю сообщение об ошибке:

ValueError: setting an array element with a sequence

Это потому, что наборы данных имеют другой размер?

ОБНОВЛЕНИЕ: Мне очень жаль, чтоЯ не был ясен, мои данные слишком велики, чтобы показать это, но я попробую.Мой код выглядит так:

df = pandas.DataFrame(dict(Score=toplot, Group=gr))
fig = plotly.figure_factory.create_violin(df, data_header='Score', group_header='Group', height=500, width=800)

toplot переменная представляет собой список списков разного размера: enter image description here

df результаты, имеющие значения в виде списков, ноне как одно значение для каждой группы (в примерах я вижу, что оно имеет одно значение): enter image description here ... enter image description here

и затем Iполучаю ошибку: enter image description here

Я также могу запустить toplot=np.asarray(toplot) раньше, но это не помогает, я все еще получаю эту ошибку

1 Ответ

0 голосов
/ 12 июня 2018

Поскольку я так и не получил разумного ответа на свой вопрос, я провел некоторое исследование и обнаружил, что входные данные для панд должны быть определенного типа, чтобы возвращать правильный ответ.Во-первых, действительно, когда я писал данные типа: [[1,2,3],[1,2],[1,2,3,4]] вернул бы ответ, не подходящий для plotly Нужно иметь данные в виде одного вектора / списка: [1,2,3,1,2,1,2,3,4] И вместе с ним метки, соответствующие каждому числу:['A','A','A','B','B','C','C','C'] Это тогда работает без ошибок

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