Я хочу превратить мой массив данных pandas во входной тензор, который затем будет передаваться в сеть LSTM.
Последовательность находится внутри одного из столбцов в кадре данных в виде списка.Кроме того, есть два значения, которые связаны с последовательностью, а именно длительность и user_cluster_id.
Фрейм данных выглядит следующим образом: Фрейм данных
Мне удалось извлечь отдельные значенияпоследовательности на каждом временном шаге и превратить каждый из них во входной тензор, но я предполагаю, что это неправильно, так как я нарушаю последовательность.
Имя фрейма данных pandas ниже: travel_history - это то, что я сделал:
input_seqs = []
output_seqs = []
for i in range(travel_history.shape[0]):
user_cluster = travel_history.iloc[i,:]
cluster_id = user_cluster['sequence'].tolist()
user_class = user_cluster['user_cluster_id']
duration = int(user_cluster['duration'])
for i,cluster in enumerate(cluster_id):
if i < len(cluster_id)-1:
input_seqs.append([user_class,i, duration,cluster])
output_seqs.append([cluster_id[i+1]])
Я ожидаю, что вывод будет выглядеть примерно так: [sequence # 1 [cluster, duration, user_cluster_id].
Вместо этого фактический вывод выглядит следующим образом [2, 0, 8, 87], где каждое значение соответствует [user_cluster_id, timestep, duration, cluster]