2016-01-06 75 views
0

下午,使用另一個列表設置列表的索引

我有一個列表,我目前通過手動更改代碼來設置索引。

df1 = df1.set_index(['Stock', 'bool1', 'bool2', 'bool3'], append=True) 

如何,我會去自動執行此,使我能夠用另一個列表設置列表的指標,比如:當你創建一個

k = ['Stock', 'bool1', 'bool2', 'bool3] 

感謝

+1

'df1 = df1.set_index(k,append = True)'? – Erica

+0

感謝緻密,錯過了下劃線, – beng986

回答

1

python變量(以及許多編程語言),你只需簡單地創建一個指針即可查看內存中的實際數據。這使得k作爲一個人比['Stock', 'bool1', 'bool2', 'bool3']所在的內存地址更容易引用和記憶。

所以像埃裏卡在她的評論,當你只是把k到位名單提到的,它填充k與實際數據,['Stock', 'bool1', 'bool2', 'bool3']

這樣你就可以保持你的列表中​​方法之外,只是引用列表與變量k

k = ['Stock', 'bool1', 'bool2', 'bool3'] 
df1 = df1.set_index(k, append=True) 

這樣做的好處這種方式是你現在可以更容易地改變k,和無處不在k使用得到更新,因爲它們都指向內存中的相同位置,並且您只是更改了該內存中的數據。

k = ['Stock', 'bool1', 'bool2', 'bool3'] 
df1 = df1.set_index(k, append=True) 
... 
k.append('custom_attribute') # df1.set_index is updated now. 
相關問題