Python:如何一次从数据框中迭代 3 行值?然后再一次下一个 3 个值? [复制]

Posted

技术标签:

【中文标题】Python:如何一次从数据框中迭代 3 行值?然后再一次下一个 3 个值? [复制]【英文标题】:Python : How can i iterate 3 row values from dataframe at a single time? And then again next 3 values at a single time? [duplicate] 【发布时间】:2022-01-09 12:51:55 【问题描述】:

我有一个数据框 -

Name  Rank
A     2
B     3
C     6
D     7
E     4
F     3
G     9
H     2
I     5

我想要一次排名第 3 列的值。 比如——

2
3
6

然后再下一步,我想一次对第 3 列的值进行排名。 比如——

3
6
7

然后再下一步,我想一次对第 3 列的值进行排名。 比如——

6
7
4

就像这种格式, 您可以使用任何方式循环或任何其他方式。 我不知道我该怎么做,请帮助我找出解决方案。

【问题讨论】:

了解事物的名称会有所帮助。 【参考方案1】:

让我们做

[df.Rank.tolist()[x:x+3] for x in df.index[0:-2]]
[[2, 3, 6], [3, 6, 7], [6, 7, 4], [7, 4, 3], [4, 3, 9], [3, 9, 2], [9, 2, 5]]

【讨论】:

不,不要重新发明***。 Pandas 内置了所谓的“滚动窗口”功能。 @KarlKnechtel 你确定,你试过在 pandas 中滚动吗~呵呵,panda 没有办法 agg 对象

以上是关于Python:如何一次从数据框中迭代 3 行值?然后再一次下一个 3 个值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用熊猫更改数据框中的特定行值? [复制]

根据数据框中的其他行值创建列

python之迭代器

将预定义的数字分配给数据框中的列行值

比较熊猫数据框中的行值

比较熊猫数据框中的行值