【发布时间】:2019-11-13 00:06:27
【问题描述】:
我有一个如下所示的数据框:
name parent_id id
languages 0 1
cyrillic script 1 2
latin script 1 3
bulgarian 2 4
russian 2 5
czech 3 6
polish 3 7
我使用此命令从父 ID 获取父名称:
df['parent_name'] = df['parent_id'].map(df.set_index('id')['name'])
print(df)
name parent_id id parent_name
russian 2 5 cyrillic script
czech 3 6 latin script
polish 3 7 latin script
但是,我还想递归地获取每个节点的所有祖先的列表,例如这样:
name parent_id id path
languages 0 1 []
...
russian 2 5 ['languages', 'cyrillic script']
czech 3 6 ['languages', 'latin script']
polish 3 7 ['languages', 'latin script']
在我的情况下,列表中祖先元素的顺序无关紧要。
有可能吗?
【问题讨论】: