我想知道如何检查列中的int/float
值是否是连续的,例如在以下df
中,3列中的2列被认为具有连续值,因为它们的差异为1;
inv_id ven_id pay_id
123 1.22 1230
124 2.22 1234
125 3.22 1235
126 4.22 1240
127 5.22 1241
inv_id
和ven_id
是连续的,因为值之间的差异都等于1; pay_id
不是顺序的,因为某些值之间的差异为1。
答案 0 :(得分:2)
基于piRSquared的评论。您应该首先只选择df上的数字列:
numerics = ['int16', 'int32', 'int64', 'float16', 'float32', 'float64']
numeric_df = df.select_dtypes(include=numerics)
然后你应该运行:
numeric_df.diff().dropna().eq(1).all()