擅长:python、mysql、java
<p>您可以使用<a href="https://docs.python.org/3/library/itertools.html#itertools.cycle" rel="nofollow noreferrer">^{<cd1>}</a>创建迭代器并使用它生成目标序列:</p>
<pre><code>from itertools import cycle
num_cycle = cycle([1, 2, 3])
df['New'] = [next(num_cycle) for num in range(len(df))]
</code></pre>
<hr/>
<pre><code>import pandas as pd
import itertools
df = pd.DataFrame(
data = [
(1000, 2000),
(1000, 2001),
(1000, 2002),
(1001, 2000),
(1001, 2001),
(1001, 2002),
],
columns=['StoreNumber', 'Year']
)
num_cycle = itertools.cycle([1, 2, 3])
df['New'] = [next(num_cycle) for num in range(len(df))]
print(df)
</code></pre>
<p>输出将是</p>
<pre><code> StoreNumber Year New
0 1000 2000 1
1 1000 2001 2
2 1000 2002 3
3 1001 2000 1
4 1001 2001 2
5 1001 2002 3
</code></pre>