【发布时间】:2017-04-05 01:01:16
【问题描述】:
给定 Series ,我想有效地计算在系列发生变化之前有多少观察值。这是一个简单的例子:
ser = pd.Series([1.2,1.2,1.2,1.2,2,2,2,4,3])
print(ser)
0 1.2
1 1.2
2 1.2
3 1.2
4 2.0
5 2.0
6 2.0
7 4.0
8 3.0
我想对ser 应用一个函数,这将导致:
0 4
1 3
2 2
3 1
4 3
5 2
6 1
7 1
8 1
由于我正在处理大型系列,我更喜欢不涉及循环的快速解决方案。
【问题讨论】:
-
你试过什么?如果解决方案不涉及循环,您如何扫描和打印输入/输出?
-
请发布给您带来麻烦的代码。要求其他人为您设计解决方案有点超出我们的明确目的。
-
我正在寻找比我更快的代码。现在用代码更新问题
标签: python python-3.x pandas numpy series