Skip to main content
 首页 » 编程设计

python之告诉 pandas DataFrame 中缺失行的最佳方法是什么

2025年05月04日10EasonJim

我是 Python - pandas 的新手,目前正在尝试使用它来检查 DataFrame 中的数据是否连续。例如:

    thread  sequence      start      end 
14       1       114    1647143  1672244 
15       1       115    1672244  1689707 
16       1       116    1689707  1713090 
17       1       118    1735352  1760283 
18       1       119    1760283  1788062 
19       1       120    1788062  1789885 
20       1       121    1789885  1790728 

每行有 4 列,一般顺序应该增加 1,所以如果一切正确,它看起来像 116,117,118 ... ,就像一个 range() 函数。但是这里的示例缺少序列 == 117 的行。

我试图找到它,但我不知道该怎么做。如果我只是一个一个地检查序列,那将是低效的。所需的输出是告知缺失的行或用 NaN 填充缺失的行。

任何好的提示或建议都会有所帮助。

请您参考如下方法:

使用 RangeIndex 的更快方法:

seq = pd.RangeIndex(df.sequence.min(), df.sequence.max()) 
seq[~seq.isin(df.sequence)].values 
# array([117])