我有一张桌子
df= pd.DataFrame ({'A': [0,1.5,2.1,2.9,4], 'B': [1.5,2.05,3,4,5]})

这里我有两个问题,一个间隙和一个重叠,我想用python pandas自动检测,有人能帮我吗,谢谢
df= pd.DataFrame ({'A': [0,1.5,2.1,2.9,4], 'Validate': [1.5,2.05,3,4,5], 'test': ['np.nan', np.nan, 'gab','over', np.nan]})

谢谢
发布于 2019-07-04 06:36:18
IIUC:
s = df.B.shift() - (df.A)
df['Validate'] = np.select((s>0, s<0), ('over', 'gap'), default=np.nan)输出:
A B Validate
0 0.0 1.50 nan
1 1.5 2.05 nan
2 2.1 3.00 gap
3 2.9 4.00 over
4 4.0 5.00 nan发布于 2019-07-04 08:29:31
我们可以从numpy使用sign
df['Validate']=np.sign(df.B.shift().sub(df.A)).map({1:'over',-1:'gap'})
df
Out[150]:
A B Validate
0 0.0 1.50 NaN
1 1.5 2.05 NaN
2 2.1 3.00 gap
3 2.9 4.00 over
4 4.0 5.00 NaNhttps://stackoverflow.com/questions/56878680
复制相似问题