簡體   English   中英

如何遍歷Python中的CSV層次樹?

[英]How to iterate through CSV hierarchy tree in Python?

我正在嘗試遍歷 CSV 文件中的層次結構樹以對項目執行某些操作。 層次結構設置如下:層次結構樹

請注意,父級和子級下的實際項目中不會有父/子之類的詞,如下所示:示例樹

現在,我想創建兩個嵌套循環,“外”循環遍歷父級別,“內”循環遍歷子級別,每個循環的主體將處理來自每個級別的信息單元格他們處理。 為了進一步說明,每個父母都有可變數量的孩子,所以父母 1 可能有 4 個,父母 2 可能有 2 個,父母 3 可能有 8 個,依此類推。 誰能幫助我如何設置這些循環以按照我想要的方式遍歷它們?

我會使用pandas

import pandas as pd

df = pd.read_csv(path_to_csv)

# Fill empty cells in parent column with the precedent value
df['parent'] = df.parent.fillna(method='ffill')

# Group cells with the same parent
df = df.groupby('parent').agg({'child': list})

print(df)
print(df.loc['Apple'])

這將最終得到一個由父級索引的表,它們的子級分組到列表結構中的單個單元格中。 接下來,您可以對每個列表執行任何操作,甚至可以將 pandas dataframe (=table) 轉換為最適合您情況的任何其他內容 (list, dict...)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM