擅长:python、mysql、java
<p>您可以使用<code>ID</code>列上的group,并使用<strong><a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.core.groupby.DataFrameGroupBy.diff.html" rel="nofollow noreferrer">^{<cd2>}</a></strong>获取与前一行的差异,用0填充空值,并将其中不等于0的行指定为<code>change</code>,将其余行指定为<code>no_change</code></p>
<pre><code>df['Change'] = np.where(df.groupby("ID")['Feature'].diff().fillna(0).ne(0),
"change","no_change")
</code></pre>
<hr/>
<pre><code>print(df)
ID Feature Change
0 1 0 no_change
1 1 0 no_change
2 1 1 change
3 1 1 no_change
4 2 0 no_change
5 2 0 no_change
6 2 1 change
7 2 2 change
</code></pre>