我有两列group
,ref
。在ref
列中,我感兴趣的是根据数据集中每五个元素的preceding
和following
元素来识别anomalies
或odd_one_out
元素,例如[Y,Y,N,Y,Y]
{[N,N,N,Y,N]
在这种情况下,异常是Y
。ref
有助于比较和匹配pred
。
对于每一组五个值,都有一个odd_one_out
或anomaly
元素
注意:dataframe有340000行-但是,我对每五个元素(340000/5)都感兴趣,因此group 1-5
df
group, ref
1, Y
2, Y
3, Y
4, N
5, Y
1, Y
2, Y
3, N
4, Y
5, N
以下是我期望的结果:
我想在anomaly
列中将异常标记为'x'
Final_df
group, ref, anomaly
1, Y, NaN
2, Y, NaN
3, Y, NaN
4, N, 'x'
5, Y, NaN
1, Y, NaN
2, Y, NaN
3, N, 'x'
4, Y, NaN
5, N, NaN
NaN
表示anomaly
列中缺少的值,否则留空
这是我的密码
def list_slice(S, step):
return [S[i::step] for i in range(step)]
print(list_slice(pred,5))
df['anomaly']= anomaly
一行完成
在编辑之后。这应该有效
如果您将原始问题保留在哪里
解决方案
它是如何工作的强>
只需比较
ref
和pred
列即可得到所需的结果相关问题 更多 >
编程相关推荐