Вам необходимо передать числовые значения в этот алгоритм ML. Ваши данные содержат последовательность, таким образом, ошибка. Ниже мое предложение, как изменить последовательность столбцов. Я предполагаю, что каждая последовательность в двух ваших столбцах имеет одинаковую длину.
import ast
import pandas as pd
df = pd.DataFrame([['[1,1,1,1,1,1]','[2,2,2,2,2,2]'], ['[1,1,1,1,1,1]','[2,2,2,2,2,2]']], columns=["a","b"])
new_df = []
for col_name in df.columns:
vector_size = len(ast.literal_eval(df[col_name][0]))
col_names = [col_name + str(num) for num in range(vector_size)]
vector = np.array([ast.literal_eval(x) for x in df[col_name]])
vector_df = pd.DataFrame(vector, columns = col_names)
new_df.append(vector_df)
pd.concat(new_df, axis=1)
до:
после :
если ваши данные не являются строковым представлением списка, вам не нужно использовать библиотеку ast.