3
У меня есть таблица, которая выглядит следующим образом:Сделать fullfilled иерархии из данных с уровнями
import pandas as pd
x = '1233312332344344'
y = ['Name_' + str(i) for i, _ in enumerate(x)]
df = pd.DataFrame({'level': list(x), 'names': y})
выглядит следующим образом:
level names
0 1 Name_0
1 2 Name_1
2 3 Name_2
3 3 Name_3
4 3 Name_4
5 1 Name_5
6 2 Name_6
7 3 Name_7
8 3 Name_8
9 2 Name_9
10 3 Name_10
11 4 Name_11
12 4 Name_12
13 3 Name_13
14 4 Name_14
15 4 Name_15
Есть ли способ reshap это ДФ с пандами, чтобы получить этот результат (на основе столбца уровня)?
1 2 3 4
Name_0
Name_0 Name_1
Name_0 Name_1 Name_2
Name_0 Name_1 Name_3
Name_0 Name_1 Name_4
Name_5
Name_5 Name_6
Name_5 Name_6 Name_7
Name_5 Name_6 Name_8
Name_5 Name_9
Name_5 Name_9 Name_10
Name_5 Name_9 Name_10 Name_11
Name_5 Name_9 Name_10 Name_12
Name_5 Name_9 Name_13
Name_5 Name_9 Name_13 Name_14
Name_5 Name_9 Name_13 Name_15
Это король источника df, но со всеми уровнями иерархии, заполненными рядами.
С уважением.
У меня не было логики пустых строк. – MYGz
Мои 'set_index' и' unstack' идентичны вашему стержню. Но OP хотел, чтобы строки заполнялись только до тех пор, пока уровень достиг. Таким образом, для строки 9 уровень равен 2, поэтому заполняйте строку до столбца уровня 2. – piRSquared
Ah. Благодарю. Понял. – MYGz