2
爲更好地解釋這個問題,我會給一些具體的使用熊貓圖書館,但我認爲這個問題的核心思想是相當籠統的,正如標題所述。更精緻的方式來編碼的重疊水平
一般問題:什麼是更優雅的方式來編碼無數循環重疊。
具體例子:拿一個功能doStruf(DF,listLevels)用df是一個數據框大熊貓對象和listLevels是的hierachically組織功能(該名稱的列表,例如,人,教室,學校,...狀態)在df中描述的觀察單位。對於doStruf(DF,[「人」,「類」,......,「狀態」])我想doStruf功能,使像
for person in unique(array(df["person"])):
personData = df[df["person"] == person]
for classroom in unique(array(personData["classrooms"])) :
classroomData = personData[personData["classroom"] == classroom]
... arbritrary number of loops imbrication depending on len(listLevels) ...
varYData = varXData[varXData["varY"] == varY]
for state in unique(array(varYData["states"])) :
stateData = varYData[varYData["state"] == state]
... do stuff using stateData ...
什麼是應對更清潔的方式這種運行時定義的循環堆疊數量?
@Andy海登已編輯。 –
想一想,我想遞歸可能是最好的方法(如果沒有其他人有更好的建議,我會給一段代碼),但我非常感謝任何建議。 –
羣是不是爲你工作? –