Как перевести столбец фрейма данных в формат, который нужен tslearn?

Я изучаю tslearn. Но я действительно смущен форматом входных данных. Допустим, есть фрейм данных:

a=pd.DataFrame({'cla':['a','a','a','a','b','b','b'],
                'value':[1,2,3,4,2,4,1]})

Я хочу, чтобы a и b были отдельными временными рядами соответственно. Итак, это выглядит так:

a: 1,2,3,4
b: 2,4,1

Согласно tslearn, пример ввода:

X = to_time_series_dataset([[1, 2, 3, 4], [1, 2, 3], [2, 5, 6, 7, 8, 9]])

Итак, как я могу передать данные:

[[1,2,3,4],[2,4,1]]

Большое спасибо.

Попробуйте a.groupby('cla').value.agg(list).tolist()

ResidentSleeper 13.04.2019 09:11

@РезидентСлипер. Большое спасибо. Но он говорит: объект типа не является итерируемым

Feng Chen 13.04.2019 09:23
1
2
494
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Пытаться:

a.groupby('cla').agg(list)['value'].to_list()

Спасибо. Я старался. Пишет: Нет объектов для конкатенации. Я запускаю этот код под databricks. Но я думаю, что это не должно быть проблемой?

Feng Chen 13.04.2019 08:46

Эй, для меня этот код выдает результат как [[1, 2, 3, 4], [2, 4, 1]] точно так, как требуется..

hacker315 13.04.2019 09:26

Может быть, потому что мой код находится в databricks. Попробую на своей локальной машине. Большое спасибо

Feng Chen 13.04.2019 09:32

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