2013-04-13 81 views
2

組隨機迭代我有一個名爲「格子」有一個屬性「等級」通過Python數據幀

g_lattice=lattice.groupby('level') 

如何遍歷g_lattice組隨機基於水平的數據幀。

+0

重複的問題,雖然我喜歡傑夫的解決方案比任何更好,我在這裏看到:http://stackoverflow.com/questions/10445549/pandas-shuffle-rows-at-a-certain-level –

回答

3
In [22]: df = pd.DataFrame({'A': ['foo', 'bar'] * 3, 
          'B': rand.randn(6), 
          'C': rand.randint(0, 20, 6)}) 

In [23]: groups = list(df.groupby('A')) 

In [24]: random.shuffle(groups) 

In [25]: for g, grp in groups: 
    print grp 
    ....:  
    A   B C 
0 foo 0.900856 4 
2 foo -0.122890 19 
4 foo -0.267888 8 
    A   B C 
1 bar -0.683728 5 
3 bar -0.935769 6 
5 bar 0.530355 0 
+0

感謝回覆 – Mahesh

+0

如何將屬於某個特定組的所有行作爲單獨的數據框? – Mahesh

+1

以及我打印的grp是一個框架,你也可以做group.get_group('bar') – Jeff