如何在熊猫中一次选择多个行?

时间:2018-10-22 15:48:12

标签: python-3.x pandas

当我有一个DataFrame对象并且行数未知时,我想每次选择5行。

例如,df有11行,它将被选择3次,即5 + 5 + 1,如果行是4,则只会被选择一次。

如何使用pandas编写代码?

3 个答案:

答案 0 :(得分:1)

使用sender.numberOfTapsRequired = 2进行一些运算。这应该很干净。

groupby

取决于您希望输出的结构,可以将chunks = [g for _, g in df.groupby(df.index // 5)] 更改为g(如果要使用列表)。

答案 1 :(得分:1)

numpy.split

np.split(df, np.arange(5, len(df), 5))

演示

df = pd.DataFrame(dict(A=range(11)))

print(*np.split(df, np.arange(5, len(df), 5)), sep='\n\n')

   A
0  0
1  1
2  2
3  3
4  4

   A
5  5
6  6
7  7
8  8
9  9

     A
10  10

答案 2 :(得分:0)

创建一个循环,然后使用索引为DataFrame编制索引:

for i in range(len(df), 5):
    data = df.iloc[i*5:(i+1)*5]