【问题标题】: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]Python:如何一次从数据框中迭代 3 行值?然后再一次下一个 3 个值? [复制]
【发布时间】: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

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

【问题讨论】:

  • 了解事物的名称会有所帮助。

标签: python pandas loops iteration


【解决方案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 对象
猜你喜欢
  • 1970-01-01
  • 2023-03-17
  • 2015-02-14
  • 2023-03-22
  • 1970-01-01
  • 2014-12-12
  • 2010-12-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多