Python 2.7 Python-从子索引、子级和父级获取父索引

Python 2.7 Python-从子索引、子级和父级获取父索引,python-2.7,Python 2.7,我需要帮助来弄清楚如何使用Python从子索引、子级和父级获取父索引 我的数据集有三列:索引、子级和父级 这些记录是按层次结构排列的 索引只是记录的行号 子级别是表示嵌套父子记录层次结构中的级别的数字 父级=子级-1 我的挑战是,对于每个记录,我想使用Python获取每个记录的父索引 Index, Child-Level,Parent-Level,Parent-Index 1,1,1,1 2,2,1,1 4,4,3,3 9,9,8,8 3,3,2,2 5,5,4,4 8,8,7,7 6,6,5,

我需要帮助来弄清楚如何使用Python从子索引、子级和父级获取父索引

我的数据集有三列:索引、子级和父级

这些记录是按层次结构排列的

索引只是记录的行号

子级别是表示嵌套父子记录层次结构中的级别的数字

父级=子级-1

我的挑战是,对于每个记录,我想使用Python获取每个记录的父索引

Index, Child-Level,Parent-Level,Parent-Index
1,1,1,1
2,2,1,1
4,4,3,3
9,9,8,8
3,3,2,2
5,5,4,4
8,8,7,7
6,6,5,5
7,7,6,6
10,10,9,9
11,11,10,10
12,12,11,11
13,13,12,12
14,14,13,13
15,14,13,13
16,14,13,13
17,14,13,13
18,14,13,13
19,14,13,13
20,14,13,13
21,13,12,12
22,13,12,12
23,13,12,12
24,14,13,23
25,14,13,23
26,14,13,23
27,11,10,10
28,9,8,8
29,9,8,8
30,9,8,8
31,9,8,8
32,9,8,8
33,9,8,8
34,9,8,8
35,8,7,7
36,9,8,35
37,10,9,36
38,11,10,37
39,11,10,37
40,12,11,39
41,12,11,39
42,13,12,41
43,13,12,41
44,13,12,41
45,11,10,37
46,12,11,45
47,13,12,46
48,14,13,47
49,14,13,47
50,14,13,47
51,14,13,47
52,14,13,47
53,14,13,47
54,14,13,47
55,13,12,46
56,13,12,46
57,13,12,46
58,9,8,35
59,9,8,35
60,9,8,35
61,9,8,35
62,8,7,7
63,8,7,7
64,8,7,7
65,8,7,7
66,8,7,7
67,8,7,7
68,8,7,7
我怀疑可以使用列表理解来获取最大索引值,其中自连接索引 这是数据集的可视化表示

这是样本数据和预期结果。目标是获取父索引

Index, Child-Level,Parent-Level,Parent-Index
1,1,1,1
2,2,1,1
4,4,3,3
9,9,8,8
3,3,2,2
5,5,4,4
8,8,7,7
6,6,5,5
7,7,6,6
10,10,9,9
11,11,10,10
12,12,11,11
13,13,12,12
14,14,13,13
15,14,13,13
16,14,13,13
17,14,13,13
18,14,13,13
19,14,13,13
20,14,13,13
21,13,12,12
22,13,12,12
23,13,12,12
24,14,13,23
25,14,13,23
26,14,13,23
27,11,10,10
28,9,8,8
29,9,8,8
30,9,8,8
31,9,8,8
32,9,8,8
33,9,8,8
34,9,8,8
35,8,7,7
36,9,8,35
37,10,9,36
38,11,10,37
39,11,10,37
40,12,11,39
41,12,11,39
42,13,12,41
43,13,12,41
44,13,12,41
45,11,10,37
46,12,11,45
47,13,12,46
48,14,13,47
49,14,13,47
50,14,13,47
51,14,13,47
52,14,13,47
53,14,13,47
54,14,13,47
55,13,12,46
56,13,12,46
57,13,12,46
58,9,8,35
59,9,8,35
60,9,8,35
61,9,8,35
62,8,7,7
63,8,7,7
64,8,7,7
65,8,7,7
66,8,7,7
67,8,7,7
68,8,7,7

这很好,但你有什么问题吗?谢谢。这个问题的标题措辞含糊不清,但并不清楚。我已经澄清了问题主体中的问题。我编辑了标题,希望能更好地反映你们的问题。一种方法是使用networkx这样的节点库来绘制树,然后遍历它。您还可以实现任意树遍历算法。你到底有什么问题?我把头衔改回来了。您的编辑建议了一个潜在的解决方案。与其在标题中这样做,你能提供一个答案吗?我的数据集有三列:索引、子级和父级。我想得到父索引。我有一个TSQL解决方案