2016-07-21 117 views
2

是否有一個優雅的解決方案,只打印每個第n行的熊貓數據框?例如,我想只打印每個第二行。打印每個第n行的熊貓數據幀

這可以通過

i = 0 
for index, row in df.iterrows(): 
    if ((i%2) == 0): 
     print(row) 
    i++ 

做,但有一個更Python的方式來做到這一點?

回答

4

切片的DF與步驟PARAM與iloc

print(df.iloc[::2]) 

In [73]: 
df = pd.DataFrame(np.random.randn(5,3), columns=list('abc')) 
df 

Out[73]: 
      a   b   c 
0 0.613844 -0.167024 -1.287091 
1 0.473858 -0.456157 0.037850 
2 0.020583 0.368597 -0.147517 
3 0.152791 -1.231226 -0.570839 
4 -0.280074 0.806033 -1.610855 

In [77]: 
print(df.iloc[::2]) 

      a   b   c 
0 0.613844 -0.167024 -1.287091 
2 0.020583 0.368597 -0.147517 
4 -0.280074 0.806033 -1.610855