【发布时间】:2023-03-20 01:32:01
【问题描述】:
考虑系列:
s = [1, -1, 1, 1, 1, -1]
计算此类序列中值更改次数的最省时方法是什么?在这个例子中,答案是 3(从 1 到 -1,回到 1,再到 -1)
【问题讨论】:
标签: python python-3.x pandas
考虑系列:
s = [1, -1, 1, 1, 1, -1]
计算此类序列中值更改次数的最省时方法是什么?在这个例子中,答案是 3(从 1 到 -1,回到 1,再到 -1)
【问题讨论】:
标签: python python-3.x pandas
我将使用numpy
(np.diff(s)!=0).sum()
Out[497]: 3
【讨论】:
使用numpy 的替代解决方案是
np.count_nonzero(np.diff(s))
原生 Python 解决方案是
sum(s[i - 1] != s[i] for i in range(1, len(s)))
【讨论】: