Я испортил кадр данных.
У меня есть столбцы, которые содержат строки, которые кодируют список чисел
, например
df=
mycol
0 '[ 0.5497076, 0.59722222, 0.42361111]'
1 '[ 0.8030303, 0.69090909, 0.52727273]'
2 '[ 0.51461988, 0.38194444, 0.66666667]'
РЕДАКТИРОВАТЬ: на самом деле, запятые также отсутствуют
df=
mycol
0 '[ 0.5497076 0.59722222 0.42361111]'
1 '[ 0.8030303 0.69090909 0.52727273]'
2 '[ 0.51461988 0.38194444 0.66666667]'
Каждая из строк кодирует список с фиксированным количеством элементов.
Я хотел бы преобразовать это mycol
в 3 (в общем случае N, где N=len(df[mycol][0])
columns
каждый из них числовой, содержащий один элемент из исходного списка в mycol
Я попробовал следующее, но безуспешно
df[mycol]=df[mycol].apply(lambda s: s.split())
df[mycol]=df[mycol].apply(lambda s: np.fromstring(s))
df[['mycol1','mycol2','mycol3']] = pd.DataFrame(df[mycol].values.tolist(), index= df.index)