У меня есть датафрейм с несколькими столбцами, который содержит список внутри.Я хочу разделить этот список на разные столбцы.В настоящее время я нашел этот вопрос здесь в stackoverflow, но кажется, что он разбивает список только на 1 столбец, который я хочу применить к нескольким столбцам, содержащим неодинаковое количество объектов в списке.
Мой df выглядит примерно так:
ID | value_0 | value_1 | value_2 | value_3 | value_4
0 1001|[1001,1002]| None | None | None | None
1 1010|[1010,2001]|[2526,1000]| None | None | None
2 1100|[1234,5678]|[9101,1121]|[3141,5161]|[1718,1920]|[2122,2324]
Я хочу преобразовать его в:
ID | 0 | 1 | 2 | 3 | 4
0 1001|1001|1002| None | None | None
1 1010|1010|2001| 2526 | 1000 | None
2 1100|1234|5678| 9101 | 1121 | 3141 ....etc.
В настоящее время это мой код, но он выводит только кадр данных, содержащий«Нет» значение.Я не уверен, как это исправить, потому что кажется, что он получает только последний столбец и не разделяет список.
length = len(list(df.columns.values))-1
for i in range(length):
temp = "value_" + str(i)
x = df[temp]
new_df = pd.DataFrame(df[temp].values.tolist())
Результат new_df, который я получил, таков:
| 0
0| None
1| None
2| [2122,2324]
Однако, если я просто фокусируюсь только на 1 столбце (т. Е. Value_0), он прекрасно разбивает список.
new_df = pd.DataFrame(df['value_0'].values.tolist())
Любая помощь очень ценится